Monday and today (Tuesday) I attended a 2-days Oracle University class with Craig Shallahamer from OraPub, taking place in Munich.
Honestly, I have had no expectations at all, so there has been nothing to be crestfallen or to be fulfilled. I just was looking forward to the one or other hint how to find the reason of slow databases – the class tilte looked promising in this context. But lets report in chronological order.
Craig started with a general situation description, everybody in the room knew or could imagine easily: Slow production, boss/customer/customer’s boss in helicopter action. Based on that, he described the necessity for a structured, fast, educated analysis, and he explained the general performance considerations for that. For me, the most impressive graph in the two days has been one of the first slides: the hyperbolic relation of response time vs. arrival rate, proofing the need for a system to work in the near-linear section of the graph….
After the first sentences it became clear, that Craig is a really good teacher. His method for presenting Oracle’s internal clockwork is impressive: Full physical exertion, humor and a good sense for his auditorium.
After nearly half a day of the most useful general considerations and techniques (three circle method etc.), he started explaining common bottleneck backgrounds, what’s a latch, mutex, (spin) lock, several contention cases, and the corresponding Oracle algorithm impact (LRU, cache hashing etc.)
Of course, the latter starts to become rather dry at some point, but Craig’s feeling for his audience made him insert loosely connected real-life-stories to re-focus our attention. Maybe he could scatter and connect the “management stroy”-pieces a bit more cross the different topics of the two days, but time was really short for special wishes.
At several points in the class, Craigs own toolkit has been used and referenced. It’s based on sql scripts, and it’s always free. Look up http://www.orapub.com in section “Tools”. Maybe this link may work for you: http://resources.orapub.com/category_s/16.htm
So – my personal feeling – we will memorize a rather high percentage of the transported knowledge. To see the instructor literally jumping up and down the LRU, with latches and blocks in his hands, and anguish in his face as soon his hit count becomes decreased, was impressive, and really unforgettable!
Of course, he did not know everything, so I missed special facts about parallel execution (PX) and direct path operations. But he was entirely honest about this, and did not try making excuses or half-hearted promises.
The location in a large hotel in Munich was good, but they had nasty traps on their chairs: The arm-rests have been fixed with screws. Too long screws as it turned out, picking through the upholstry in a nasty, ambidextrous way! And that, at least for the whole first row. Ouch!
Summary: Craig Shallahamer is a congenial and capable instructor and person. The two days are one of the best Oracle education classes I’ve ever attended: Compressed, optimally transferred know-how, immediately usable next nasty DBA (mon)day.
PS: The picture is taken by myself, and used with permission.