Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry.
> Shop now
This review covers the June 2010 fourth printing of the "Oracle Performance Firefighting" book. I bought a PDF copy of the book direct from the OraPub site. The author's excellent "Forecasting Oracle Performance" book was a factor in my decision to purchase this book, as was my desire to learn something new while trying to maintain previously acquired knowledge. As stated in this book, the author has roughly 20 years of experience working with Oracle Database, worked with Cary Millsap at Oracle Corporation for a period of time, and conducts a successful consulting and training business. I recognize the names of three of the six technical reviewers listed in the book as well known experts in the Oracle community. The author's website states that there are no known issues/errata starting with the third printing (November 2009) of the book. All of the components for the book's success are in place, so how did the book perform?
There are definitely positive moments in the book, where the book successfully communicates complicated topics using very clear statements. The book publisher selected a font size and margin size that packs a significant amount of detail into each of the book's 387 pages. There are several well-placed helpful diagrams with no space wasting cartoon drawings. The author introduced his three circle analysis which involves identifying the intersection of the Oracle Database, the Application, and the Operating System to help pinpoint the source of performance problems. Several examples were provided where the author used the Linux strace command to troubleshoot Oracle Database performance problems. The book recommends against modifying the _SPIN_COUNT hidden initialization parameter, which is a wise advisement.Read more ›
I tend to choose my books fairly carefully. With the amount of information that is out there on the web for free, there's a lot more competition for my training dollars, and as an independent consultant who pays for my own training and reference materials, value-for-money is top priority.
With Craig's book, I knew what to expect - evidence based and real world examples of Oracle performance problems. I had been reading whitepapers by Craig (OraPub) online for years, and was lucky enough to attend a course he ran in Toronto a few years ago - it was easily the best money I had ever spent.
The Oracle Performance Firefighting book really opened my eyes to a lot of the internals that determine how much performance you're going to be able to squeeze out of your database. Some of those "rules of thumb" that you always hear are explained (or disproved). Things that I *thought* I understood were explained to levels not seen in any Oracle documentation, and things that were new to me were presented with lots of examples, diagrams and show-and-tell type experiments. If you've read any of Tom Kyte's books or postings you it's a similar style.
I think what I like most about this (and his other books) are the strong foundation in math that all of his conclusions are based in. The fundamentals of performance are explained in a way that both makes sense, and can be experimentally proven. You are walked through each step in identifying, classifying, and resolving the most common performance problems you'll see.
In summary: - great author - interesting and applicable examples - clear and concise writing
I have bought this book for myself, and several of my customers.
Was this review helpful to you?
You may all know Tom Kyte, Jonathan Lewis and others as famous speakers and writers about Oracle Internals and Performance troubleshooting. Craig may not be as famous as they are but its "Oracle Performance Firefighting" Book is probably so far the best book written about Oracle internals & Performance troubleshooting. It's all about correlating Application, Operating system and Oracle Engine in order to understand where the bottleneck is located and what you should do in order to solve it. Craig provides the very strong "3 cricles" global approach which can be applied to any Oracle performance issue and also delivers the most complete description about Oracle internals and how by understanding them you can move forward with your performance troubleshooting challenge. Just as an example, Craig does not simply describe how latches and mutexes work, He also provides practical solutions to solve any kind of latch contention you can experiment. Definitly the most comprehensive book written on a very touchy topic.
Was this review helpful to you?
This book was, I am sorry to say, something of a disappointment.
I was expecting it to offer some insights and fast tracks to diagnosing and fixing Oracle performance issues, with pearls of wisdom, based upon the author's experience and skills, dropping from every page.
In reality, the book is a mishmash of decent explanations of such things as latching, CPU queuing, the redo mechanism, and other such stuff; some interesting scripts to view what's going on in the database; and a lot of filler material towards the end, where fire-fighting is replaced with (what seems to be the author's pet subject) performance prediction.
I found it distinctly odd that explain plans were not mentioned once - in a performance troubleshooting book? I didn't get a real sense of systematic problem-solving in this book; rather, a jumble of "how-tos". It's also worth mentioning that Oracle Enterprise Manager's system/database statistics presentation makes much of the book's teaching of sar, vmstat, v$osstat, and so on, redundant.
The author uses strange phrasing, which is distracting, such as, "If you ever see system time surpass user time, either contact your system administrator or casually give your pager to your colleague and walk away". Not the sort of "tip-toe away and hide" antics one would expect from any DBA, particularly a fire-fighting heroic one!
In a real-life Oracle database fire-fighting scenario, I would not be reaching for this book.
Was this review helpful to you?