When I wrote Optimizing Oracle Performance with Jeff Holt back in 2003, my goal was to define a reliable, teachable method for fixing software performance problems. After a few months of contentment having finishing the project, I began to notice a trend in how people were responding to it. Many of the questions coming in had started to repeat themselves: “Sure, fixing problems is important, but how can I prevent them?” “The book was fun, but of course I didn’t read the chapter on queueing theory; is that stuff really important, anyway?” “Where does capacity planning fit in?” …And, sadly, I continued to see people make some of the same mistakes that we had tried to warn people about in the book.
The Profiler (combined with Method R) has enabled me to resolve performance problems that could not have been resolved in any way other than by pure luck. The return of the modest investment cannot be beat. I saved a failing project as soon as I got it. I highly recommend it over the so-called “free” stuff. The authors of the free tools are trying to contribute to the Oracle community but I found it detrimental to my efforts. And I wanted to kick myself for trying to write my own for so long when I should have conducted a simple buy-vs-build assessment.