10.07.2015 Views

Expert Oracle Exadata - Parent Directory

Expert Oracle Exadata - Parent Directory

Expert Oracle Exadata - Parent Directory

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

CHAPTER 11 UNDERSTANDING EXADATA PERFORMANCE METRICSevents and performance counters complement each other and shouldn’t really be used alone. <strong>Oracle</strong>dynamic performance counters are also known as V$SESSTAT or V$SYSSTAT statistics (or counters), asthese views are used for accessing them.When and How to Use Performance CountersWhen troubleshooting performance, one should always start from wait events and SQL_ID-level activitymeasurements (as they keep track of the time, which end users care about) and if additional detail isneeded, then proceed to performance counters. If these standard metrics are not enough, theperformance counters provide a very detailed insight into what <strong>Oracle</strong> sessions are doing. For example,if your session seems to be burning lots of CPU, you can see whether the session logical reads or parsecount (hard) counters increase for a session more than normally. Or if you see some unexpected singleblockreads during a full table scan, you can check whether the table fetch continued row or somestatistic like data blocks consistent reads – undo records applied increases, which indicate either achained/migrated row or consistent read (CR) buffer cloning plus rollback overhead. Another usefulmetric is user commits, which gives you an understanding of how many database transactions are doneinside an instance (or in chosen sessions). So the next time a session seems to be waiting for a log filesync wait event, you can check its user commits counter value from V$SESSTAT, to see how frequently thissession is committing its work. The following excerpt is just a small example of the kind of statistics<strong>Oracle</strong> provides:SQL> SELECT name, value FROM v$sysstat WHERE name like 'parse%';NAMEVALUE---------------------------------------------------------------- ----------parse time cpu 154960parse time elapsed 196194parse count (total) 11530118parse count (hard) 30010parse count (failures) 9536parse count (describe) 416Dynamic performance counters provide important clues, which allow us to direct ourtroubleshooting efforts better. Note that tools like Statspack and AWR reports rely heavily on V$SYSSTATcounters. They just store values from these ever-increasing numbers (since instance start) in theirrepository tables. So whenever you run a Statspack/AWR report, just deltas between values in chosensnapshots are reported. Statspack and AWR reports are all about showing you deltas between V$SYSSTAT(and other views) numbers from different snapshots of time.<strong>Oracle</strong> adds new counters into every new database version. Sometimes new (debug) counters areintroduced even with new patch sets. <strong>Oracle</strong> 11.2.0.2 has 628 different performance counters inV$SYSSTAT:SQL> SELECT COUNT(*) FROM v$sysstat;COUNT(*)----------628That’s a lot of information!351

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!