Diagnosing Oracle Performance Problems
Objective
To introduce students to a scientific method for diagnosing Oracle system performance problems rapidly and accurately, no matter what their root cause.
Target Audience
The course is designed for technicians and technical managers who want to respond faster and more permanently to Oracle system performance problems. The course is most effective for students who will be motivated to solve production Oracle system performance problems immediately upon returning to work after the course.
If you have already taken this course, don't forget that you've earned the right to return at a significantly lower price. We have added a lot of new exercises and detailed technical content since mid-2004, so consider putting your alumni discount to good use today!
Prerequisites
Confirm hotsos.com account registrationRegister an account at hotsos.com before coming to class.
Students are expected to have a strong working knowledge of Oracle and SQL and experience as a database administrator or application developer. To maximize the value of the course, we strongly recommend the following pre-course reading:
- Oracle Database Server Concepts Guide
Students are expected to be familiar with the content of the Concepts guide for a relevant Oracle release. Material is available online, free of charge, at the Oracle Database Documentation Library. It is listed as "Concepts" in the Getting Started section.
- A Better Way to Optimize (Chapter 1 - Optimizing Oracle Performance)
Students are expected to have read the first chapter from the course textbook, Optimizing Oracle Performance. Material is available online, free of charge, at oreilly.com and also downloadable from this site.
Syllabus
The course is organized into the following segments:
- Welcome
Introductions and logistical matters, what you can expect.
- Method overview
Prelude, tools for analyzing response time, introduction to Method R.
- Target identification
Specifying the performance improvement project, identifying the right task to optimize first.
- Tracing Oracle
Collection scope, overview of Oracle tracing mechanisms, data collection challenges, tracing real applications, collection errors, known bugs with extended SQL trace.
- Extended SQL trace data
Trace file walk-through, choosing the right SQL trace level, origins of Oracle timing data, response time accounting (creating the "profile by Oracle subroutine"), recursive SQL, choosing the right SQL trace level.
- Responding to the diagnostic data
Case study in performance improvement, navigating the profile, Oracle response time components (what they didn't tell you), response time component reference.
- Case studies in performance problem diagnosis
CPU service, latch free, SQL*Net message from client, db file scattered read, db file sequential read, buffer busy waits, unaccounted-for, analysis of trace files acquired from prior students, building scalable applications.
- Conclusion
Hotsos Profiler portal trial license, overcoming common objections, what have you learned this week?
Frequently Asked Questions
I have 5+ years of experience tuning Oracle. Will I benefit from this course?
Probably a great deal. The students that give this class its highest rankings are typically those with 7+ years of professional Oracle experience. Their reviews indicate that a primary value of the course to them is to finally learn how to replace traditional trial-and-error diagnostic methods with a more repeatable, scientific approach.
I've taken Oracle performance courses before that describe the wait interface. How is this course different?
Most failed performance projects are the result of improper understanding of which statistics emitted by the Oracle kernel are useful and which are not. This course teaches students how to collect the data you should be looking at, and it teaches how to understand what those statistics are telling you.
I've taken this course before. Is there any value in taking it again?
Returning students are as enthusiastically positive about the course as first-timers. Reasons seem to fall into three categories. First, this course offers a lot to absorb in just one three-day sitting. Returning students get a chance to learn nuances they may have missed the first time around. Second, we're continuously learning and integrating new material into the notes. For example, we have made two significant material upgrades in mid-2004 (new exercises in converting raw trace data to profiles by subroutine) and early-2005 (new data collection material, new 10g content, and more detail on Oracle timed event internals). Third, the alumni discount (see Pricing for details) makes the course a spectacular value for the returning student.
Is this a product course about the Hotsos Profiler?
No. You can execute the method we teach much more quickly and easily with the Hotsos Profiler. But the course teaches everything you need to know to diagnose performance problems without having to buy any software whatsoever.
Instructional Format
The three-day course is approximately 80% lecture, 20% instructor-led discussion and in-class exercises on paper to strengthen understanding of the course material. The course is conducted in English.
Materials

Each student receives the following materials:
- Textbook
Optimizing Oracle Performance by Cary Millsap with Jeff Holt.
- Course Notebook
A printed copy of all the presentation slides used in the course, with extra chapters containing several in-class exercises (with solutions), strace output illustrating the meaning of several Oracle timed events, an strace user guide, and preprinted forms that facilitate the completion of the course exercises.
- Tools
Access to course software tools and supplemental documentation at hotsos.com. Students may request a trial of the Hotsos Profiler after class by contacting sales@hotsos.com.
Pricing
- List Price: $1875.00
- Alumni Price: $500.00*