Full description not available
P**A
Awesome book. Poor index.
This is an incredibly important book. No other book describes transaction processing as well as this classic, now updated via a second edition that discusses principles of transaction processing in the context of modern technologies (application servers, web services, messaging queues) and products (Java Enterprise Edition, .Net). Chapters 10 and 11 on current and future trends respectively make this book worth an extra star above the five I've awarded.My one complaint about this book is the poor size of the index. The book is about 400 pages and the index is 8 pages. That's a ratio of 8/400 or 2%. Indexes are a critical part of non-fiction books. For example, on page 11 the book says it discusses "persistent queues" in chapter 4. But I could not readily find a reference to persistent queues in the index (or even by skimming through chapter 4). It turns out that persistent queues are the only queues discussed in chapter 4. Another example: Most readers will agree that "pessimistic locking" is an important concept. Although the term is used and explained on page 162, it does not make an appearance in the index. A poor index makes this book harder to use than it would be otherwise. If I could, I would deduct half a star for this infraction!My litmus test for indexes is around 5%. An exceptional book in this regard is on a related subject: "Java Concurrency in Practice" by Brian Goetz, which has a 40 page index to support a 400 page book, i.e. a juicy index ratio of 10%!By the way, both books (Bernstein and Goetz) were recommended to me via the chapter on "Concurrency" in Martin Fowler's incredible tome "Patterns of Enterprise Application Architecture".On the other hand, the quality of the summary sections at the end of each chapter is superb, such that it does the job perfectly in case you either don't have the time to read the entire chapter or wish to have some idea about the important topics and conclusions before you start going through the chapter.Readers should beware that although I have not found a better treatment on this topic, not everything in the book is neatly gift-wrapped with a bow-tie. You will run into some contentious items and have to figure your own way around them. For example, the book takes a hard line on "phantom reads" by claiming that this ought not to be a problem because inserts ought to be treated as updates. However, the fact is that the ANSI SQL-92 standard does view "Phantoms" as an isolation level (see Berenson, 1995) as do most major database vendors. So, the book's position can be confusing for newbies.Although I appreciate all of the rigor and background context in the book (with barely any errors to speak of, see the last paragraph on page 171 for a possible exception), I occasionally found it somewhat frustrating that the book does not provide any clear indication on topics (e.g. how to implement commit/abort on pages 201-203 or the proof for the two-phase locking theorem on pages 183-184) that are relevant only for vendors of transactional middleware or resource managers (e.g. databases) or those interested in going deeper. These sections should have been clearly marked for authors of TP applications and systems to safely ignore because they concern aspects of transaction processing that cannot be influenced via programming or configuration.Finally, I observed that whereas the authors spend a lot of time discussing the TPC benchmarking standards, they neglect to mention that Microsoft is the only database vendor posting their results of benchmark testing (perhaps because the benchmark is skewed in favor of SQL Server). As an article I read somewhere noted quite astutely, it's as if Michael Phelps had won all of his Olympic gold medals swimming in an empty pool!Regardless, my nits should be viewed as minor and should not detract from the fact that this is the world's most useful book on this highly important subject.Remember: Transaction processing is how Amazon gets your orders processed and delivered.
H**A
Recommend
I recommend this book to all interested in database transaction management. Better organized and more complete than the previous edition, excellent to prepare database transaction classes, I think my students will profit!
F**R
Excellent and gentle intro to transaction processing aspect of relational databases
I would highly recommend this book to anyone who fascinates about how relational databases work. This book provides a great intro to the transactional processing aspects of traditional databases. The reader would get a lot of the book in terms of how the databases use locking and recovery mechanisms for highly concurrent fault tolerant transactions. Additionally, the book also provides a flavour of distributed transactions by introducing 2 phase commit. The highlights of the books for me were-Locking Mechanisms (The book gives a very gentle and detailed intro to 2PL, MultiGranularity Locking, B-Tree locking). Also talks about Optimistic Concurrency Control and locking strategies for hotspots.-Recovery Mechanisms(Write Ahead Logging, Checkpointing, fuzzy checkpointing, shadow paging, logging and recovery strategies for record level locking).-Replication Mechanisms-An intro to app servers, queueing and rpc.I am highly interested in learning about distributed systems and I am glad I looked at this book because it gives a taste of the challenges in building highly concurrent highly available, fault tolerant systems. Thanks Phil and Eric for writing this book.This book also has video lectures and slides in the form of a course that Phil Berstein(the author of the book) and Sameh Elnikety have over here[...]I read over this book twice, the first time I read it over back to back without the lectures and presentations, the second time I used it to complement the video lectures.All in all this is a great book if you are interested in database internals and interested in concurrent and fault tolerant computing.
J**S
What do you really know about Transaction Processing?
The above question is of significance [again] as the Web has caused change and movement in the TP space as much as anywhere else.Those of us over, say, 60, will remember some of what is written in the book; many of us, including those over 60, will have forgotten a lot more.So, given the changes and increasing speed with which technology is moving, it is more than worthwhile to consider one of the very fundamental things in business and IT: that of transactions.We conduct them every day without giving them much thought, be it through an ATM, on the Web or simply by buying something with a credit card.This book does a great job answering a lot of questions and of covering a lot of very complicated and intricate ground in a readable and understandable manner: from way back when to the current day!Its authors are to be heartily congratulated, not only on the content, but on finishing a daunting task of making a very good book even better.Thank you, Phil and Eric!
A**R
Excellent book
The discussions on two-phase commit and B+ tree locking alone are worth the money, even if many of the materials can be found from other resources, such as from historical academic papers, this book explained them clearly and concisely. Highly recommended.
D**E
Melhor livro de Integração de Sistemas que conheço
Ótimo livro sobre TP e integração de sistemas. Se você é novo na área ou um experiente profissional de TI, não deixe de ler este livro. Há muito conceito errôneo sendo repassado no mercado como verdade absoluta, especialmente por fornecedores de solução.
Trustpilot
2 months ago
3 weeks ago