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 2 OFFLOADING / SMART SCAN*** 2011-02-08 20:42:19.106WAIT #47387827351064: nam='cell multiblock physical read' ela= 20303 . . .WAIT #47387827351064: nam='gc cr multi block request' ela= 493 . . .WAIT #47387827351064: nam='gc cr multi block request' ela= 271 . . .WAIT #47387827351064: nam='cell multiblock physical read' ela= 2550 . . .*** 2011-02-08 20:42:20.107WAIT #47387827351064: nam='cell multiblock physical read' ela= 3095 . . .WAIT #47387827351064: nam='gc cr multi block request' ela= 548 . . .WAIT #47387827351064: nam='gc cr multi block request' ela= 331 . . .WAIT #47387827351064: nam='cell multiblock physical read' ela= 22930 . . .Notice that there are no Smart Scan wait events in the trace file output. For comparison, here is abrief excerpt from a statement using Smart Scan:PARSING IN CURSOR #2 len=32 dep=0 uid=0 oct=3 lid=0 hv=123 ad='196' sqlid='162wjnvwyybhn'select sum(pk_col) from kso.skewEND OF STMTPARSE #2:c=2000,e=2424,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,plh=568322376EXEC #2:c=0,e=34,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,plh=568322376WAIT #2: nam='SQL*Net message to client' ela= 3 driver id=1650815232 #bytes=1 p3=0 obj#=-1WAIT #2: nam='ges message buffer allocation' ela= 2 pool=0 request=1 allocated=0 obj#=-1WAIT #2: nam='KJC: Wait for msg sends to complete' ela= 10 msg=6674450368 dest|rcvr=65536WAIT #2: nam='reliable message' ela= 1107 channel context=6712270872 channel handle=66967991WAIT #2: nam='ges message buffer allocation' ela= 1 pool=0 request=1 allocated=0 obj#=-1WAIT #2: nam='enq: KO - fast object checkpoint' ela= 104 name|mode=126 2=65575 0=1 obj#=-1WAIT #2: nam='ges message buffer allocation' ela= 1 pool=0 request=1 allocated=0 obj#=-1WAIT #2: nam='enq: KO - fast object checkpoint' ela= 103 name|mode=126 2=65575 0=2 obj#=-1WAIT #2: nam='cell smart table scan' ela= 162 cellhash#=2133459483 p2=0 p3=0 obj#=66849WAIT #2: nam='cell smart table scan' ela= 244 cellhash#=379339958 p2=0 p3=0 obj#=66849WAIT #2: nam='cell smart table scan' ela= 181 cellhash#=3176594409 p2=0 p3=0 obj#=66849WAIT #2: nam='cell smart table scan' ela= 1285 cellhash#=2133459483 p2=0 p3=0 obj#=66849WAIT #2: nam='cell smart table scan' ela= 1327 cellhash#=379339958 p2=0 p3=0 obj#=66849WAIT #2: nam='cell smart table scan' ela= 1310 cellhash#=3176594409 p2=0 p3=0 obj#=66849WAIT #2: nam='cell smart table scan' ela= 19755 cellhash#=3176594409 p2=0 p3=0 obj#=66849WAIT #2: nam='cell smart table scan' ela= 39 cellhash#=3176594409 p2=0 p3=0 obj#=66849As you can see, this trace file contains several CELL SMART TABLE SCAN wait events. There is no doubtthat this statement was offloaded. We cover <strong>Exadata</strong>-specific and -related wait events in detail inChapter 10.Performance Statistics (v$sessstat)Of course, we can also look at some of the performance views such as V$SESSSTAT andV$ACTIVE_SESSION_HISTORY. Tanel Poder’s Snapper script provides a great way to see what wait events arebeing generated while a statement is running; but again, you must catch it in the act to verify what’shappening. Active Session History (ASH) is good as well, but since the data is sampled, there is noguarantee that it will catch the wait event you are looking for. Nevertheless, performance statisticsprovide a reliable source of data as long as you can access the system during the execution of thestatement you are investigating. Here’s an example using V$MYSTATS, which is simply a version ofV$SESSSTAT that limits data to your current session. For this example we’ll look at the cell scans statistic,which is incremented when a Smart Table Scan occurs:52

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

Saved successfully!

Ooh no, something went wrong!