Oracle Performance Firefighting
by Craig Shallahamer

Get the book here



Craig Shallahamer's Blog

You were brought to this page based on an internet search and as a free service to Oracle DBAs.

The text below is an except from the book, Oracle Performance Firefighting, written by Craig Shallahamer of OraPub, Inc. Figures and tables are not included on this page, only their reference.
To order the book in either print or PDF form, click here.


©2009, 2010 by Craig Shallahamer. This is copyrighted material.
Please—Out of respect for those involved in the creation of the book and also for their familes, we ask you to respect the copyright both in intent and deed. Thank you.

-------------------------------

The classic performance view v$sysstat is based on instrumentation, since when a database call completes, the respective statistics are updated. The wait interface is clearly an instrumentation approach, with the additional gettimeofday system calls inserted into Oracle's kernel code. The time model views are based on a combination of instrumentation (since the view is not updated if a session is in the middle of a wait) and sampling due to the frequent getrusage calls. But with the introduction of Oracle's active session history, or ASH for short, Oracle has clearly implemented a very aggressive statistical sampling collection strategy. So Oracle has indeed begun using both instrumentation and sampling.

While the core session-level performance views (v$sesstat, v$session_event) have served us well, Oracle knows more accurate metrics are required to support its vision of a self-adjusting, optimum-performing system. As I have mentioned, two glaring problems exist. First, when a session disconnects, all session-level details are gone. While the data is rolled up into v$sysstat and v$system_event, the session-level details, which we sometimes need, vanish. The other problem, specifically with v$sesstat, is the statistics may not be updated until after the database call has completed. This can muddy any performance analysis when long-running SQL is involved. Oracle solves both of these problems with the introduction of ASH.

But this problem is solved for a price. A license is required to legally query ASH views or run ASH reports. Since ASH data feeds the AWR, the same legal limitation applies. The nasty thing about this is that, by default, Oracle's base product consumes your computing system resources gathering detailed performance statistics, yet a simple query to retrieve this information is illegal without the additional license. While not a great public relations move, it is a shrewd corporate maneuver.10

©2009, 2010 by Craig Shallahamer. This is copyrighted material.
Please—Out of respect for those involved in the creation of the book and also for their familes, we ask you to respect the copyright both in intent and deed. Thank you.


Know what's important before it's too late!

OraPub's
Performance Training

is like no other...





More Class Pics...
Get student testimonials!