10.07.2015 Views

Expert Oracle Exadata - Parent Directory

Expert Oracle Exadata - Parent Directory

Expert Oracle Exadata - Parent Directory

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CHAPTER 10 EXADATA WAIT EVENTSLOAD TABLE CONVENTIONAL 1UPDATE 1cell smart incremental backup 714cell smart index scan 14INDEX STORAGE FAST FULL SCAN 42INDEX STORAGE SAMPLE FAST FULL SCAN 32cell smart table scan 163MAT_VIEW ACCESS STORAGE FULL 1TABLE ACCESS STORAGE FULL 12504Obviously this output does not show all the possible combinations, but it should give you an idea ofthe relative frequency of events and which operations generally motivate them.<strong>Exadata</strong> Wait Events in the User I/O ClassThe User I/O Class is far and away the most important for <strong>Exadata</strong>. The most interesting events in thiscategory are of course the two Smart Scan events (cell smart table scan and cell smart index scan).These are the events that record time for the primary Offloading optimizations provided by <strong>Exadata</strong>,which include predicate filtering, column projection, and storage index usage. The User I/O Class alsocontains three events described as physical I/O events. These three events actually measure time forphysical I/O using the more familiar multi-block and single-block read mechanisms we’re used to seeingon non-<strong>Exadata</strong> platforms, although their names have been changed to something a little moremeaningful. Finally, there are two events that don’t really seem to belong in the User I/O category at all.One has to do with initialization of blocks when file space is allocated. The other has to do with gatheringstatistical information from the storage cells. We’ll cover each of these wait events in turn in the nextseveral sections, starting with the Smart Scan events.cell smart table scanThe cell smart table scan event is what <strong>Oracle</strong> uses to account for time spent waiting for Full TableScans that are Offloaded. It is the most important new event on the <strong>Exadata</strong> platform. Its presence orabsence can be used to verify whether a statement benefited from Offloading or not. As discussed inChapter 2, Offloading only occurs when <strong>Oracle</strong> is able to do direct path reads. Consequently, this eventreplaces the direct path read event in most cases on <strong>Exadata</strong>. As with normal direct path reads, data isreturned directly to the PGA of the requesting process on the database server (either the user’s shadowprocess or a parallel slave process). Blocks are not returned to the buffer cache.Event MeaningAlthough the mechanism for performing reads across the InfiniBand network is very different from thatfor normal reads on non-<strong>Exadata</strong> platforms, the code path driving the smart scans is actually very similarto a direct path read on a non-<strong>Exadata</strong> platform. The main difference lies in the fact that each request toa storage cell contains a reference to the metadata of the statement, which in the case of <strong>Exadata</strong>includes the predicates and the list of columns to be returned. Since the storage cells have access to thisinformation, they can apply the filters and do the column projection before returning the data to therequesting process. These optimizations are applied to each set of blocks as they are requested. Theprocesses on the database servers that request the data have access to the ASM extent map and cantherefore request the required allocation units (AUs) from each storage cell. The storage cells read therequested AU and apply the predicate filters and, if any rows satisfy the filters, return the projected323

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

Saved successfully!

Ooh no, something went wrong!