You are on page 1of 577

Expert Oracle Exadata















„„„
Kerry Osborne
Randy Johnson
Tanel Pöder
Expert Oracle Exadata
#OPYRIGHTÚBY+ERRY/SBORNE 2ANDY*OHNSON 4ANEL0šDER
!LLRIGHTSRESERVED.OPARTOFTHISWORKMAYBEREPRODUCEDORTRANSMITTEDINANYFORMORBYANYMEANS
ELECTRONICORMECHANICAL INCLUDINGPHOTOCOPYING RECORDING ORBYANYINFORMATIONSTORAGEORRETRIEVAL
SYSTEM WITHOUTTHEPRIORWRITTENPERMISSIONOFTHECOPYRIGHTOWNERANDTHEPUBLISHER
)3".    
)3".     (eBook)
4RADEMARKEDNAMES LOGOS ANDIMAGESMAYAPPEARINTHISBOOK2ATHERTHANUSEATRADEMARKSYMBOL
WITHEVERYOCCURRENCEOFATRADEMARKEDNAME LOGO ORIMAGEWEUSETHENAMES LOGOS ANDIMAGESONLY
INANEDITORIALFASHIONANDTOTHEBENEFITOFTHETRADEMARKOWNER WITHNOINTENTIONOFINFRINGEMENTOF
THETRADEMARK
4HEUSEINTHISPUBLICATIONOFTRADENAMES TRADEMARKS SERVICEMARKS ANDSIMILARTERMS EVENIFTHEYARE
NOTIDENTIFIEDASSUCH ISNOTTOBETAKENASANEXPRESSIONOFOPINIONASTOWHETHERORNOTTHEYARESUBJECT
TOPROPRIETARYRIGHTS
0RESIDENTAND0UBLISHER0AUL-ANNING
,EAD%DITOR*ONATHAN'ENNICK
4ECHNICAL2EVIEWER+EVIN#LOSSON
%DITORIAL"OARD3TEVE!NGLIN -ARK"ECKNER %WAN"UCKINGHAM 'ARY#ORNELL *ONATHAN'ENNICK
*ONATHAN(ASSELL -ICHELLE,OWMAN *AMES-ARKHAM -ATTHEW-OODIE *EFF/LSON *EFFREY0EPPER
&RANK0OHLMANN $OUGLAS0UNDICK "EN2ENOW #LARKE $OMINIC3HAKESHAFT -ATT7ADE
4OM7ELSH
#OORDINATING%DITOR!DAM(EATH
#OPY%DITOR*AMES#OMPTON
#OMPOSITOR"YTHEWAY0UBLISHING3ERVICES
)NDEXER30)'LOBAL
!RTIST30)'LOBAL
#OVER$ESIGNER!NNA)SHCHENKO
$ISTRIBUTEDTOTHEBOOKTRADEWORLDWIDEBY3PRINGER3CIENCE "USINESS-EDIA ,,# 3PRING3TREET
TH&LOOR .EW9ORK .90HONE  302).'%2 FAX   E MAIL^aSTab]h/b_aX]VTa
bQ\R^\ ORVISITfffb_aX]VTa^][X]TR^\
&ORINFORMATIONONTRANSLATIONS PLEASEE MAILaXVWcb/P_aTbbR^\ ORVISITfffP_aTbbR^\
!PRESSANDFRIENDSOF%$BOOKSMAYBEPURCHASEDINBULKFORACADEMIC CORPORATE ORPROMOTIONALUSE
E"OOKVERSIONSANDLICENSESAREALSOAVAILABLEFORMOSTTITLES&ORMOREINFORMATION REFERENCEOUR
3PECIAL"ULK3ALESnE"OOK,ICENSINGWEBPAGEATfffP_aTbbR^\Qd[ZbP[Tb
4HEINFORMATIONINTHISBOOKISDISTRIBUTEDONANhASISvBASIS WITHOUTWARRANTY!LTHOUGHEVERY
PRECAUTIONHASBEENTAKENINTHEPREPARATIONOFTHISWORK NEITHERTHEAUTHORS NOR!PRESSSHALLHAVE
ANYLIABILITYTOANYPERSONORENTITYWITHRESPECTTOANYLOSSORDAMAGECAUSEDORALLEGEDTOBECAUSED
DIRECTLYORINDIRECTLYBYTHEINFORMATIONCONTAINEDINTHISWORK
Contents at a Glance

„ About the Authors................................................................................................ xvi


„ About the Technical Reviewer ............................................................................ xvii
„ Acknowledgments ............................................................................................. xviii
„ Introduction ......................................................................................................... xix
„ Chapter 1: What Is Exadata?...................................................................................1
„ Chapter 2: Offloading / Smart Scan ......................................................................23
„ Chapter 3: Hybrid Columnar Compression............................................................65
„ Chapter 4: Storage Indexes.................................................................................105
„ Chapter 5: Exadata Smart Flash Cache...............................................................125
„ Chapter 6: Exadata Parallel Operations ..............................................................143
„ Chapter 7: Resource Management......................................................................175
„ Chapter 8: Configuring Exadata ..........................................................................237
„ Chapter 9: Recovering Exadata...........................................................................275
„ Chapter 10: Exadata Wait Events........................................................................319
„ Chapter 11: Understanding Exadata Performance Metrics.................................345
„ Chapter 12: Monitoring Exadata Performance....................................................379
„ Chapter 13: Migrating to Exadata.......................................................................419
„ Chapter 14: Storage Layout ................................................................................467
„ Chapter 15: Compute Node Layout .....................................................................497
„ Chapter 16: Unlearning Some Things We Thought We Knew .............................511

III
„#/.4%.43!4!',!.#%

„ Appendix A: CellCLI and dcli ...............................................................................535


„ Appendix B: Online Exadata Resources ..............................................................545
„ Appendix C: Diagnostic Scripts...........................................................................547
„ Index ...................................................................................................................551

IV
Contents

„ About the Authors................................................................................................ xvi


„ About the Technical Reviewer ............................................................................ xvii
„ Acknowledgments ............................................................................................. xviii
„ Introduction ......................................................................................................... xix
„ Chapter 1: What Is Exadata?...................................................................................1
An Overview of Exadata.....................................................................................................2
History of Exadata..............................................................................................................3
Alternative Views of What Exadata Is ................................................................................5
Data Warehouse Appliance....................................................................................................................... 5
OLTP Machine........................................................................................................................................... 6
Consolidation Platform ............................................................................................................................. 6
Configuration Options ........................................................................................................7
Exadata Database Machine X2-2.............................................................................................................. 7
Exadata Database Machine X2-8.............................................................................................................. 8
Hardware Components ......................................................................................................9
Operating Systems ................................................................................................................................. 10
Database Servers ................................................................................................................................... 11
Storage Servers...................................................................................................................................... 11
InfiniBand ............................................................................................................................................... 11
Flash Cache ............................................................................................................................................ 12
Disks....................................................................................................................................................... 12

V
„#/.4%.43

Bits and Pieces ....................................................................................................................................... 12


Software Components .....................................................................................................12
Database Server Software...................................................................................................................... 12
Storage Server Software ........................................................................................................................ 16
Software Architecture......................................................................................................18
Summary .........................................................................................................................21
„ Chapter 2: Offloading / Smart Scan ......................................................................23
Why Offloading Is Important ............................................................................................23
What Offloading Includes.................................................................................................27
Column Projection .................................................................................................................................. 27
Predicate Filtering .................................................................................................................................. 32
Storage Indexes...................................................................................................................................... 33
Simple Joins (Bloom Filters)................................................................................................................... 34
Function Offloading ................................................................................................................................ 37
Compression/Decompression................................................................................................................. 39
Encryption/Decryption ............................................................................................................................ 40
Virtual Columns ...................................................................................................................................... 41
Data Mining Model Scoring .................................................................................................................... 43
Non-Smart Scan Offloading.................................................................................................................... 44
Smart Scan Prerequisites ................................................................................................45
Full Scans ............................................................................................................................................... 45
Direct Path Reads ................................................................................................................................... 45
Exadata Storage ..................................................................................................................................... 46
Smart Scan Disablers ......................................................................................................49
Simply Unavailable ................................................................................................................................. 49
Reverting to Block Shipping ................................................................................................................... 49
Skipping Some Offloading ...................................................................................................................... 50

VI
„#/.4%.43

How to Verify That Smart Scan is Happening ..................................................................50


10046 Trace............................................................................................................................................ 51
Performance Statistics (v$sessstat) ....................................................................................................... 52
Offload Eligible Bytes.............................................................................................................................. 54
SQL Monitoring ....................................................................................................................................... 58
Parameters ......................................................................................................................61
Summary .........................................................................................................................64
„ Chapter 3: Hybrid Columnar Compression............................................................65
Oracle Storage Review ....................................................................................................65
Oracle Compression Mechanisms ...................................................................................68
BASIC...................................................................................................................................................... 68
OLTP ....................................................................................................................................................... 68
HCC......................................................................................................................................................... 69
HCC Mechanics................................................................................................................72
HCC Performance.............................................................................................................73
Load Performance .................................................................................................................................. 73
Query Performance................................................................................................................................. 78
DML Performance................................................................................................................................... 83
Expected Compression Ratios .........................................................................................91
Compression Advisor.............................................................................................................................. 91
Real World Examples.............................................................................................................................. 94
Restrictions/Challenges.................................................................................................100
Moving Data to a non-Exadata Platform............................................................................................... 100
Disabling Serial Direct Path Reads ....................................................................................................... 100
Locking Issues...................................................................................................................................... 101
Single Row Access ............................................................................................................................... 102
Common Usage Scenarios.............................................................................................102

VII
„#/.4%.43

Summary .......................................................................................................................104
„ Chapter 4: Storage Indexes.................................................................................105
Structure........................................................................................................................105
Monitoring Storage Indexes...........................................................................................107
Database Statistics............................................................................................................................... 107
Tracing.................................................................................................................................................. 108
Monitoring Wrap Up.............................................................................................................................. 111
Controlling Storage Indexes...........................................................................................111
_kcfis_storageidx_disabled ................................................................................................................. 111
_kcfis_storageidx_diag_mode ............................................................................................................. 112
_cell_storidx_mode.............................................................................................................................. 112
Storage Software Parameters .............................................................................................................. 112
Behavior.........................................................................................................................113
Performance ..................................................................................................................114
Special Optimization for Nulls .............................................................................................................. 116
Physical Distribution of Values ............................................................................................................. 117
Potential Issues .............................................................................................................118
Incorrect Results .................................................................................................................................. 119
Moving Target....................................................................................................................................... 119
Partition Size ........................................................................................................................................ 122
Incompatible Coding Techniques ......................................................................................................... 122
Summary .......................................................................................................................124
„ Chapter 5: Exadata Smart Flash Cache...............................................................125
Hardware .......................................................................................................................125
Cache vs. Flash Disk......................................................................................................127
Using Flash Memory as Cache ............................................................................................................. 128
How ESFC is Created ............................................................................................................................ 132

VIII
„#/.4%.43

Controlling ESFC Usage ........................................................................................................................ 134


Monitoring .....................................................................................................................135
At the Storage Layer............................................................................................................................. 135
At the Database Layer .......................................................................................................................... 139
Performance ..................................................................................................................140
Summary .......................................................................................................................141
„ Chapter 6: Exadata Parallel Operations ..............................................................143
Parameters ....................................................................................................................143
Parallelization at the Storage Tier .................................................................................145
Auto DOP........................................................................................................................146
Operation and Configuration................................................................................................................. 146
I/O Calibration....................................................................................................................................... 149
Auto DOP Wrap Up ................................................................................................................................ 152
Parallel Statement Queuing ...........................................................................................152
The Old Way.......................................................................................................................................... 153
The New Way........................................................................................................................................ 153
Controlling Parallel Queuing ................................................................................................................. 157
Parallel Statement Queuing Wrap Up ................................................................................................... 165
In-Memory Parallel Execution........................................................................................165
Summary .......................................................................................................................175
„ Chapter 7: Resource Management......................................................................175
Database Resource Manager.........................................................................................176
Consumer Groups ................................................................................................................................. 178
Plan Directives...................................................................................................................................... 181
Resource Plan....................................................................................................................................... 183
Resource Manager Views ..................................................................................................................... 184
The Wait Event: resmgr: cpu quantum ................................................................................................. 185

IX
„#/.4%.43

DBRM Example ..................................................................................................................................... 185


Testing a Resource Plan....................................................................................................................... 190
Instance Caging .............................................................................................................198
Configuring and Testing Instance Caging............................................................................................. 199
Over-Provisioning ................................................................................................................................. 204
I/O Resource Manager ...................................................................................................204
How IORM Works.................................................................................................................................. 206
Methods for Managing I/O on Exadata ................................................................................................. 209
Bringing It All Together......................................................................................................................... 215
IORM Monitoring and Metrics ............................................................................................................... 219
Summary .......................................................................................................................235
„ Chapter 8: Configuring Exadata ..........................................................................237
Exadata Network Components ......................................................................................237
The Management Network ................................................................................................................... 237
The Client Access Network................................................................................................................... 238
The Private Network ............................................................................................................................. 239
About the Configuration Process ...................................................................................240
Configuring Exadata.......................................................................................................241
Step 1: The Configuration Worksheet................................................................................................... 242
Step 2: The DBM Configurator .............................................................................................................. 253
Step 3: Upload Parameter and Deployment Files ................................................................................. 254
Step 4: CheckIP (RWTRZX_bW) ............................................................................................................ 258
Step 5: Firstboot ................................................................................................................................... 260
Step 6: Staging the Installation Media.................................................................................................. 262
Step 7: Running OneCommand............................................................................................................. 263
Upgrading Exadata.........................................................................................................268
Creating a New RAC Cluster ................................................................................................................. 268
Upgrading the Existing Cluster ............................................................................................................. 270

X
„#/.4%.43

Summary .......................................................................................................................273
„ Chapter 9: Recovering Exadata...........................................................................275
Exadata Diagnostic Tools...............................................................................................275
Sun Diagnostics: sundiag.sh ................................................................................................................ 276
HealthCheck ......................................................................................................................................... 278
CellCLI................................................................................................................................................... 279
Backing Up Exadata.......................................................................................................284
Backing Up the Database Servers ........................................................................................................ 284
Backing Up the Storage Cell ................................................................................................................. 287
Backing Up the Database...............................................................................................293
Disk-Based Backups............................................................................................................................. 293
Tape-Based Backups............................................................................................................................ 293
Backup from Standby Database ........................................................................................................... 294
Exadata Optimizations for RMAN.......................................................................................................... 295
Recovering Exadata .......................................................................................................296
Restoring the Database Server............................................................................................................. 296
Recovering the Storage Cell ................................................................................................................. 299
Summary .......................................................................................................................318
„ Chapter 10: Exadata Wait Events........................................................................319
Events Specific to Exadata ............................................................................................319
The “cell” Events.................................................................................................................................. 320
Plan Steps That Trigger Events ............................................................................................................ 321
Exadata Wait Events in the User I/O Class.....................................................................323
cell smart table scan ............................................................................................................................ 323
cell smart index scan ........................................................................................................................... 326
cell single block physical read ............................................................................................................. 328
cell multiblock physical read................................................................................................................ 330

XI
„#/.4%.43

cell list of blocks physical read ............................................................................................................ 331


cell smart file creation.......................................................................................................................... 332
cell statistics gather ............................................................................................................................. 333
Exadata Wait Events in the System I/O Class ................................................................333
cell smart incremental backup............................................................................................................. 334
cell smart restore from backup ............................................................................................................ 335
Exadata Wait Events in the Other and Idle Classes .......................................................337
cell smart flash unkeep ........................................................................................................................ 337
Old Events......................................................................................................................338
direct path read .................................................................................................................................... 338
enq: KO—fast object checkpoint.......................................................................................................... 339
reliable message .................................................................................................................................. 340
Resource Manager Events .............................................................................................341
resmgr:cpu quantum ............................................................................................................................ 341
resmgr:pq queued ................................................................................................................................ 342
Summary .......................................................................................................................343
„ Chapter 11: Understanding Exadata Performance Metrics.................................345
Measuring Exadata’s Performance Metrics...................................................................345
Revisiting the Prerequisites for Exadata Smart Scans ..................................................346
Exadata Smart Scan Performance........................................................................................................ 346
Understanding Exadata Smart Scan Metrics and Performance Counters ........................................... 350
Exadata Dynamic Performance Counters ......................................................................350
When and How to Use Performance Counters...................................................................................... 351
The Meaning and Explanation of Exadata Performance Counters........................................................ 354
Exadata Performance Counter Reference ............................................................................................ 356
Understanding SQL Statement Performance .................................................................374
Summary .......................................................................................................................377

XII
„#/.4%.43

„ Chapter 12: Monitoring Exadata Performance....................................................379


A Systematic Approach..................................................................................................379
Monitoring SQL Statement Response Time ...................................................................380
Monitoring SQL Statements with Real-Time SQL Monitoring Reports................................................. 381
Monitoring SQL Statements using V$SQL and V$SQLSTATS ................................................................ 393
Monitoring the Storage Cell Layer .................................................................................395
Accessing Cell Metrics in the Cell Layer Using CellCLI......................................................................... 395
Accessing Cell Metrics Using the Grid Control Exadata Storage Server Plug-In ................................. 396
Which Cell Metrics to Use?................................................................................................................... 405
Monitoring Exadata Storage Cell OS-level Metrics............................................................................... 406
Summary .......................................................................................................................418
„ Chapter 13: Migrating to Exadata.......................................................................419
Migration Strategies ......................................................................................................420
Logical Migration ...........................................................................................................421
Extract and Load................................................................................................................................... 422
Copying Data over a Database Link...................................................................................................... 427
Replication-Based Migration ................................................................................................................ 443
Logical Migration Wrap Up ................................................................................................................... 451
Physical Migration .........................................................................................................451
Backup and Restore.......................................................................................................452
Full Backup and Restore....................................................................................................................... 452
Incremental Backup.............................................................................................................................. 454
Transportable Tablespaces (and XTTS) ................................................................................................ 455
Physical Standby .................................................................................................................................. 458
ASM Rebalance .................................................................................................................................... 460
Post-Migration Tasks............................................................................................................................ 463
Wrap Up Physical Migration Section..................................................................................................... 464

XIII
„#/.4%.43

Summary .......................................................................................................................465
„ Chapter 14: Storage Layout ................................................................................467
Exadata Disk Architecture .............................................................................................467
Failure Groups ...................................................................................................................................... 469
Grid Disks ............................................................................................................................................. 471
Storage Allocation ................................................................................................................................ 473
Creating Grid Disks ........................................................................................................477
Creating Grid Disks............................................................................................................................... 478
Grid Disk Sizing .................................................................................................................................... 479
Creating FlashDisk-Based Grid Disks ................................................................................................... 483
Storage Strategies .........................................................................................................484
Configuration Options ........................................................................................................................... 485
Isolating Storage Cell Access ............................................................................................................... 485
Cell Security...................................................................................................................487
Cell Security Terminology..................................................................................................................... 488
Cell Security Best Practices.................................................................................................................. 489
Configuring ASM-Scoped Security ....................................................................................................... 489
Configuring Database-Scoped Security................................................................................................ 490
Removing Cell Security......................................................................................................................... 493
Summary .......................................................................................................................495
„ Chapter 15: Compute Node Layout .....................................................................497
Provisioning Considerations ..........................................................................................497
Non-RAC Configuration..................................................................................................500
RAC Clusters ..................................................................................................................504
Typical Exadata Configuration .......................................................................................506
Exadata Clusters............................................................................................................507
Summary .......................................................................................................................509

XIV
„#/.4%.43

„ Chapter 16: Unlearning Some Things We Thought We Knew .............................511


A Tale of Two Systems ..................................................................................................511
OLTP-Oriented Workloads..............................................................................................512
Exadata Smart Flash Cache (ESFC) ...................................................................................................... 512
Scalability ............................................................................................................................................. 513
Write-Intensive OLTP Workloads .......................................................................................................... 513
DW-Oriented Workloads ................................................................................................514
Enabling Smart Scans .......................................................................................................................... 514
Things that Can Cripple Smart Scans................................................................................................... 516
Other Things to Keep in Mind ............................................................................................................... 526
Mixed Workloads ...........................................................................................................528
To Index or Not to Index?...................................................................................................................... 529
The Optimizer Doesn’t Know ................................................................................................................ 530
Using Resource Manager ..................................................................................................................... 533
Summary .......................................................................................................................534
„ Appendix A: CellCLI and dcli ...............................................................................535
CellCLI Command Syntax...............................................................................................535
Getting Familiar with CellCLI ................................................................................................................ 536
Sending Commands from the Operating System ................................................................................. 540
Configuring and Managing the Storage Cell......................................................................................... 540
dcli Command Syntax ....................................................................................................542
Summary .......................................................................................................................544
„ Appendix B: Online Exadata Resources ..............................................................545
Exadata MOS Support Notes..........................................................................................545
Helpful Exadata MOS Support Notes .............................................................................545
Exadata Bulletins and Blogs ..........................................................................................546
„ Appendix C: Diagnostic Scripts...........................................................................547
„ Index ...................................................................................................................551

XV
About the Author


  Kerry Osborne BEGANWORKINGWITH/RACLEVERSION IN(EHAS
WORKEDASBOTHADEVELOPERANDA$"!&ORTHEPASTSEVERALYEARSHEHAS
BEENFOCUSEDONUNDERSTANDING/RACLEINTERNALSANDSOLVINGPERFORMANCE
PROBLEMS(EISAN/AK4ABLEMEMBERANDAN/RACLE!CE$IRECTOR+ERRYISA
FREQUENTSPEAKERAT/RACLECONFERENCES(EISALSOACO FOUNDEROF%NKITEC
AN/RACLE FOCUSEDCONSULTINGCOMPANYHEADQUARTEREDIN$ALLAS 4EXAS(E
BLOGSATZTaah^bQ^a]T^aPR[TVdhR^\






  Randy JohnsonISA0RINCIPAL#ONSULTANTAT%NKITEC ACONSULTINGFIRM
SPECIALIZINGIN/RACLE2ANDYHASOVERYEARSOFEXPERIENCEWITH/RACLE
BEGINNINGWITH/RACLEINTHEEARLYS-UCHOFHISCAREERHASCOMBINED
/RACLE$"!WORKWITH5NIXADMINISTRATIONDUTIES/VERTHELASTFIVEYEARSHE
HASFOCUSEDALMOSTEXCLUSIVELYON2!#AND!3-(EISALSOANAUTHORITYON
/RACLEBACKUPANDRECOVERYVIA2-!. HAVINGWRITTENAPOPULARUTILITYFOR
AUTOMATING2-!.SCRIPTSCALLED$IXIE2ANDYOCCASIONALLYBLOGSAT
Q[^VT]ZXcTRR^\


  Tanel PöderISONEOFTHELEADING/RACLEPERFORMANCESPECIALISTSINTHE
WORLD HAVINGHELPEDSOLVINGCOMPLEXPROBLEMSFORCUSTOMERSINOVER
COUNTRIESONFIVECONTINENTS(ESPECIALIZESINADVANCEDPERFORMANCETUNING
END TO ENDTROUBLESHOOTING ANDOTHERCOMPLEXANDTHEREFOREINTERESTING
TASKSSUCHASMIGRATING6,$"SWITHVERYLOWDOWNTIME4ANELHASOPTIMIZED
THEPERFORMANCEOF%XADATAINSTALLATIONSSTARTINGFROM%XADATA6 ANDHE
PLANSTOGOEVENDEEPERWITHHISCURRENT%XADATAPERFORMANCEAND
TROUBLESHOOTINGRESEARCH
(EISONEOFTHEFIRST/RACLE#ERTIFIED-ASTERSINTHEWORLD AN/RACLE!#%
$IRECTORANDAPROUDMEMBEROFTHE/AK4ABLE.ETWORK
4ANELREGULARLYSPEAKSATCONFERENCESWORLDWIDEANDPUBLISHESHISARTICLES SCRIPTSANDTOOLSINHISBLOG
ATWcc_)Q[^VcP]T[_^STaR^\

XVI
About the Technical Reviewer


 Kevin ClossonISA4ECHNOLOGY$IRECTORAND0ERFORMANCE!RCHITECTINTHE
$ATA#OMPUTING$IVISIONOF%-#&ROMTHROUGH +EVINWASA
0ERFORMANCE!RCHITECTIN/RACLE#ORPORATIONS%XADATADEVELOPMENT
ORGANIZATIONWITHINTHE3ERVER4ECHNOLOGY'ROUP(ISYEARCAREERFOCUSHAS
BEENSYSTEMANDSOFTWAREPERFORMANCEENGINEERINGANDARCHITECTURE
COMPETITIVEBENCHMARKING SUPPORT ANDAPPLICATIONDEVELOPMENTONHIGH END
3-0AND#LUSTERED5NIXAND,INUXPLATFORMS(ISWORKPRIORTO/RACLEAT
(00OLY3ERVE 6ERITAS AND)"-3EQUENTWASFOCUSEDONSCALABILITYAND
AVAILABILITYENHANCEMENTSOFTHE/RACLESERVERANDPLATFORMSTHATSUPPORTIT(IS
/RACLEPORT LEVELWORKLEDTOHIS53PATENTSIN3-0.5-!LOCKINGAND
DATABASECACHINGMETHODS  +EVINMAINTAINSAVERYPOPULAR
TECHNOLOGYBLOGATZTeX]R[^bb^]f^aS_aTbbR^\

XVII
Acknowledgments

!SALWAYS ITSTHEPEOPLECLOSESTTOYOUTHATPAYTHEPRICEFORYOURINDISCRETIONS3O)DLIKETOTAKETHIS
OPPORTUNITYTOTHANKMYFAMILYFORPUTTINGUPWITHMEWHILE)STRUGGLEDTHROUGHTHISPROJECT)TWASFAR
MOREWORKTHAN)EVEREXPECTED BUTWHATREALLYSURPRISEDMEWASTHATTHEREWASASENSEOFIMPENDING
DOOMHANGINGOVERMEEVERYDAYFORALMOSTAYEAR)JOKEDTHATEVERYTHINGWASMEASUREDINPARAGRAPHS
)COULDGOOUTTODINNERWITHMYWIFE OR)COULDWRITEANOTHERTWOPARAGRAPHS!CTUALLY )COULDNTWRITE
THEMTHATFAST BUTYOUKNOWWHAT)MEAN 3OAGAIN )DLIKETOTHANKMYWIFE*ILLANDMYKIDSFORPUTTING
UPWITHTHEDISTANTSTARESANDTHESELFIMPOSEDRAINCLOUDHANGINGOVERALLOFOURHEADS
+ERRY/SBORNE

)WANTTOSAYTHANKYOUTOMYKIDS "RANDONAND#HARIS WHOENDUREDTHEMANYLONGNIGHTSAND
WEEKENDS)SPENTATTHEKITCHENTABLEWRITINGTHISBOOK4HEYARESUCHANINSPIRATIONTOME-YDAUGHTER
#HARIS ATRULYGIFTEDWRITER ISSOCREATIVEANDBOLD-YSON"RANDON THEBRILLIANTSCIENTISTANDSTRATEGIC
THINKEROFTHEFAMILY NEVERGIVESUP7ATCHINGTHEMGROWINTOYOUNGADULTSHASTAUGHTMETHEVALUEOF
CREATIVITYANDPERSEVERANCE ESPECIALLYWHENTHETASKSEEMSINSURMOUNTABLE)LOVEYOU KIDS
4OMYPARENTS FAMILY ANDFRIENDS )DLIKETOSAYTHANKYOUFORALLYOURENCOURAGEMENTAND
SUPPORT9OUWEREALWAYSTHEREFORMEWHEN)NEEDEDYOU)WONTTRYTONAMEEVERYONEHERE BUTYOU
KNOWWHOYOUARE
!NDFINALLY )DLIKETOSAYASPECIALTHANKSTO+ERRYFORINVITINGMEONTHISJOURNEYWITHHIM!
FEWYEARSAGO IFYOUDTOLDME)WASGOINGTOWRITEABOOKSOMEDAY )DHAVELAUGHEDOUTLOUD"UT+ERRY
HASATALENTFORNUDGINGMEOUTOFMYCOMFORTZONE)NADDITIONTOBEINGAMENTOR OVERTHEYEARSHEHAS
BECOMEATRUSTEDFRIEND
2ANDY*OHNSON

4HISISTHEFIRSTBOOK)gVECO AUTHORED SOTHISACKNOWLEDGMENTISGOINGTOBEATHANK YOUNOTETOANYONE
WHOHASEVERHELPEDMEWITHMYCAREERANDSUPPORTEDMYPASSIONFORSOLVINGPROBLEMSWITHDATA
ALGORITHMS ANDCOMPUTERS)FYOUHAVEEVERTAUGHTME HELPEDME ORGIVENMEADVICEˆTHANKYOU)gD
LIKETOGIVEASPECIALTHANKSTOMYPARENTS WHOSTRONGLYSUPPORTEDMYINTERESTINTECHNOLOGY
ELECTRONICS ANDCOMPUTERSWHEN)WASAKID!DDITIONALLY ABIGTHANKSTOMYWIFE*ANIKA WHO DESPITE
NOTBEINGACOMPUTERGEEK UNDERSTANDSTHATITgSPERFECTLYNORMALTOSOMETIMESSTAREATACOMPUTER
SCREENFORHOURSINAROW
4ANEL0šDER

XVIII

Introduction

4HANKYOUFORPURCHASINGTHISBOOK7EWORKEDHARDONITFORALONGTIME/URHOPEISTHATYOUFINDIT
USEFULASYOUBEGINTOWORKWITH%XADATA7EVETRIEDTOINTRODUCETHETOPICSINAMETHODICALMANNER
ANDMOVEFROMGENERALIZATIONSTOSPECIFICTECHNICALDETAILS7HILESOMEOFTHEMATERIALPAINTSAVERY
BROADPICTUREOFHOW%XADATAWORKS SOMEISVERYTECHNICALINNATURE ANDYOUMAYFINDTHATHAVING
ACCESSTOAN%XADATASYSTEMWHEREYOUCANTRYSOMEOFTHETECHNIQUESPRESENTEDWILLMAKEITEASIERTO
UNDERSTAND.OTETHATWEVEUSEDMANYUNDOCUMENTEDPARAMETERSANDFEATURESTODEMONSTRATEHOW
VARIOUSPIECESOFTHESOFTWAREWORK$ONOTTAKETHISASARECOMMENDEDAPPROACHFORMANAGINGA
PRODUCTIONSYSTEM2EMEMBERTHATWEHAVEHADACCESSTOASYSTEMTHATWECOULDTEARAPARTWITHLITTLE
WORRYABOUTTHECONSEQUENCESTHATRESULTEDFROMOURACTIONS4HISGAVEUSAHUGEADVANTAGEINOUR
INVESTIGATIONSINTOHOW%XADATAWORKS)NADDITIONTOTHISPRIVILEGEDACCESS WEWEREPROVIDEDAGREAT
DEALOFSUPPORTFROMPEOPLEBOTHINSIDEANDOUTSIDEOF/RACLEFORWHICHWEAREEXTREMELYGRATEFUL

The Intended Audience


4HISBOOKISINTENDEDFOREXPERIENCED/RACLEPEOPLE7EDONOTATTEMPTTOEXPLAINHOW/RACLEWORKS
EXCEPTASITRELATESTOTHE%XADATAPLATFORM4HISMEANSTHATWEHAVEMADESOMEASSUMPTIONSABOUTTHE
READERSKNOWLEDGE7EDONOTASSUMETHATYOUAREANEXPERTATPERFORMANCETUNINGON/RACLE BUTWE
DOEXPECTTHATYOUAREPROFICIENTWITH31,ANDHAVEAGOODUNDERSTANDINGOFBASIC/RACLEARCHITECTURE

How We Came to Write This Book


)NTHESPRINGOF %NKITECBOUGHTAN%XADATA61UARTER2ACK7EPUTITINTHETINYCOMPUTERROOMAT
OUROFFICEIN$ALLAS7EDONTHAVEARAISEDFLOORORANYTHINGVERYFANCY BUTTHEROOMDOESHAVEITSOWN
AIRCONDITIONINGSYSTEM)TWASACTUALLYMOREDIFFICULTTHANYOUMIGHTTHINKTOGET/RACLETOLETUS
PURCHASEONE4HEYHADMANYCUSTOMERSTHATWANTEDTHEM ANDTHEYWEREUNDERSTANDABLYPROTECTIVEOF
THEIRNEWBABY7EDIDNTHAVEATOP NOTCHDATACENTERTOPUTITIN ANDEVENTHEPOWERREQUIREMENTS
HADTOBEDEALTWITHBEFORETHEYWOULDDELIVERONETOUS!TANYRATE SHORTLYAFTERWETOOKDELIVERY
THROUGHASERIESOFCONVERSATIONSWITH*ONATHAN'ENNICK 2ANDYAND)AGREEDTOWRITETHISBOOKFOR
!PRESS4HEREWASNOTAWHOLELOTOFDOCUMENTATIONAVAILABLEATTHATTIME ANDSOWEFOUNDOURSELVES
PESTERINGANYONEWECOULDFINDWHOKNEWANYTHINGABOUTIT+EVIN#LOSSONAND$AN.ORRISWEREBOTH
GRACIOUSENOUGHTOANSWERMANYOFOURQUESTIONSATTHE(OTSOS3YMPOSIUMINTHESPRINGOF+EVIN
CONTACTEDMESOMETIMELATERANDOFFEREDTOBETHEOFFICIALTECHNICALREVIEWER3O2ANDYAND)STRUGGLED
THROUGHTHESUMMERANDEARLYFALLATTEMPTINGTOLEARNEVERYTHINGCOULD
)RANINTO4ANELAT/RACLE/PEN7ORLDIN3EPTEMBER  ANDWETALKEDABOUTACLIENTUSING
%XADATATHATHEHADDONESOMEMIGRATIONWORKFOR/NETHINGLEDTOANOTHER ANDEVENTUALLYHEAGREED
TOJOINTHETEAMASACO AUTHOR!T/PEN7ORLD /RACLEANNOUNCEDTHEAVAILABILITYOFTHENEW8MODELS
SOWEHADBARELYGOTTENSTARTEDANDWEWEREALREADYBEHINDONTHETECHNOLOGY

XIX
 ).42/$5#4)/.

)N*ANUARYOF THE8PLATFORMWASBEGINNINGTOSHOWUPATCUSTOMERSITES%NKITECAGAIN
DECIDEDTOINVESTINTHETECHNOLOGY ANDWEBECAMETHEPROUDPARENTSOFAN8 QUARTERRACK!CTUALLY
WEDECIDEDTOUPGRADEOUREXISTING6QUARTERRACKTOAHALFRACKWITH8COMPONENTS4HISSEEMEDLIKEA
GOODWAYTOLEARNABOUTDOINGUPGRADESANDTOSEEIFTHEREWOULDBEANYPROBLEMSMIXINGCOMPONENTS
FROMTHETWOVERSIONSTHEREWERENT 4HISBRINGSMETOANIMPORTANTPOINT

A Moving Target
,IKEMOSTNEWSOFTWARE %XADATAHASEVOLVEDRAPIDLYSINCEITSINTRODUCTIONINLATE4HECHANGES
HAVEINCLUDEDSIGNIFICANTNEWFUNCTIONALITY)NFACT ONEOFTHEMOSTDIFFICULTPARTSOFTHISPROJECTHAS
BEENKEEPINGUPWITHTHECHANGES3EVERALCHAPTERSUNDERWENTMULTIPLEREVISIONSBECAUSEOFCHANGESIN
BEHAVIORINTRODUCEDWHILEWEWEREWRITINGTHEMATERIAL4HELASTVERSIONWEHAVEATTEMPTEDTOCOVERIN
THISBOOKISDATABASEVERSIONWITHBUNDLEPATCHANDRT[[baeVERSION.OTETHATTHERE
HAVEBEENMANYPATCHESOVERTHELASTTWOYEARSANDTHATTHEREAREMANYPOSSIBLECOMBINATIONSOF
DATABASEVERSION PATCHLEVEL ANDRT[[baeVERSIONS3OIFYOUAREOBSERVINGSOMEDIFFERENTBEHAVIORTHAN
WEHAVEDOCUMENTED THISISAPOTENTIALCAUSE.EVERTHELESS WEWELCOMEYOURFEEDBACKANDWILLBE
HAPPYTOADDRESSANYINCONSISTENCIESTHATYOUFIND)NFACT THISBOOKHASBEENAVAILABLEASPARTOF
!PRESSS!LPHAPROGRAM WHICHALLOWSREADERSTODOWNLOADEARLYDRAFTSOFTHEMATERIAL0ARTICIPANTSIN
THISPROGRAMHAVEPROVIDEDQUITEABITOFFEEDBACKDURINGTHEWRITINGANDEDITINGPROCESS7EAREVERY
THANKFULFORTHATFEEDBACKANDSOMEWHATSURPRISEDATTHEDETAILEDINFORMATIONMANYOFYOUPROVIDED

Thanks to the Unofficial Editors


7EHAVEHADAGREATDEALOFSUPPORTFROMANUMBEROFPEOPLEONTHISPROJECT(AVINGOUROFFICIAL
TECHNICALREVIEWERACTUALLYWRITINGBITSTHATWEREDESTINEDTOENDUPINTHEBOOKWASALITTLEWEIRD)N
SUCHACASE WHOREVIEWSTHEREVIEWERSWRITING&ORTUNATELY !RUP.ANDAVOLUNTEEREDEARLYINTHE
PROJECTTOBEANUNOFFICIALEDITOR3OINADDITIONTOTHEAUTHORSREVIEWINGEACHOTHERSSTUFF AND+EVIN
REVIEWINGOURCHAPTERS !RUPREADANDCOMMENTEDONEVERYTHING INCLUDING+EVINSCOMMENTS)N
ADDITION MANYOFTHE/AK4ABLE.ETWORKMEMBERSGAVEUSFEEDBACKONVARIOUSCHAPTERSTHROUGHOUT
THEPROCESS-OSTNOTABLY &RITS(OOGLANDAND0ETER"ACHPROVIDEDVALUABLEINPUT
7HENTHEBOOKWASADDEDTO!PRESSS!LPHA0ROGRAM WEGAINEDAWHOLENEWSETOFREVIEWERS
3EVERALPEOPLEGAVEUSFEEDBACKBASEDONTHEEARLYVERSIONSOFCHAPTERSTHATWEREPUBLISHEDINTHIS
FORMAT4HANKSTOALLOFYOUWHOASKEDUSQUESTIONSANDHELPEDUSCLARIFYOURTHOUGHTSONSPECIFIC
ISSUES)NPARTICULAR 4YLER-UTHAT/RACLETOOKAVERYACTIVEINTERESTINTHEPROJECTANDPROVIDEDUSWITH
VERYDETAILEDFEEDBACK(EWASALSOINSTRUMENTALINHELPINGTOCONNECTUSWITHOTHERRESOURCESINSIDE
/RACLE SUCHAS3UE,EE WHOPROVIDEDAVERYDETAILEDREVIEWOFTHE2ESOURCE-ANAGEMENTCHAPTER
&INALLY)DLIKETOTHANKTHETECHNICALTEAMAT%NKITEC4HEREWEREMANYWHOHELPEDUSKEEPON
TRACKANDHELPEDPICKUPTHESLACKWHILE2ANDYAND)WEREWORKINGONTHISPROJECTINSTEADOFDOINGOUR
REALJOBS 4HELISTOFPEOPLEWHOHELPEDISPRETTYLONG SO)WONTCALLEVERYONEBYNAME)FYOUWORKAT
%NKITECANDYOUHAVEBEENINVOLVEDWITHTHE%XADATAWORKOVERTHELASTCOUPLEOFYEARS YOUHAVE
CONTRIBUTEDTOTHISBOOK)WOULDLIKETOSPECIFICALLYTHANK4IM&OX WHOGENERATEDALOTOFTHEGRAPHICS
FORUSINSPITEOFTHEFACTTHATHEHADNUMEROUSOTHERIRONSINTHEFIRE INCLUDINGHISOWNBOOKPROJECT
7EALSOOWE!NDY#OLVINAVERYSPECIALTHANKSASAMAJORCONTRIBUTORTOTHEPROJECT(EWAS
INSTRUMENTALINSEVERALCAPACITIES&IRST HEWASPRIMARILYRESPONSIBLEFORMAINTAININGOURTEST
ENVIRONMENT INCLUDINGUPGRADINGANDPATCHINGTHEPLATFORMSOTHATWECOULDTESTTHENEWESTFEATURES
ANDCHANGESASTHEYBECAMEAVAILABLE3ECOND HEHELPEDUSHOLDDOWNTHEFORTWITHOURCUSTOMERSWHO

XX
 ).42/$5#4)/.

WEREIMPLEMENTING%XADATAWHILE2ANDYAND)WEREBUSYWRITING4HIRD HEWASINSTRUMENTALINHELPING
USFIGUREOUTHOWVARIOUSFEATURESWORKED PARTICULARLYWITHREGARDTOINSTALLATION CONFIGURATION AND
CONNECTIONSTOEXTERNALSYSTEMS)TWOULDHAVEBEENDIFFICULTTOCOMPLETETHEPROJECTWITHOUTHIM

Who Wrote That?


4HEREARETHREEAUTHORSOFTHISBOOK FOURIFYOUCOUNT+EVIN)TWASREALLYACOLLABORATIVEEFFORTAMONG
THEFOUROFUS"UTINORDERTODIVIDETHEWORKWEEACHAGREEDTODOANUMBEROFCHAPTERS)NITIALLY2ANDY
AND)STARTEDTHEPROJECTAND4ANELJOINEDALITTLELATERSOHEGOTALIGHTERLOADINTERMSOFTHE
ASSIGNMENTS BUTWASAVERYVALUABLEPARTOFTEAM HELPINGWITHRESEARCHONAREASTHATWERENOT
SPECIFICALLYASSIGNEDTOHIM 3OHERESHOWTHEASSIGNMENTSWORKEDOUT

+ERRY#HAPTERSn  
2ANDY#HAPTERSn n ANDABOUTHALFOF
4ANEL#HAPTERSn ANDABOUTHALFOF
+EVIN%ASILYIDENTIFIABLEINTHEh+EVIN3AYSvSECTIONS

Online Resources
7EUSEDANUMBEROFSCRIPTSINTHISBOOK7HENTHEYWERESHORTORWEFELTTHESCRIPTSTHEMSELVESWEREOF
INTEREST WEINCLUDEDTHEIRCONTENTSINTHETEXT7HENTHEYWERELONGORJUSTNOTVERYINTERESTING WE
SOMETIMESLEFTTHECONTENTSOFTHESCRIPTSOUTOFTHETEXT9OUCANFINDTHESOURCECODEFORALLOFTHE
SCRIPTSWEUSEDINTHEBOOKONLINEATfff4g_Tac>aPR[T4gPSPcPR^\!PPENDIX#ALSOCONTAINSALISTINGOF
ALLTHEDIAGNOSTICSCRIPTSALONGWITHABRIEFDESCRIPTIONOFTHEIRPURPOSE

A Note on “Kevin Says”


+EVIN#LOSSONSERVEDASOURPRIMARYTECHNICALREVIEWERFORTHEBOOK+EVINWASTHECHIEFPERFORMANCE
ARCHITECTAT/RACLEFORTHE3!'%PROJECT WHICHEVENTUALLYTURNEDINTO%XADATA SOHEISEXTREMELY
KNOWLEDGEABLENOTONLYABOUTHOWITWORKS BUTALSOABOUTHOWITSHOULDWORKANDWHY(ISDUTIESAS
TECHNICALREVIEWERWERETOREVIEWWHATWEWROTEANDVERIFYITFORCORRECTNESS4HEGENERALWORKFLOW
CONSISTEDOFONEOFTHEAUTHORSSUBMITTINGAFIRSTDRAFTOFACHAPTERANDTHEN+EVINWOULDREVIEWITAND
MARKITUPWITHCOMMENTS!SWESTARTEDWORKINGTOGETHER WEREALIZEDTHATITMIGHTBEAGOODIDEATO
ACTUALLYINCLUDESOMEOF+EVINSCOMMENTSINTHEBOOK WHICHPROVIDESYOUWITHASOMEWHATUNIQUE
LOOKINTOTHEPROCESS+EVINHASAUNIQUEWAYOFSAYINGALOTINVERYFEWWORDS/VERTHECOURSEOFTHE
PROJECT)FOUNDMYSELFGOINGBACKTOSHORTCOMMENTSOREMAILSMULTIPLETIMES ANDOFTENFOUNDTHEM
MOREMEANINGFULAFTER)WASMOREFAMILIARWITHTHETOPIC3O)WOULDRECOMMENDTHATYOUDOTHESAME
2EADHISCOMMENTSASYOUREGOINGTHROUGHACHAPTER BUTTRYTOCOMEBACKANDREREADHISCOMMENTS
AFTERFINISHINGTHECHAPTER)THINKYOULLFINDTHATYOUWILLGETMOREOUTOFTHEMONTHESECONDPASS

How We Tested
7HENWEBEGANTHEPROJECT THECURRENTRELEASEOFTHEDATABASEWAS3OSEVERALOFTHECHAPTERS
WEREINITIALLYTESTEDWITHTHATVERSIONOFTHEDATABASEANDVARIOUSPATCHLEVELSONTHESTORAGECELLS7HEN

XXI
 ).42/$5#4)/.

BECAMEAVAILABLE WEWENTBACKANDRETESTED7HERETHEREWERESIGNIFICANTDIFFERENCESWETRIED
TOPOINTTHATOUT BUTTHEREARESOMESECTIONSTHATWERENOTWRITTENUNTILAFTERWASAVAILABLE3O
ONTHOSETOPICSWEMAYNOTHAVEMENTIONEDDIFFERENCESWITHBEHAVIOR7EUSEDACOMBINATION
OF6AND8HARDWARECOMPONENTSFOROURTESTING4HEREWASBASICALLYNODIFFERENCEOTHERTHANTHE8
BEINGFASTER

Schemas and Tables


9OUWILLSEEACOUPLEOFDATABASETABLESUSEDINSEVERALEXAMPLESTHROUGHOUTTHEBOOK4ANELUSEDA
TABLECALLED4THATLOOKSLIKETHIS

BHB/B0=31>G -/cPQ[TNbcPcb
>f]Ta)C0=4;
CPQ[T)C
=P\T=d[[.Ch_T

>F=4AE0A270A!"
=0<4E0A270A!"
CH?4E0A270A! !
;8=4=D<14A
C4GCE0A270A!#
A>F=D<=D<14A

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
CPQ[TBcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
C01;4N=0<4)C
;0BCN0=0;HI43) 0?A!  ")!')$$
346A44) 
?0AC8C8>=43)=>
=D<NA>FB)%!('$(((
2708=N2=C)
1;>2:B) '$!$$
4<?CHN1;>2:B)
0E6NB?024)
0E6NA>FN;4=) #
<>=8C>A8=6)H4B
B0<?;4NB8I4)%!('$(((

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
2^[d\]BcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
=P\T0]P[hiTS=3E3T]bXch=d[[b1dRZTcbBP\_[T
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
>F=4A# ! ! #&% ( %!('$(((
=0<4# ! $# & '$ %!('$(((
CH?4# ! (  %!('$(((
;8=4# ! !"$#'#! %!('$(((

XXII
 ).42/$5#4)/.

C4GC# ! ""%#'" %!('$(((


A>F=D<# !    %!('$(((

)USEDSEVERALVARIATIONSONATABLECALLED3+%74HEONE)USEDMOSTOFTENIS3+%7 ANDIT
LOOKEDLIKETHIS

BHB/B0=31>G -/cPQ[TNbcPcb
>f]Ta):B>
CPQ[T)B:4F"
=P\T=d[[.Ch_T

?:N2>;=D<14A
2>; =D<14A
2>;!E0A270A!"
2>;"30C4
2>;#E0A270A! 
=D;;N2>;E0A270A! 

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
CPQ[TBcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
C01;4N=0<4)B:4F"
;0BCN0=0;HI43) 90=!  ()#()
346A44) 
?0AC8C8>=43)=>
=D<NA>FB)"'##'
2708=N2=C)
1;>2:B) ($'%$#
4<?CHN1;>2:B)
0E6NB?024)
0E6NA>FN;4=)""
<>=8C>A8=6)H4B
B0<?;4NB8I4)"'##'

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
2^[d\]BcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
=P\T0]P[hiTS=3E3T]bXch=d[[b1dRZTcbBP\_[T
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
?:N2>;  ! " ((''' ! "'#"%
2>;   ! (!'#' # "'###
2>;!  ! !$ ! "'#"%
2>;"  !  $ !  ! "'#"%
2>;#  ! """"""" ! "'#"%
=D;;N2>;  !   "'"(((#( (((

XXIII
 ).42/$5#4)/.

4HISDETAILEDINFORMATIONSHOULDNOTBENECESSARYFORUNDERSTANDINGANYOFOUREXAMPLES BUT
IFYOUHAVEANYQUESTIONSABOUTTHETABLES THEYAREHEREFORYOURREFERENCE!LSOBEAWARETHATWEUSED
OTHERTABLESASWELL BUTTHESEARETHEONESWEUSEDMOSTOFTEN

Good Luck
7EHAVEHADABLASTDISCOVERINGHOW%XADATAWORKS)HOPEYOUENJOYYOUREXPLORATIONSASMUCHASWE
HAVE AND)HOPETHISBOOKPROVIDESAPLATFORMFROMWHICHYOUCANBUILDYOUROWNBODYOFKNOWLEDGE)
FEELLIKEWEAREJUSTBEGINNINGTOSCRATCHTHESURFACEOFTHEPOSSIBILITIESTHATHAVEBEENOPENEDUPBY
%XADATA'OODLUCKWITHYOURINVESTIGATIONSANDPLEASEFEELFREETOASKUSQUESTIONSANDSHAREYOUR
DISCOVERIESWITHUSATfff4g_Tac>aPR[T4gPSPcPR^\

XXIV
CHAPTER 1

„„„

What Is Exadata?

.ODOUBTYOUALREADYHAVEAPRETTYGOODIDEAWHAT%XADATAISORYOUWOULDNTBEHOLDINGTHISBOOKIN
YOURHANDS)NOURVIEW ITISAPRECONFIGUREDCOMBINATIONOFHARDWAREANDSOFTWARETHATPROVIDESA
PLATFORMFORRUNNING/RACLE$ATABASEVERSIONG2ELEASEASOFTHISWRITING 3INCETHE%XADATA
$ATABASE-ACHINEINCLUDESASTORAGESUBSYSTEM NEWSOFTWAREHASBEENDEVELOPEDTORUNATTHESTORAGE
LAYER4HISHASALLOWEDTHEDEVELOPERSTODOSOMETHINGSTHATAREJUSTNOTPOSSIBLEONOTHERPLATFORMS)N
FACT %XADATAREALLYBEGANITSLIFEASASTORAGESYSTEM)FYOUTALKTOPEOPLEINVOLVEDINTHEDEVELOPMENTOF
THEPRODUCT YOUWILLCOMMONLYHEARTHEMREFERTHESTORAGECOMPONENTAS%XADATAOR3!'%3TORAGE
!PPLIANCEFOR'RID%NVIRONMENTS WHICHWASTHECODENAMEFORTHEPROJECT
%XADATAWASORIGINALLYDESIGNEDTOADDRESSTHEMOSTCOMMONBOTTLENECKWITHVERYLARGEDATABASES
THEINABILITYTOMOVESUFFICIENTLYLARGEVOLUMESOFDATAFROMTHEDISKSTORAGESYSTEMTOTHEDATABASE
SERVERS /RACLEHASBUILTITSBUSINESSBYPROVIDINGVERYFASTACCESSTODATA PRIMARILYTHROUGHTHEUSEOF
INTELLIGENTCACHINGTECHNOLOGY!STHESIZESOFDATABASESBEGANTOOUTSTRIPTHEABILITYTOCACHEDATA
EFFECTIVELYUSINGTHESETECHNIQUES /RACLEBEGANTOLOOKATWAYSTOELIMINATETHEBOTTLENECKBETWEENTHE
STORAGETIERANDTHEDATABASETIER4HESOLUTIONTHEYCAMEUPWITHWASACOMBINATIONOFHARDWAREAND
SOFTWARE)FYOUTHINKABOUTIT THEREARETWOAPPROACHESTOMINIMIZINGTHISBOTTLENECK4HEFIRSTISTO
MAKETHEPIPEBIGGER7HILETHEREAREMANYCOMPONENTSINVOLVED ANDITSABITOFANOVERSIMPLIFICATION
YOUCANTHINKOF)NFINI"ANDASTHATBIGGERPIPE4HESECONDWAYTOMINIMIZETHEBOTTLENECKISTOREDUCE
THEAMOUNTOFDATATHATNEEDSTOBETRANSFERRED4HISTHEYDIDWITH3MART3CANS4HECOMBINATIONOFTHE
TWOHASPROVIDEDAVERYSUCCESSFULSOLUTIONTOTHEPROBLEM"UTMAKENOMISTAKEREDUCINGTHEVOLUME
OFDATAFLOWINGBETWEENTHETIERSVIA3MART3CANISTHEGOLDENGOOSE

 +EVIN3AYS4HEAUTHORSHAVEPROVIDEDANACCURATELISTOFAPPROACHESFORALLEVIATINGTHEHISTORICALBOTTLENECK
BETWEENSTORAGEAND#05FOR$7")WORKLOADSˆIF THATIS THEUNDERLYINGMANDATEISTOCHANGEASLITTLEINTHE
CORE/RACLE$ATABASEKERNELASPOSSIBLE&ROMAPURECOMPUTERSCIENCEPERSPECTIVE THELISTOFSOLUTIONSTOTHE
GENERICPROBLEMOFDATAFLOWBETWEENSTORAGEAND#05INCLUDESOPTIONSSUCHASCO LOCATINGTHEDATAWITHTHE
DATABASEINSTANCEˆTHEhSHARED NOTHINGv-00APPROACH7HILEITISWORTHWHILETOPOINTTHISOUT THEAUTHORSARE
RIGHTNOTTOSPENDTIMEDISCUSSINGTHEOPTIONSDISMISSEDBY/RACLE

)NTHISINTRODUCTORYCHAPTERWELLREVIEWTHECOMPONENTSTHATMAKEUP%XADATA BOTHHARDWAREAND
SOFTWARE7ELLALSODISCUSSHOWTHEPARTSFITTOGETHERTHEARCHITECTURE 7ELLTALKABOUTHOWTHE
DATABASESERVERSTALKTOTHESTORAGESERVERS4HISISHANDLEDVERYDIFFERENTLYTHANONOTHERPLATFORMS SO
WELLSPENDAFAIRAMOUNTOFTIMECOVERINGTHATTOPIC7ELLALSOPROVIDESOMEHISTORICALCONTEXT"YTHE


#(!04%2 7(!4)3%8!$!4!

ENDOFTHECHAPTER YOUSHOULDHAVEAPRETTYGOODFEELFORHOWALLTHEPIECESFITTOGETHERANDABASIC
UNDERSTANDINGOFHOW%XADATAWORKS4HERESTOFTHEBOOKWILLPROVIDETHEDETAILSTOFILLOUTTHESKELETON
THATISBUILTINTHISCHAPTER

 +EVIN3AYS)NMYOPINION $ATA7AREHOUSING"USINESS)NTELLIGENCEPRACTITIONERS INAN/RACLEENVIRONMENT


WHOAREINTERESTEDIN%XADATA MUSTUNDERSTAND#ELL/FFLOAD0ROCESSINGFUNDAMENTALSbeforeANYOTHERASPECTOF
THE%XADATA$ATABASE-ACHINE!LLOTHERTECHNOLOGYASPECTSOF%XADATAAREMERELYENABLINGTECHNOLOGYINSUPPORT
OF#ELL/FFLOAD0ROCESSING&OREXAMPLE TAKINGTOOMUCHINTEREST TOOEARLY IN%XADATA)NFINI"ANDCOMPONENTRYIS
SIMPLYNOTTHEBESTWAYTOBUILDASTRONGUNDERSTANDINGOFTHETECHNOLOGY0UTANOTHERWAY THISISONEOFTHERARE
CASESWHEREITISBETTERTOFIRSTAPPRECIATETHEWHOLECAKEBEFORESCRUTINIZINGTHEINGREDIENTS7HEN)EDUCATEON
THETOPICOF%XADATA )STARTWITHTHETOPICOF#ELL/FFLOAD0ROCESSING)NDOINGSO)QUICKLYIMPARTTHEFOLLOWINGFOUR
FUNDAMENTALS

#ELL/FFLOAD0ROCESSING7ORKPERFORMEDBYTHESTORAGESERVERSTHATWOULDOTHERWISEHAVETOBEEXECUTEDINTHE
DATABASEGRID)TINCLUDESFUNCTIONALITYLIKE3MART3CAN DATAFILEINITIALIZATION 2-!.OFFLOAD AND(YBRID#OLUMNAR
#OMPRESSION(## DECOMPRESSIONINTHECASEWHERE)N -EMORY0ARALLEL1UERYISNOTINVOLVED 

3MART3CAN4HEMOSTRELEVANT#ELL/FFLOAD0ROCESSINGFORIMPROVING$ATA7AREHOUSE"USINESS)NTELLIGENCE
QUERYPERFORMANCE3MART3CANISTHEAGENTFOROFFLOADINGFILTRATION PROJECTION 3TORAGE)NDEXEXPLOITATION AND
(##DECOMPRESSION

&ULL3CANOR)NDEX&AST&ULL3CAN4HEREQUIREDACCESSMETHODCHOSENBYTHEQUERYOPTIMIZERINORDERTOTRIGGER
A3MART3CAN

$IRECT0ATH2EADS2EQUIREDBUFFERINGMODELFORA3MART3CAN4HEFLOWOFDATAFROMA3MART3CANCANNOTBE
BUFFEREDINTHE3'!BUFFERPOOL$IRECTPATHREADSCANBEPERFORMEDFORBOTHSERIALANDPARALLELQUERIES$IRECTPATH
READSAREBUFFEREDINPROCESS0'!HEAP 

An Overview of Exadata
!PICTURESWORTHATHOUSANDWORDS ORSOTHESAYINGGOES&IGURE SHOWSAVERYHIGH LEVELVIEWOFTHE
PARTSTHATMAKEUPTHE%XADATA$ATABASE-ACHINE


#(!04%2 7(!4)3%8!$!4!

Exadata Database Servers Exadata Storage Servers

Infiniband

11gR2 / ASM
iDB / RDS
cellsrv
Figure 1-1. High-level Exadata components

7HENCONSIDERING%XADATA ITISHELPFULTODIVIDETHEENTIRESYSTEMMENTALLYINTOTWOPARTS THE


STORAGELAYERANDTHEDATABASELAYER4HELAYERSARECONNECTEDVIAAN)NFINI"ANDNETWORK)NFINI"AND
PROVIDESALOW LATENCY HIGH THROUGHPUTSWITCHEDFABRICCOMMUNICATIONSLINK)TPROVIDESREDUNDANCY
ANDBONDINGOFLINKS4HEDATABASELAYERISMADEUPOFMULTIPLE3UNSERVERSRUNNINGSTANDARD/RACLE
G2SOFTWARE4HESERVERSAREGENERALLYCONFIGUREDINONEORMORE2!#CLUSTERS ALTHOUGH2!#ISNOT
ACTUALLYREQUIRED4HEDATABASESERVERSUSE!3-TOMAPTHESTORAGE!3-ISREQUIREDEVENIFTHE
DATABASESARENOTCONFIGUREDTOUSE2!#4HESTORAGELAYERALSOCONSISTSOFMULTIPLE3UNSERVERS%ACH
STORAGESERVERCONTAINSDISKDRIVESANDRUNSTHE/RACLESTORAGESERVERSOFTWAREcellsrv 
#OMMUNICATIONBETWEENTHELAYERSISACCOMPLISHEDVIAI$" WHICHISANETWORKBASEDPROTOCOLTHATIS
IMPLEMENTEDUSING)NFINI"ANDI$"ISUSEDTOSENDREQUESTSFORDATAALONGWITHMETADATAABOUTTHE
REQUESTINCLUDINGPREDICATES TOcellsrv)NCERTAINSITUATIONS cellsrvISABLETOUSETHEMETADATATO
PROCESSTHEDATABEFORESENDINGRESULTSBACKTOTHEDATABASELAYER7HENcellsrvISABLETODOTHISITIS
CALLEDA3MART3CANANDGENERALLYRESULTSINASIGNIFICANTDECREASEINTHEVOLUMEOFDATATHATNEEDSTOBE
TRANSMITTEDBACKTOTHEDATABASELAYER7HEN3MART3CANSARENOTPOSSIBLE cellsrvRETURNSTHEENTIRE
/RACLEBLOCKS .OTETHATI$"USESTHE2$3PROTOCOL WHICHISALOW LATENCYPROTOCOLTHATBYPASSES
KERNELCALLSBYUSINGREMOTEDIRECTMEMORYACCESS2$-! TOACCOMPLISHPROCESS TO PROCESS
COMMUNICATIONACROSSTHE)NFINI"ANDNETWORK

History of Exadata
%XADATAHASUNDERGONEANUMBEROFSIGNIFICANTCHANGESSINCEITSINITIALRELEASEINLATE)NFACT ONE
OFTHEMOREDIFFICULTPARTSOFWRITINGTHISBOOKHASBEENKEEPINGUPWITHTHECHANGESINTHEPLATFORM
DURINGTHEPROJECT(ERESABRIEFREVIEWOFTHEPRODUCTSLINEAGEANDHOWITHASCHANGEDOVERTIME


#(!04%2 7(!4)3%8!$!4!

 +EVIN3AYS)DLIKETOSHARESOMEHISTORICALPERSPECTIVE"EFORETHEREWAS%XADATA THEREWAS3!'%ˆ3TORAGE
!PPLIANCEFOR'RID%NVIRONMENTS WHICHWEMIGHTCONSIDER6)NFACT ITREMAINED3!'%UNTILJUSTAMATTEROF
WEEKSBEFORE,ARRY%LLISONGAVEITTHENAME%XADATAˆJUSTINTIMEFORTHE/PEN7ORLDLAUNCHOFTHEPRODUCTIN
AMIDHUGECO BRANDEDFANFAREWITH(EWLETT 0ACKARD!LTHOUGHTHEFIRSTEMBODIMENTOF3!'%WASA(EWLETT
0ACKARDEXCLUSIVE /RACLEHADNOTYETDECIDEDTHATTHEPLATFORMWOULDBEEXCLUSIVETO(EWLETT 0ACKARD MUCHLESS
THEEVENTUALTOTALEXCLUSIVITYENJOYEDBY3UN-ICROSYSTEMSˆBYWAYOFBEINGACQUIREDBY/RACLE)NFACT /RACLE
LEADERSHIPHADNTEVENESTABLISHEDTHERIGID,INUX/PERATING3YSTEMREQUIREMENTFORTHEDATABASEHOSTSTHE
PORTINGEFFORTOFI$"TO(0 58)TANIUMWASINVERYLATESTAGESOFDEVELOPMENTBEFORETHE3UNACQUISITIONWAS
FINALIZED"UT3!'%EVOLUTIONWENTBACKFURTHERTHANTHAT

V1:4HEFIRST%XADATAWASRELEASEDINLATE)TWASLABELEDAS6ANDWASA
COMBINATIONOF(0HARDWAREAND/RACLESOFTWARE4HEARCHITECTUREWASSIMILAR
TOTHECURRENT8 VERSION WITHTHEEXCEPTIONOFTHE&LASH#ACHE WHICHWAS
ADDEDTOTHE6VERSION%XADATA6WASMARKETEDASEXCLUSIVELYADATA
WAREHOUSEPLATFORM4HEPRODUCTWASINTERESTINGBUTNOTWIDELYADOPTED)T
ALSOSUFFEREDFROMISSUESRESULTINGFROMOVERHEATING4HECOMMONLYHEARD
DESCRIPTIONWASTHATYOUCOULDFRYEGGSONTOPOFTHECABINET-ANYOFTHE
ORIGINAL6CUSTOMERSREPLACEDTHEIR6SWITH6S
V2:4HESECONDVERSIONOF%XADATAWASANNOUNCEDAT/PEN7ORLDIN4HIS
VERSIONWASAPARTNERSHIPBETWEEN3UNAND/RACLE"YTHETIMETHE
ANNOUNCEMENTWASMADE /RACLEWASALREADYINTHEPROCESSOFATTEMPTINGTO
ACQUIRE3UN-ICROSYSTEMS-ANYOFTHECOMPONENTSWEREUPGRADEDTOBIGGER
ORFASTERVERSIONS BUTTHEBIGGESTDIFFERENCEWASTHEADDITIONOFASIGNIFICANT
AMOUNTOFSOLID STATEBASEDSTORAGE4HESTORAGECELLSWEREENHANCEDWITH'
OF%XADATA3MART&LASH#ACHE4HESOFTWAREWASALSOENHANCEDTOTAKE
ADVANTAGEOFTHENEWCACHE4HISADDITIONALLOWED/RACLETOMARKETTHE
PLATFORMASMORETHANA$ATA7AREHOUSEPLATFORMOPENINGUPASIGNIFICANTLY
LARGERMARKET
X2:4HETHIRDEDITIONOF%XADATA ANNOUNCEDAT/RACLE/PEN7ORLDIN WAS
NAMEDTHE8!CTUALLY THEREARETWODISTINCTVERSIONSOFTHE84HE8 
FOLLOWSTHESAMEBASICBLUEPRINTASTHE6 WITHUPTOEIGHTDUAL #05DATABASE
SERVERS4HE#05SWEREUPGRADEDTOHEX COREMODELS WHERETHE6SHADUSED
QUAD CORE#05S4HEOTHER8MODELWASNAMEDTHE8 )TBREAKSTHESMALL
5DATABASESERVERMODELBYINTRODUCINGLARGERDATABASESERVERSWITH¾CORE
#05SANDALARGE4"MEMORYFOOTPRINT4HE8 ISMARKETEDASAMOREROBUST
PLATFORMFORLARGE/,40ORMIXEDWORKLOADSYSTEMSDUEPRIMARILYTOTHELARGER
NUMBEROF#05CORESANDTHELARGERMEMORYFOOTPRINT


#(!04%2 7(!4)3%8!$!4!

Alternative Views of What Exadata Is


7EVEALREADYGIVENYOUARATHERBLANDDESCRIPTIONOFHOWWEVIEW%XADATA(OWEVER LIKETHEWELL
KNOWNTALEOFTHEBLINDMENDESCRIBINGANELEPHANT THEREAREMANYCONFLICTINGPERCEPTIONSABOUTTHE
NATUREOF%XADATA7ELLCOVERAFEWOFTHECOMMONDESCRIPTIONSINTHISSECTION

$ATA7AREHOUSE!PPLIANCE
/CCASIONALLY%XADATAISDESCRIBEDASAdata warehouse appliance (DW Appliance)7HILE/RACLEHAS
ATTEMPTEDTOKEEP%XADATAFROMBEINGPIGEONHOLEDINTOTHISCATEGORY THEDESCRIPTIONISCLOSERTOTHE
TRUTHTHANYOUMIGHTINITIALLYTHINK)TIS INFACT ATIGHTLYINTEGRATEDSTACKOFHARDWAREANDSOFTWARETHAT
/RACLEEXPECTSYOUTORUNWITHOUTALOTOFCHANGES4HISISDIRECTLYIN LINEWITHTHECOMMON
UNDERSTANDINGOFA$7!PPLIANCE(OWEVER THEVERYNATUREOFTHE/RACLEDATABASEMEANSTHATITIS
EXTREMELYCONFIGURABLE4HISFLIESINTHEFACEOFTHETYPICAL$7!PPLIANCE WHICHTYPICALLYDOESNOTHAVE
ALOTOFKNOBSTOTURN(OWEVER THEREARESEVERALCOMMONCHARACTERISTICSTHATARESHAREDBETWEEN$7
!PPLIANCESAND%XADATA
Exceptional Performance:4HEMOSTRECOGNIZABLECHARACTERISTICOF%XADATAAND
$7!PPLIANCESINGENERALISTHATTHEYAREOPTIMIZEDFORDATAWAREHOUSETYPE
QUERIES
Fast Deployment:$7!PPLIANCESAND%XADATA$ATABASE-ACHINESCANBOTHBE
DEPLOYEDVERYRAPIDLY3INCE%XADATACOMESPRECONFIGURED ITCANGENERALLYBE
UPANDRUNNINGWITHINAWEEKFROMTHETIMEYOUTAKEDELIVERY4HISISINSTARK
CONTRASTTOTHENORMAL/RACLECLUSTEREDDATABASEDEPLOYMENTSCENARIO WHICH
GENERALLYTAKESSEVERALWEEKS
Scalability:"OTHPLATFORMSHAVESCALABLEARCHITECTURES7ITH%XADATA
UPGRADINGISDONEINDISCRETESTEPS5PGRADINGFROMAHALFRACKCONFIGURATIONTO
AFULLRACKINCREASESTHETOTALDISKTHROUGHPUTINLOCKSTEPWITHTHECOMPUTING
POWERAVAILABLEONTHEDATABASESERVERS
Reduction in TCO:4HISONEMAYSEEMABITSTRANGE SINCEMANYPEOPLETHINK
THEBIGGESTDRAWBACKTO%XADATAISTHEHIGHPRICETAG"UTTHEFACTISTHATBOTH
$7!PPLIANCESAND%XADATAREDUCETHEOVERALLCOSTOFOWNERSHIPINMANY
APPLICATIONS/DDLYENOUGH IN%XADATASCASETHISISPARTIALLYTHANKSTOA
REDUCTIONINTHENUMBEROF/RACLEDATABASELICENSESNECESSARYTOSUPPORTA
GIVENWORKLOAD7EHAVESEENSEVERALSITUATIONSWHEREMULTIPLEHARDWARE
PLATFORMSWEREEVALUATEDFORRUNNINGACOMPANYS/RACLEAPPLICATIONANDHAVE
ENDEDUPCOSTINGLESSTOIMPLEMENTANDMAINTAINON%XADATATHANONTHEOTHER
OPTIONSEVALUATED
High Availability:-OST$7!PPLIANCESPROVIDEANARCHITECTURETHATSUPPORTSAT
LEASTSOMEDEGREEOFhigh availability (HA)3INCE%XADATARUNSSTANDARD/RACLE
GSOFTWARE ALLTHE(!CAPABILITIESTHAT/RACLEHASDEVELOPEDAREAVAILABLEOUT
OFTHEBOX4HEHARDWAREISALSODESIGNEDTOPREVENTANYSINGLEPOINTOFFAILURE
Preconfiguration:7HEN%XADATAISDELIVEREDTOYOURDATACENTER A3UN
ENGINEERWILLBESCHEDULEDTOASSISTWITHTHEINITIALCONFIGURATION4HISWILL
INCLUDEENSURINGTHATTHEENTIRERACKISCABLEDANDFUNCTIONINGASEXPECTED"UT
LIKEMOST$7!PPLIANCES THEWORKHASALREADYBEENDONETOINTEGRATETHE
COMPONENTS3OEXTENSIVERESEARCHANDTESTINGARENOTREQUIRED


#(!04%2 7(!4)3%8!$!4!

Limited Standard Configurations:-OST$7!PPLIANCESONLYCOMEINAVERY


LIMITEDSETOFCONFIGURATIONSSMALL MEDIUM ANDLARGE FOREXAMPLE %XADATAIS
NODIFFERENT4HEREARECURRENTLYONLYFOURPOSSIBLECONFIGURATIONS4HISHAS
REPERCUSSIONSWITHREGARDSTOSUPPORTABILITY)TMEANSIFYOUCALLSUPPORTAND
TELLTHEMYOUHAVEAN8 (ALF2ACK THESUPPORTPEOPLEWILLIMMEDIATELY
KNOWALLTHEYNEEDTOKNOWABOUTYOURHARDWARE4HISPROVIDESBENEFITSTOTHE
SUPPORTPERSONNELANDTHECUSTOMERSINTERMSOFHOWQUICKLYISSUESCANBE
RESOLVED
2EGARDLESSOFTHESIMILARITIES /RACLEDOESNOTCONSIDER%XADATATOBEA$7!PPLIANCE EVENTHOUGH
THEREAREMANYSHAREDCHARACTERISTICS'ENERALLYSPEAKING THISISBECAUSE%XADATAPROVIDESAFULLY
FUNCTIONAL/RACLEDATABASEPLATFORMWITHALLTHECAPABILITIESTHATHAVEBEENBUILTINTO/RACLEOVERTHE
YEARS INCLUDINGTHEABILITYTORUNANYAPPLICATIONTHATCURRENTLYRUNSONAN/RACLEDATABASEANDIN
PARTICULARTODEALWITHMIXEDWORKLOADSTHATDEMANDAHIGHDEGREEOFCONCURRENCY WHICH$7
!PPLIANCESAREGENERALLYNOTEQUIPPEDTOHANDLE

 +EVIN3AYS7HETHER%XADATAISORISNOTANAPPLIANCEISACOMMONTOPICOFCONFUSIONWHENPEOPLEENVISION
WHAT%XADATAIS4HE/RACLE%XADATA$ATABASE-ACHINEISNOTANAPPLIANCE(OWEVER THESTORAGEGRIDDOES
CONSISTOF%XADATA3TORAGE3ERVERCELLSˆWHICHAREAPPLIANCES

/,40-ACHINE
4HISDESCRIPTIONISABITOFAMARKETINGPLOYAIMEDATBROADENING%XADATASAPPEALTOAWIDERMARKET
SEGMENT7HILETHEDESCRIPTIONISNOTTOTALLYOFF BASE ITISNOTASACCURATEASSOMEOTHERMONIKERSTHAT
HAVEBEENASSIGNEDTO%XADATA)TBRINGSTOMINDTHECLASSICQUOTE

It depends on what the meaning of the word “is” is.

ˆ"ILL#LINTON

)NTHESAMEVEIN /,40/NLINE4RANSACTION0ROCESSING ISABITOFALOOSELYDEFINEDTERM7E


TYPICALLYUSETHETERMTODESCRIBEWORKLOADSTHATAREVERYLATENCY SENSITIVEANDCHARACTERIZEDBYSINGLE
BLOCKACCESSVIAINDEXES"UTTHEREISASUBSETOF/,40SYSTEMSTHATAREALSOVERYWRITE INTENSIVEAND
DEMANDAVERYHIGHDEGREEOFCONCURRENCYTOSUPPORTALARGENUMBEROFUSERS%XADATAWASNOTDESIGNED
TOBETHEFASTESTPOSSIBLESOLUTIONFORTHESEWRITE INTENSIVEWORKLOADS(OWEVER ITSWORTHNOTINGTHAT
VERYFEWSYSTEMSFALLNEATLYINTOTHESECATEGORIES-OSTSYSTEMSHAVEAMIXTUREOFLONG RUNNING
THROUGHPUT SENSITIVE31,STATEMENTSANDSHORT DURATION LATENCY SENSITIVE31,STATEMENTS7HICHLEADS
USTOTHENEXTVIEWOF%XADATA

#ONSOLIDATION0LATFORM
4HISDESCRIPTIONPITCHES%XADATAASAPOTENTIALPLATFORMFORCONSOLIDATINGMULTIPLEDATABASES4HISIS
DESIRABLEFROMATOTALCOSTOFOWNERSHIP4#/ STANDPOINT ASITHASTHEPOTENTIALTOREDUCECOMPLEXITY
ANDTHEREFORECOSTSASSOCIATEDWITHTHATCOMPLEXITY REDUCEADMINISTRATIONCOSTSBYDECREASINGTHE
NUMBEROFSYSTEMSTHATMUSTBEMAINTAINED REDUCEPOWERUSAGEANDDATACENTERCOSTSTHROUGH


#(!04%2 7(!4)3%8!$!4!

REDUCINGTHENUMBEROFSERVERS ANDREDUCESOFTWAREANDMAINTENANCEFEES4HISISAVALIDWAYTOVIEW
%XADATA"ECAUSEOFTHECOMBINATIONOFFEATURESINCORPORATEDIN%XADATA ITISCAPABLEOFADEQUATELY
SUPPORTINGMULTIPLEWORKLOADPROFILESATTHESAMETIME!LTHOUGHITISNOTTHEPERFECT/,40-ACHINE THE
&LASH#ACHEFEATUREPROVIDESAMECHANISMFORENSURINGLOWLATENCYFOR/,40 ORIENTEDWORKLOADS4HE
3MART3CANOPTIMIZATIONSPROVIDEEXCEPTIONALPERFORMANCEFORHIGH THROUGHPUT $7 ORIENTED
WORKLOADS2ESOURCE-ANAGEMENTOPTIONSBUILTINTOTHEPLATFORMPROVIDETHEABILITYFORTHESESOMEWHAT
CONFLICTINGREQUIREMENTSTOBESATISFIEDONTHESAMEPLATFORM)NFACT ONEOFTHEBIGGESTUPSIDESTOTHIS
ABILITYISTHEPOSSIBILITYOFTOTALLYELIMINATINGAHUGEAMOUNTOFWORKTHATISCURRENTLYPERFORMEDINMANY
SHOPSTOMOVEDATAFROMAN/,40SYSTEMTOA$7SYSTEMSOTHATLONG RUNNINGQUERIESDONOTNEGATIVELY
AFFECTTHELATENCY SENSITIVEWORKLOAD)NMANYSHOPS SIMPLYMOVINGDATAFROMONEPLATFORMTOANOTHER
CONSUMESMORERESOURCESTHANANYOTHEROPERATION%XADATASCAPABILITIESINTHISREGARDMAYMAKETHIS
PROCESSUNNECESSARYINMANYCASES

Configuration Options
3INCE%XADATAISDELIVEREDASAPRECONFIGURED INTEGRATEDSYSTEM THEREAREVERYFEWOPTIONSAVAILABLE!S
OFTHISWRITINGTHEREAREFOURVERSIONSAVAILABLE4HEYAREGROUPEDINTOTWOMAJORCATEGORIESWITH
DIFFERENTMODELNAMESTHE8 ANDTHE8  4HESTORAGETIERSANDNETWORKINGCOMPONENTSFORTHE
TWOMODELSAREIDENTICAL4HEDATABASETIERS HOWEVER AREDIFFERENT

%XADATA$ATABASE-ACHINE8 
4HE8 COMESINTHREEFLAVORSQUARTERRACK HALFRACK ANDFULLRACK4HESYSTEMISBUILTTOBE
UPGRADEABLE SOYOUCANUPGRADELATERFROMAQUARTERRACKTOHALFRACK FOREXAMPLE(EREISWHATYOU
NEEDTOKNOWABOUTTHEDIFFERENTOPTIONS
Quarter Rack4HE8 1UARTER2ACKCOMESWITHTWODATABASESERVERSAND
THREESTORAGESERVERS4HEHIGH CAPACITYVERSIONPROVIDESROUGHLY4"OF
USABLEDISKSPACEIFITISCONFIGUREDFORNORMALREDUNDANCY4HEHIGH
PERFORMANCEVERSIONPROVIDESROUGHLYONETHIRDOFTHATORABOUT4"OFUSABLE
SPACE AGAINIFCONFIGUREDFORNORMALREDUNDANCY
Half Rack4HE8 (ALF2ACKCOMESWITHFOURDATABASESERVERSANDSEVEN
STORAGESERVERS4HEHIGH CAPACITYVERSIONPROVIDESROUGHLY4"OFUSABLEDISK
SPACEIFITISCONFIGUREDFORNORMALREDUNDANCY4HEHIGH PERFORMANCEVERSION
PROVIDESROUGHLY4"OFUSABLESPACEIFCONFIGUREDFORNORMALREDUNDANCY
Full Rack4HE8 1UARTER2ACKCOMESWITHEIGHTDATABASESERVERSAND
FOURTEENSTORAGESERVERS4HEHIGH CAPACITYVERSIONPROVIDESROUGHLY4"OF
USABLEDISKSPACEIFITISCONFIGUREDFORNORMALREDUNDANCY4HEHIGH
PERFORMANCEVERSIONPROVIDESABOUT4"OFUSABLESPACEIFCONFIGUREDFOR
NORMALREDUNDANCY


#(!04%2 7(!4)3%8!$!4!

 .OTE(ERESHOWWECAMUPWITHTHEROUGHUSEABLESPACEESTIMATES7ETOOKTHEACTUALSIZEOFTHEDISKAND
SUBTRACTED'"FOR/3$"&3SPACE!SSUMINGTHEACTUALDISKSIZESARE '"AND'"FORHIGHCAPACITY
(# ANDHIGHPERFORMANCE(0 DRIVES THATLEAVES '"FOR(#AND'"FOR(0-ULTIPLYTHATBYTHENUMBER
OFDISKSINTHERACK  OR $IVIDETHATNUMBERBYORDEPENDINGONWHETHERYOUAREUSINGNORMALOR
HIGHREDUNDANCYTOGETUSABLESPACE+EEPINMINDTHATTHEUSABLEFREEMBTHATASMCMDREPORTSTAKESINTO
ACCOUNTTHESPACENEEDEDFORAREBALANCEIFAFAILGROUPWASLOSTREQ?MIR?FREE?-" 5SABLEFILESPACEFROM
ASMCMDgSLSDGISCALCULATEDASFOLLOWS

&REE?-"REDUNDANCY REQ?MIR?FREE?-"

(ALFANDFULLRACKSAREDESIGNEDTOBECONNECTEDTOADDITIONALRACKS ENABLINGMULTIPLE RACK


CONFIGURATIONS4HESECONFIGURATIONSHAVEANADDITIONAL)NFINI"ANDSWITCHCALLEDAspine switch)TIS
INTENDEDTOBEUSEDTOCONNECTADDITIONALRACKS4HEREAREENOUGHAVAILABLECONNECTIONSTOCONNECTAS
MANYASEIGHTRACKS ALTHOUGHADDITIONALCABLINGMAYBEREQUIREDDEPENDINGONTHENUMBEROFRACKSYOU
INTENDTOCONNECT4HEDATABASESERVERSOFTHEMULTIPLERACKSCANBECOMBINEDINTOASINGLE2!#
DATABASEWITHDATABASESERVERSTHATSPANRACKS ORTHEYMAYBEUSEDTOFORMSEVERALSMALLER2!#
CLUSTERS#HAPTERCONTAINSMOREINFORMATIONABOUTCONNECTINGMULTIPLERACKS

%XADATA$ATABASE-ACHINE8 
4HEREISCURRENTLYONLYONEVERSIONOFTHE8 )THASTWODATABASESERVERSANDFOURTEENSTORAGECELLS)T
ISEFFECTIVELYAN8 &ULL2ACKBUTWITHTWOLARGEDATABASESERVERSINSTEADOFTHEEIGHTSMALLERDATABASE
SERVERSUSEDINTHE8 !SPREVIOUSLYMENTIONED THESTORAGESERVERSANDNETWORKINGCOMPONENTSARE
IDENTICALTOTHE8 MODEL4HEREARENOUPGRADESSPECIFICTOX AVAILABLE)FYOUNEEDMORECAPACITY
YOUROPTIONISTOADDANOTHER8  ALTHOUGHITISPOSSIBLETOADDADDITIONALSTORAGECELLS

Upgrades
1UARTERRACKSANDHALFRACKSMAYBEUPGRADEDTOADDMORECAPACITY4HECURRENTPRICELISTHASTWO
OPTIONSFORUPGRADES THE(ALF2ACK4O&ULL2ACK5PGRADEANDTHE1UARTER2ACKTO(ALF2ACK5PGRADE
4HEOPTIONSARELIMITEDINANEFFORTTOMAINTAINTHERELATIVEBALANCEBETWEENDATABASESERVERSAND
STORAGESERVERS4HESEUPGRADESAREDONEINTHEFIELD)FYOUORDERANUPGRADE THEINDIVIDUAL
COMPONENTSWILLBESHIPPEDTOYOURSITEONABIGPALLETANDA3UNENGINEERWILLBESCHEDULEDTOINSTALL
THECOMPONENTSINTOYOURRACK!LLTHENECESSARYPARTSSHOULDBETHERE INCLUDINGRACKRAILSANDCABLES
5NFORTUNATELY THELABELSFORTHECABLESSEEMTOCOMEFROMSOMEOTHERPARTOFTHEUNIVERSE7HENWEDID
THEUPGRADEONOURLABSYSTEM THELACKOFLABELSHELDUSUPFORACOUPLEOFDAYS
4HEQUARTER TO HALFUPGRADEINCLUDESTWODATABASESERVERSANDFOURSTORAGESERVERSALONGWITHAN
ADDITIONAL)NFINI"ANDSWITCH WHICHISCONFIGUREDASASPINESWITCH4HEHALF TO FULLUPGRADEINCLUDES
FOURDATABASESERVERSANDSEVENSTORAGESERVERS4HEREISNOADDITIONAL)NFINI"ANDSWITCHREQUIRED
BECAUSETHEHALFRACKALREADYINCLUDESASPINESWITCH
4HEREISALSOTHEPOSSIBILITYOFADDINGSTANDALONESTORAGESERVERSTOANEXISTINGRACK!LTHOUGHTHIS
GOESAGAINSTTHEBALANCEDCONFIGURATIONPHILOSOPHY /RACLEDOESALLOWIT/DDLYENOUGH THEYDONOT


#(!04%2 7(!4)3%8!$!4!

SUPPORTPLACINGTHESTORAGESERVERSINTHEEXISTINGRACK EVENIFTHEREISSPACEASINTHECASEOFAQUARTER
RACKORHALFRACKFOREXAMPLE 
4HEREAREACOUPLEOFOTHERTHINGSWORTHNOTINGABOUTUPGRADES-ANYCOMPANIESPURCHASED
%XADATA6SYSTEMSANDARENOWINTHEPROCESSOFUPGRADINGTHOSESYSTEMS3EVERALQUESTIONSNATURALLY
ARISEWITHREGARDTOTHISPROCESS/NEHASTODOWITHWHETHERITISACCEPTABLETOMIXTHENEWER8 
SERVERSWITHTHEOLDER6COMPONENTS4HEANSWERISYES ITS/+TOMIXTHEM)NOURLABENVIRONMENT
FOREXAMPLE WEHAVEAMIXTUREOF6OURORIGINALQUARTERRACK AND8 SERVERSTHEUPGRADETOAHALF
RACK 7ECHOSETOUPGRADEOUREXISTINGSYSTEMTOAHALFRACKRATHERTHANPURCHASEANOTHERSTANDALONE
QUARTERRACKWITH8 COMPONENTS WHICHWASANOTHERVIABLEOPTION
4HEOTHERQUESTIONTHATCOMESUPFREQUENTLYISWHETHERADDINGADDITIONALSTANDALONESTORAGE
SERVERSISANOPTIONFORCOMPANIESTHATARERUNNINGOUTOFSPACEBUTTHATHAVEPLENTYOF#05CAPACITYON
THEDATABASESERVERS4HISQUESTIONISNOTASEASYTOANSWER&ROMALICENSINGSTANDPOINT /RACLEWILLSELL
YOUADDITIONALSTORAGESERVERS BUTREMEMBERTHATONEOFTHEGOALSOF%XADATAWASTOCREATEAMORE
BALANCEDARCHITECTURE3OYOUSHOULDCAREFULLYCONSIDERWHETHERYOUNEEDMOREPROCESSINGCAPABILITYAT
THEDATABASETIERTOHANDLETHEADDITIONALTHROUGHPUTPROVIDEDBYTHEADDITIONALSTORAGE(OWEVER IFITS
SIMPLYLACKOFSPACETHATYOUAREDEALINGWITH ADDITIONALSTORAGESERVERSARECERTAINLYAVIABLEOPTION

Hardware Components
9OUVEPROBABLYSEENMANYPICTURESLIKETHEONEIN&IGURE )TSHOWSAN%XADATA$ATABASE-ACHINE
&ULL2ACK7EVEADDEDAFEWGRAPHICELEMENTSTOSHOWYOUWHERETHEVARIOUSPIECESRESIDEINTHE
CABINET)NTHISSECTIONWELLCOVERTHOSEPIECES


#(!04%2 7(!4)3%8!$!4!

Storage
Servers

Database
Servers

Infiniband Cisco Network


Leaf Switch, ILOM,
Switches and KVM

Database
Servers

Storage
Servers

Infiniband
Spine
Switch

Figure 1-2. An Exadata Full Rack

!SYOUCANSEE MOSTOFTHENETWORKINGCOMPONENTS INCLUDINGAN%THERNETSWITCHANDTWOREDUNDANT


)NFINI"ANDSWITCHES ARELOCATEDINTHEMIDDLEOFTHERACK4HISMAKESSENSEASITMAKESTHECABLINGA
LITTLESIMPLER4HEREISALSOA3UN)NTEGRATED,IGHTS/UT-ANAGER),/- MODULEAND+6-INTHECENTER
SECTION4HESURROUNDINGEIGHTSLOTSARERESERVEDFORDATABASESERVERS ANDTHERESTOFTHERACKISUSEDFOR
STORAGESERVERS WITHONEEXCEPTION4HEVERYBOTTOMSLOTISUSEDFORANADDITIONAL)NFINI"ANDhSPINEv
SWITCHTHATCANBEUSEDTOCONNECTADDITIONALRACKSIFSODESIRED)TISLOCATEDINTHEBOTTOMOFTHERACK
BASEDONTHEEXPECTATIONTHATYOUR%XADATAWILLBEINADATACENTERWITHARAISEDFLOOR ALLOWINGCABLING
TOBERUNFROMTHEBOTTOMOFTHERACK

/PERATING3YSTEMS
4HECURRENTGENERATION8HARDWARECONFIGURATIONSUSE)NTEL BASED3UNSERVERS!SOFTHISWRITINGALLTHE
SERVERSCOMEPREINSTALLEDWITH/RACLE,INUX/RACLEHASANNOUNCEDTHATTHEYINTENDTOSUPPORTTWO
VERSIONSOFTHE,INUXKERNELˆTHESTANDARD2EDHAT COMPATIBLEVERSIONANDANENHANCEDVERSIONCALLED


#(!04%2 7(!4)3%8!$!4!

THE5NBREAKABLE%NTERPRISE+ERNEL5%+ 4HISOPTIMIZEDVERSIONHASSEVERALENHANCEMENTSTHATARE
SPECIFICALLYAPPLICABLETO%XADATA!MONGTHESEARENETWORK RELATEDIMPROVEMENTSTO)NFINI"ANDUSING
THE2$3PROTOCOL/NEOFTHEREASONSFORRELEASINGTHE5%+MAYBETOSPEEDUP/RACLESABILITYTOROLLOUT
CHANGESTO,INUXBYAVOIDINGTHELENGTHYPROCESSNECESSARYTOGETCHANGESINTOTHESTANDARD/PEN
3OURCERELEASES/RACLEHASBEENASTRONGPARTNERINTHEDEVELOPMENTOF,INUXANDHASMADESEVERAL
MAJORCONTRIBUTIONSTOTHECODEBASE4HESTATEDDIRECTIONISTOSUBMITALLTHEENHANCEMENTSINCLUDEDIN
THE%5+VERSIONFORINCLUSIONINTHESTANDARDRELEASE
/RACLEHASALSOANNOUNCEDTHATTHE8DATABASESERVERSWILLHAVETHEOPTIONOFRUNNING3OLARIS
%XPRESS!NDSPEAKINGOF3OLARIS WEAREFREQUENTLYASKEDABOUTWHETHER/RACLEHASPLANSTORELEASEA
VERSIONOF%XADATATHATUSES30!2##05S!TTHETIMEOFTHISWRITING THEREHASBEENNOINDICATIONTHAT
THISWILLBEAFUTUREDIRECTION)TSEEMSMORELIKELYTHAT/RACLEWILLCONTINUETOPURSUETHE8 BASED
SOLUTION
3TORAGESERVERSFORBOTHTHE8 AND8 MODELSWILLCONTINUETORUNEXCLUSIVELYON/RACLE,INUX
/RACLEVIEWSTHESESERVERSASACLOSEDSYSTEMANDDOESNOTSUPPORTINSTALLINGANYADDITIONALSOFTWAREON
THEM

$ATABASE3ERVERS
4HECURRENTGENERATION8 DATABASESERVERSAREBASEDONTHE3UN&IRE8-SERVERS%ACHSERVER
HASTWO¾#ORE)NTEL8EON8PROCESSORS'(Z AND'"OFMEMORY4HEYALSOHAVEFOUR
INTERNAL'"+20-3!3DRIVES4HEYHAVESEVERALNETWORKCONNECTIONSINCLUDINGTWO'BAND
FOUR'B%THERNETPORTSINADDITIONTOTHETWO1$2)NFINI"AND'BS PORTS.OTETHATTHE'BPORTS
AREOPENANDTHATYOULLNEEDTOPROVIDETHECORRECTCONNECTORSTOATTACHTHEMTOYOUREXISTINGCOPPEROR
FIBERNETWORK4HESERVERSALSOHAVEADEDICATED),/-PORTANDDUALHOT SWAPPABLEPOWERSUPPLIES
4HE8 DATABASESERVERSAREBASEDONTHE3UN&IRE8SERVERS4HEYAREDESIGNEDTOHANDLE
SYSTEMSTHATREQUIREALARGEAMOUNTOFMEMORY4HESERVERSAREEQUIPPEDWITHEIGHTX#ORE)NTEL8EON
8PROCESSORS'(Z AND4"OFMEMORY4HISGIVESTHEFULLRACKSYSTEMATOTALOFCORESAND
TERABYTESOFMEMORY

3TORAGE3ERVERS
4HECURRENTGENERATIONOFSTORAGESERVERSARETHESAMEFORBOTHTHE8 ANDTHE8 MODELS%ACH
STORAGESERVERCONSISTSOFA3UN&IRE8-ANDCONTAINSDISKS$EPENDINGONWHETHERYOUHAVE
THEHIGH CAPACITYVERSIONORTHEHIGH PERFORMANCEVERSION THEDISKSWILLEITHERBE4"OR'"3!3
DRIVES%ACHSTORAGESERVERCOMESWITH'"OFMEMORYANDTWOX#ORE)NTEL8EON8PROCESSORS
RUNNINGAT'(Z4HESEARETHESAME#05SASONTHE8 DATABASESERVERS"ECAUSETHESE#05SARE
INTHE7ESTMEREFAMILY THEYHAVEBUILTIN!%3ENCRYPTIONSUPPORT WHICHESSENTIALLYPROVIDESA
HARDWAREASSISTTOENCRYPTIONANDDECRYPTION%ACHSTORAGESERVERALSOCONTAINSFOUR'"3UN&LASH
!CCELERATOR&0#)ECARDS4HISPROVIDESATOTALOF'"OFFLASHBASEDSTORAGEONEACHSTORAGECELL
4HESTORAGESERVERSCOMEPRE INSTALLEDWITH/RACLE,INUX

)NFINI"AND
/NEOFTHEMOREIMPORTANTHARDWARECOMPONENTSOF%XADATAISTHE)NFINI"ANDNETWORK)TISUSEDFOR
TRANSFERRINGDATABETWEENTHEDATABASETIERANDTHESTORAGETIER)TISALSOUSEDFORINTERCONNECTTRAFFIC
BETWEENTHEDATABASESERVERS IFTHEYARECONFIGUREDINA2!#CLUSTER)NADDITION THE)NFINI"AND
NETWORKMAYBEUSEDTOCONNECTTOEXTERNALSYSTEMSFORSUCHUSESASBACKUPS%XADATAPROVIDES
REDUNDANT PORT1$2)NFINI"ANDSWITCHESFORTHESEPURPOSES4HESWITCHESPROVIDE'B3ECOF
THROUGHPUT9OUWILLOCCASIONALLYSEETHESESWITCHESREFERREDTOAShLEAFvSWITCHES)NADDITION EACH
DATABASESERVERANDEACHSTORAGESERVERAREEQUIPPEDWITH$UAL 0ORT1$2)NFINI"AND(OST#HANNEL


#(!04%2 7(!4)3%8!$!4!

!DAPTERS!LLBUTTHESMALLESTQUARTERRACK %XADATACONFIGURATIONSALSOCONTAINATHIRD)NFINI"AND
SWITCH INTENDEDFORCHAININGMULTIPLE%XADATARACKSTOGETHER4HISSWITCHISGENERALLYREFERREDTOASA
hSPINEvSWITCH

&LASH#ACHE
!SMENTIONEDEARLIER EACHSTORAGESERVERCOMESEQUIPPEDWITH'"OFFLASH BASEDSTORAGE4HIS
STORAGEISGENERALLYCONFIGUREDTOBEACACHE/RACLEREFERSTOITAS%XADATA3MART&LASH#ACHE%3&# 
4HEPRIMARYPURPOSEOF%3&#ISTOMINIMIZETHESERVICETIMEFORSINGLEBLOCKREADS4HISFEATUREPROVIDES
ASUBSTANTIALAMOUNTOFDISKCACHE ABOUT4"ONAHALFRACKCONFIGURATION

$ISKS
/RACLEPROVIDESTWOOPTIONSFORDISKS!N%XADATA$ATABASE-ACHINEMAYBECONFIGUREDWITHEITHER
HIGH CAPACITYDRIVESORHIGH PERFORMANCEDRIVES!SPREVIOUSLYMENTIONED THEHIGH CAPACITYOPTION
INCLUDES4" 20-DRIVES WHILETHEHIGH PERFORMANCEOPTIONINCLUDES'" 20-3!3
DRIVES/RACLEDOESNOTALLOWAMIXTUREOFTHETWODRIVETYPES7ITHTHELARGEAMOUNTOFFLASHCACHE
AVAILABLEONTHESTORAGECELLS ITSEEMSTHATTHEHIGH CAPACITYOPTIONWOULDBEADEQUATEFORMOSTREAD
HEAVYWORKLOADS4HEFLASHCACHEDOESAVERYGOODJOBOFREDUCINGTHESINGLE BLOCK READLATENCYINTHE
MIXED WORKLOADSYSTEMSWEVEOBSERVEDTODATE

"ITSAND0IECES
4HEPACKAGEPRICEINCLUDESA5RACKWITHREDUNDANTPOWERDISTRIBUTIONUNITS!LSOINCLUDEDINTHE
PRICEISAN%THERNETSWITCH4HESPECSHEETSDONTSPECIFYTHEMODELFORTHE%THERNETSWITCH BUTASOFTHIS
WRITINGTHEYARESHIPPINGASWITCHMANUFACTUREDBY#ISCO4ODATE THISISTHEONEPIECEOFTHEPACKAGE
THAT/RACLEHASAGREEDTOALLOWCUSTOMERSTOREPLACE)FYOUHAVEANOTHERSWITCHTHATYOULIKEBETTER YOU
CANREMOVETHEINCLUDEDSWITCHANDREPLACEITATYOUROWNCOST 4HE8 INCLUDESA+6-UNITASWELL
4HEPACKAGEPRICEALSOINCLUDESASPARESKITTHATINCLUDESANEXTRAFLASHCARD ANEXTRADISKDRIVE AND
SOMEEXTRA)NFINI"ANDCABLESTWOEXTRAFLASHCARDSANDTWOEXTRADISKDRIVESONFULLRACKS 4HEPACKAGE
PRICEDOESNOTINCLUDE3&0 CONNECTORSORCABLESFORTHE'"%THERNETPORTS4HESEARENOTSTANDARD
ANDWILLVARYBASEDONTHEEQUIPMENTUSEDINYOURNETWORK4HEPORTSAREINTENDEDFOREXTERNAL
CONNECTIONSOFTHEDATABASESERVERSTOTHECUSTOMERSNETWORK

Software Components
4HESOFTWARECOMPONENTSTHATMAKEUP%XADATAARESPLITBETWEENTHEDATABASETIERANDTHESTORAGETIER
3TANDARD/RACLEDATABASESOFTWARERUNSONTHEDATABASESERVERS WHILE/RACLESRELATIVELYNEWDISK
MANAGEMENTSOFTWARERUNSONTHESTORAGESERVERS4HECOMPONENTSONBOTHTIERSUSEAPROTOCOLCALLED
I$"TOTALKTOEACHOTHER4HENEXTTWOSECTIONSPROVIDEABRIEFINTRODUCTIONTOTHESOFTWARESTACKTHAT
RESIDESONBOTHTIERS

$ATABASE3ERVER3OFTWARE
!SPREVIOUSLYDISCUSSED THEDATABASESERVERSRUN/RACLE,INUX/FCOURSETHEREISTHEOPTIONTORUN
3OLARIS%XPRESS BUTASOFTHISWRITINGWEHAVENOTSEENONERUNNING3OLARIS


#(!04%2 7(!4)3%8!$!4!

4HEDATABASESERVERSALSORUNSTANDARD/RACLEG2ELEASESOFTWARE4HEREISNOSPECIALVERSIONOF
THEDATABASECODETHATISDIFFERENTFROMTHECODETHATISRUNONANYOTHERPLATFORM4HISISACTUALLYA
UNIQUEANDSIGNIFICANTFEATUREOF%XADATA COMPAREDTOCOMPETINGDATAWAREHOUSEAPPLIANCEPRODUCTS
)NESSENCE ITMEANSTHATANYAPPLICATIONTHATCANRUNON/RACLEG2CANRUNON%XADATAWITHOUT
REQUIRINGANYCHANGESTOTHEAPPLICATION7HILETHEREISCODETHATISSPECIFICTOTHE%XADATAPLATFORM I$"
FOREXAMPLE /RACLECHOSETOMAKEITAPARTOFTHESTANDARDDISTRIBUTION4HESOFTWAREISAWAREOF
WHETHERITISACCESSING%XADATASTORAGE ANDTHIShAWARENESSvALLOWSITTOMAKEUSEOFTHE%XADATA
SPECIFICOPTIMIZATIONSWHENACCESSING%XADATASTORAGE
!3-/RACLE!UTOMATIC3TORAGE-ANAGEMENT ISAKEYCOMPONENTOFTHESOFTWARESTACKONTHE
DATABASESERVERS)TPROVIDESFILESYSTEMANDVOLUMEMANAGEMENTCAPABILITYFOR%XADATASTORAGE)TIS
REQUIREDBECAUSETHESTORAGEDEVICESARENOTVISIBLETOTHEDATABASESERVERS4HEREISNODIRECT
MECHANISMFORPROCESSESONTHEDATABASESERVERSTOOPENORREADAFILEON%XADATASTORAGECELLS!3-
ALSOPROVIDESREDUNDANCYTOTHESTORAGEBYMIRRORINGDATABLOCKS USINGEITHERNORMALREDUNDANCYTWO
COPIES ORHIGHREDUNDANCYTHREECOPIES 4HISISANIMPORTANTFEATUREBECAUSETHEDISKSAREPHYSICALLY
LOCATEDONMULTIPLESTORAGESERVERS4HE!3-REDUNDANCYALLOWSMIRRORINGACROSSTHESTORAGECELLS
WHICHALLOWSFORTHECOMPLETELOSSOFASTORAGESERVERWITHOUTANINTERRUPTIONTOTHEDATABASESRUNNING
ONTHEPLATFORM4HEREISNOFORMOFHARDWAREORSOFTWAREBASED2!)$THATPROTECTSTHEDATAON%XADATA
STORAGESERVERS4HEMIRRORINGPROTECTIONISPROVIDEDEXCLUSIVELYBY!3-
7HILE2!#ISGENERALLYINSTALLEDON%XADATADATABASESERVERS ITISNOTACTUALLYREQUIRED2!#DOES
PROVIDEMANYBENEFITSINTERMSOFHIGHAVAILABILITYANDSCALABILITYTHOUGH&ORSYSTEMSTHATREQUIREMORE
#05ORMEMORYRESOURCESTHANCANBESUPPLIEDBYASINGLESERVER 2!#ISTHEPATHTOTHOSEADDITIONAL
RESOURCES
4HEDATABASESERVERSANDTHESTORAGESERVERSCOMMUNICATEUSINGTHE)NTELLIGENT$ATABASEPROTOCOL
I$" I$"IMPLEMENTSWHAT/RACLEREFERSTOASAfunction shippingARCHITECTURE4HISTERMISUSEDTO
DESCRIBEHOWI$"SHIPSINFORMATIONABOUTTHE31,STATEMENTBEINGEXECUTEDTOTHESTORAGECELLSAND
THENRETURNSPROCESSEDDATAPREFILTERED FOREXAMPLE INSTEADOFDATABLOCKS DIRECTLYTOTHEREQUESTING
PROCESSES)NTHISMODE I$"CANLIMITTHEDATARETURNEDTOTHEDATABASESERVERTOONLYTHOSEROWSAND
COLUMNSTHATSATISFYTHEQUERY4HEFUNCTIONSHIPPINGMODEISONLYAVAILABLEWHENFULLSCANSARE
PERFORMEDI$"CANALSOSENDANDRETRIEVEFULLBLOCKSWHENOFFLOADINGISNOTPOSSIBLEORNOTDESIRABLE 
)NTHISMODE I$"ISUSEDLIKEANORMAL)/PROTOCOLFORFETCHINGENTIRE/RACLEBLOCKSANDRETURNINGTHEM
TOTHE/RACLEBUFFERCACHEONTHEDATABASESERVERS&ORCOMPLETENESSWESHOULDMENTIONTHATITISREALLY
NOTASIMPLEONEWAYORTHEOTHERSCENARIO4HEREARECASESWHEREWECANGETACOMBINATIONOFTHESETWO
BEHAVIORS7ELLDISCUSSTHATINMOREDETAILIN#HAPTER
I$"USESTHE2ELIABLE$ATAGRAM3OCKETS2$3 PROTOCOLANDOFCOURSEUSESTHE)NFINI"ANDFABRIC
BETWEENTHEDATABASESERVERSANDSTORAGECELLS2$3ISALOW LATENCY LOW OVERHEADPROTOCOLTHAT
PROVIDESASIGNIFICANTREDUCTIONIN#05USAGECOMPAREDTOPROTOCOLSSUCHAS5$02$3HASBEEN
AROUNDFORSOMETIMEANDPREDATES%XADATABYSEVERALYEARS4HEPROTOCOLIMPLEMENTSADIRECTMEMORY
ACCESSMODELFORINTERPROCESSCOMMUNICATION WHICHALLOWSITTOAVOIDTHELATENCYAND#05OVERHEAD
ASSOCIATEDWITHTRADITIONAL4#0TRAFFIC


#(!04%2 7(!4)3%8!$!4!

 +EVIN3AYS2$3HASINDEEDBEENAROUNDFORQUITESOMETIME ALTHOUGHNOTWITHTHE%XADATAUSECASEINMIND
4HEHISTORYOF2$3GOESBACKTOTHEPARTNERINGBETWEEN3ILVER3TORMACQUIREDBY1LOGIC#ORPORATION AND/RACLETO
ADDRESSTHEREQUIREMENTSFORLOWLATENCYANDHIGHBANDWIDTHPLACEDUPONTHE2EAL!PPLICATION#LUSTERSNODE
INTERCONNECTVIAlibskgxp FOR$,-LOCKTRAFFICAND TOALESSERDEGREE FOR0ARALLEL1UERYDATASHIPPING4HELATTER
MODELWASFIRSTPROVENBYA4"SCALE40# (CONDUCTEDWITH/RACLE$ATABASEGONTHENOWDEFUNCT
0!.4!3YSTEMSPLATFORM,ATER/RACLEALIGNEDITSELFMORECLOSELYWITH-ELLANOX

4HISHISTORYLESSONTOUCHESONANIMPORTANTPOINTI$"ISBASEDONlibskgxp WHICHENJOYEDMANYYEARSOF
HARDENINGINITSROLEOFINTERCONNECTLIBRARYDATINGBACKTOTHEFIRSTPHASEOFTHE#ACHE&USIONFEATUREIN/RACLEI
4HEABILITYTOLEVERAGEATRIEDANDTRUETECHNOLOGYLIKElibskgxpCAMEINHANDYDURINGTHEMOVETOTAKE3!'%TO
MARKET

)TISIMPORTANTTOUNDERSTANDTHATNOSTORAGEDEVICESAREDIRECTLYPRESENTEDTOTHEOPERATINGSYSTEMS
ONTHEDATABASESERVERS4HEREFORE THEREARENOOPERATING SYSTEMCALLSTOOPENFILES READBLOCKSFROM
THEM ORTHEOTHERUSUALTASKS4HISALSOMEANSTHATSTANDARDOPERATING SYSTEMUTILITIESLIKEiostatWILL
NOTBEUSEFULINMONITORINGYOURDATABASESERVERS BECAUSETHEPROCESSESRUNNINGTHEREWILLNOTBE
ISSUING)/CALLSTOTHEDATABASEFILES(ERESSOMEOUTPUTTHATILLUSTRATESTHISFACT
KSO@SANDBOX1> @whoami

USERNAME SID SERIAL# PREV_HASH_VALUE SCHEMANAME OS_PID


--------------- ---------- ---------- --------------- ---------- -------
KSO 689 771 2334772408 KSO 23922

KSO@SANDBOX1> select /* avgskew3.sql */ avg(pk_col) from kso.skew3 a where col1 > 0;

...

> strace -cp 23922


Process 23922 attached - interrupt to quit
Process 23922 detached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
49.75 0.004690 0 10902 5451 setsockopt
29.27 0.002759 0 6365 poll
11.30 0.001065 0 5487 sendmsg
9.60 0.000905 0 15328 4297 recvmsg
0.08 0.000008 1 16 fcntl
0.00 0.000000 0 59 read
0.00 0.000000 0 3 write
0.00 0.000000 0 32 12 open
0.00 0.000000 0 20 close


#(!04%2 7(!4)3%8!$!4!

0.00 0.000000 0 4 stat


0.00 0.000000 0 4 fstat
0.00 0.000000 0 52 lseek
0.00 0.000000 0 33 mmap
0.00 0.000000 0 7 munmap
0.00 0.000000 0 1 semctl
0.00 0.000000 0 65 getrusage
0.00 0.000000 0 32 times
0.00 0.000000 0 1 semtimedop
------ ----------- ----------- --------- --------- ----------------
100.00 0.009427 38411 9760 total
)NTHISLISTINGWEHAVERUNstraceONAUSERSFOREGROUNDPROCESSSOMETIMESCALLEDASHADOW
PROCESS 4HISISTHEPROCESSTHATSRESPONSIBLEFORRETRIEVINGDATAONBEHALFOFAUSER!SYOUCANSEE THE
VASTMAJORITYOFSYSTEMCALLSCAPTUREDBYstraceARENETWORK RELATEDsetsockopt poll sendmsg AND
recvmsg "YCONTRAST ONANON %XADATAPLATFORMWEMOSTLYSEEDISK)/ RELATEDEVENTS PRIMARILYSOME
FORMOFTHEREADCALL(ERESSOMEOUTPUTFROMANON %XADATAPLATFORMFORCOMPARISON
KSO@LAB112> @whoami

USERNAME SID SERIAL# PREV_HASH_VALUE SCHEMANAME OS_PID


--------------- ---------- ---------- --------------- ---------- -------
KSO 249 32347 4128301241 KSO 22493

KSO@LAB112> @avgskew

AVG(PK_COL)
-----------
16093749.8

...

[root@homer ~]# strace -cp 22493


Process 22493 attached - interrupt to quit
Process 22493 detached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
88.86 4.909365 3860 1272 pread64
10.84 0.599031 65 9171 gettimeofday
0.16 0.008766 64 136 getrusage
0.04 0.002064 56 37 times
0.02 0.001378 459 3 write
0.02 0.001194 597 2 statfs
0.02 0.001150 575 2 fstatfs
0.02 0.001051 350 3 read
0.01 0.000385 96 4 mmap2
0.00 0.000210 105 2 io_destroy
0.00 0.000154 77 2 io_setup
0.00 0.000080 40 2 open
0.00 0.000021 11 2 fcntl64
------ ----------- ----------- --------- --------- ----------------
100.00 5.524849 10638 total


#(!04%2 7(!4)3%8!$!4!

.OTICETHATTHEMAINSYSTEMCALLCAPTUREDONTHENON %XADATAPLATFORMIS)/ RELATEDpread64 4HE


POINTOFTHEPREVIOUSTWOLISTINGSISTOSHOWTHATTHEREISAVERYDIFFERENTMECHANISMINPLAYINTHEWAY
DATASTOREDONDISKSISACCESSEDWITH%XADATA

3TORAGE3ERVER3OFTWARE
#ELL3ERVICEScellsrv ISTHEPRIMARYSOFTWARETHATRUNSONTHESTORAGECELLS)TISAMULTI THREADED
PROGRAMTHATSERVICES)/REQUESTSFROMADATABASESERVER4HOSEREQUESTSCANBEHANDLEDBYRETURNING
PROCESSEDDATAORBYRETURNINGCOMPLETEBLOCKSDEPENDINGINTHEREQUESTcellsrvALSOIMPLEMENTSTHE
2ESOURCE-ANAGERDEFINED)/DISTRIBUTIONRULES ENSURINGTHAT)/ISDISTRIBUTEDTOTHEVARIOUS
DATABASESANDCONSUMERGROUPSAPPROPRIATELY
4HEREARETWOOTHERPROGRAMSTHATRUNCONTINUOUSLYON%XADATASTORAGECELLS-ANAGEMENT3ERVER
-3 ISA*AVAPROGRAMTHATPROVIDESTHEINTERFACEBETWEENcellsrvANDTHE#ELL#OMMAND,INE
)NTERFACEcellcli UTILITY-3ALSOPROVIDESTHEINTERFACEBETWEENcellsrvANDTHE'RID#ONTROL%XADATA
PLUG INWHICHISIMPLEMENTEDASASETOFcellcliCOMMANDSTHATARERUNVIARsh 4HESECONDUTILITYIS
2ESTART3ERVER23 23ISACTUALLYASETOFPROCESSESTHATISRESPONSIBLEFORMONITORINGTHEOTHERPROCESSES
ANDRESTARTINGTHEMIFNECESSARY/37ATCHERISALSOINSTALLEDONTHESTORAGECELLSFORCOLLECTINGHISTORICAL
OPERATINGSYSTEMSTATISTICSUSINGSTANDARD5NIXUTILITIESSUCHASvmstatANDnetstat.OTETHAT/RACLE
DOESNOTAUTHORIZETHEINSTALLATIONOFANYADDITIONALSOFTWAREONTHESTORAGESERVERS
/NEOFTHEFIRSTTHINGSYOUARELIKELYTOWANTTODOWHENYOUFIRSTENCOUNTER%XADATAISTOLOGONTO
THESTORAGECELLSANDSEEWHATSACTUALLYRUNNING5NFORTUNATELY THESTORAGESERVERSAREGENERALLYOFF
LIMITSTOEVERYONEEXCEPTTHEDESIGNATEDSYSTEMADMINISTERSOR$"!S(ERESAQUICKLISTINGSHOWINGTHE
OUTPUTGENERATEDBYApsCOMMANDONANACTIVESTORAGESERVER
> ps -eo ruser,pid,ppid,cmd

RUSER PID PPID CMD


root 12447 1 /opt/oracle/.../cellsrv/bin/cellrssrm -ms 1 -cellsrv 1
root 12453 12447 /opt/oracle/.../cellsrv/bin/cellrsbmt -ms 1 -cellsrv 1
root 12454 12447 /opt/oracle/.../cellsrv/bin/cellrsmmt -ms 1 -cellsrv 1
root 12455 12447 /opt/oracle/.../cellsrv/bin/cellrsomt -ms 1 -cellsrv 1
root 12456 12453 /opt/oracle/.../bin/cellrsbkm
-rs_conf /opt/oracle/.../cellsrv/deploy/config/cellinit.ora
-ms_conf /opt/oracle/cell
root 12457 12454 /usr/java/jdk1.5.0_15//bin/java -Xms256m -Xmx512m
-Djava.library.path=/opt/oracle/.../cellsrv/lib
-Ddisable.checkForUpdate=true -jar /opt/oracle/cell11.2
root 12460 12456 /opt/oracle/.../cellsrv/bin/cellrssmt
-rs_conf /opt/oracle/.../cellsrv/deploy/config/cellinit.ora
-ms_conf /opt/oracle/cell
root 12461 12455 /opt/oracle/.../cellsrv/bin/cellsrv 100 5000 9 5042
root 12772 22479 /usr/bin/mpstat 5 720
root 12773 22479 bzip2 --stdout
root 17553 1 /bin/ksh ./OSWatcher.sh 15 168 bzip2
root 20135 22478 /usr/bin/top -b -c -d 5 -n 720
root 20136 22478 bzip2 --stdout
root 22445 17553 /bin/ksh ./OSWatcherFM.sh 168
root 22463 17553 /bin/ksh ./oswsub.sh HighFreq ./Exadata_vmstat.sh
root 22464 17553 /bin/ksh ./oswsub.sh HighFreq ./Exadata_mpstat.sh
root 22465 17553 /bin/ksh ./oswsub.sh HighFreq ./Exadata_netstat.sh
root 22466 17553 /bin/ksh ./oswsub.sh HighFreq ./Exadata_iostat.sh


#(!04%2 7(!4)3%8!$!4!

root 22467 17553 /bin/ksh ./oswsub.sh HighFreq ./Exadata_top.sh


root 22471 17553 /bin/bash /opt/oracle.cellos/ExadataDiagCollector.sh
root 22472 17553 /bin/ksh ./oswsub.sh HighFreq
/opt/oracle.oswatcher/osw/ExadataRdsInfo.sh
root 22476 22463 /bin/bash ./Exadata_vmstat.sh HighFreq
root 22477 22466 /bin/bash ./Exadata_iostat.sh HighFreq
root 22478 22467 /bin/bash ./Exadata_top.sh HighFreq
root 22479 22464 /bin/bash ./Exadata_mpstat.sh HighFreq
root 22480 22465 /bin/bash ./Exadata_netstat.sh HighFreq
root 22496 22472 /bin/bash /opt/oracle.oswatcher/osw/ExadataRdsInfo.sh HighFreq
3OASYOUCANSEE THEREAREANUMBEROFPROCESSESTHATLOOKLIKEcellrsvXXX4HESEARETHEPROCESSES
THATMAKEUPTHE2ESTART3ERVER!LSONOTICETHEFIRSTBOLDEDPROCESSTHISISTHE*AVAPROGRAMTHATWE
REFERTOAS-ANAGEMENT3ERVER4HESECONDBOLDEDPROCESSIScellsrvITSELF&INALLY YOULLSEESEVERAL
PROCESSESASSOCIATEDWITH/37ATCHER.OTEALSOTHATALLTHEPROCESSESARESTARTEDBYROOT7HILETHEREARE
ACOUPLEOFOTHERSEMI PRIVILEGEDACCOUNTSONTHESTORAGESERVERS ITISCLEARLYNOTASYSTEMTHATISSETUP
FORUSERSTOLOGONTO
!NOTHERINTERESTINGWAYTOLOOKATRELATEDPROCESSESISTOUSETHEps –HCOMMAND WHICHPROVIDESAN
INDENTEDLISTOFPROCESSESSHOWINGHOWTHEYARERELATEDTOEACHOTHER9OUCOULDWORKTHISOUTFOR
YOURSELFBYBUILDINGATREEBASEDONTHERELATIONSHIPBETWEENTHEPROCESS)$0)$ ANDPARENTPROCESS)$
00)$ INTHEPREVIOUSLISTING BUTTHE–HOPTIONMAKESTHATALOTEASIER(ERESANEDITEDSNIPPETOF
OUTPUTFROMAps –HCOMMAND
cellrssrm <= main Restart Server
cellrsbmt
cellrsbkm
cellrssmt
cellrsmmt
java - .../oc4j/ms/j2ee/home/oc4j.jar <= Management Server
cellrsomt
cellsrv
)TSALSOINTERESTINGTOSEEWHATRESOURCESAREBEINGCONSUMEDONTHESTORAGESERVERS(ERESA
SNIPPETOFOUTPUTFROMtop
top - 18:20:27 up 2 days, 2:09, 1 user, load average: 0.07, 0.15, 0.16
Tasks: 298 total, 1 running, 297 sleeping, 0 stopped, 0 zombie
Cpu(s): 6.1%us, 0.6%sy, 0.0%ni, 93.30%id, 0.3%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 24531712k total, 14250280k used, 10281432k free, 188720k buffers
Swap: 2096376k total, 0k used, 2096376k free, 497792k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND


12461 root 18 0 17.0g 4.5g 11m S 105.9 19.2 55:20.45 cellsrv
1 root 18 0 10348 748 620 S 0.0 0.0 0:02.79 init
2 root RT -5 0 0 0 S 0.0 0.0 0:00.14 migration/0
3 root 34 19 0 0 0 S 0.0 0.0 0:01.45 ksoftirqd/0
4 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
4HEOUTPUTFROMtopSHOWSTHATcellsrvISUSINGMORETHANONEFULL#05CORE4HISISCOMMONON
BUSYSYSTEMSANDISDUETOTHEMULTI THREADEDNATUREOFTHEcellsrvPROCESS


#(!04%2 7(!4)3%8!$!4!

Software Architecture
)NTHISSECTIONWELLBRIEFLYDISCUSSTHEKEYSOFTWARECOMPONENTSANDHOWTHEYARECONNECTEDINTHE
%XADATAARCHITECTURE4HEREARECOMPONENTSTHATRUNONBOTHTHEDATABASEANDTHESTORAGETIERS&IGURE
 DEPICTSTHEOVERALLARCHITECTUREOFTHE%XADATAPLATFORM

Oracle Database Server

CKPT RECO

PMON SMON

SGA

Shared Pool
Database Buffer Cache

Other

DBWR LGWR
Shadow
Processes

ASM

IDR / RDS over infiniband

Exadata Storage Servers

MS
Management
Server
Storage Server
CEL SRV
Shared Memory
RS
Restart
Server

OSWatcher

Cellinit.ora

Non-Exadata Disks
alert.log
Exadata Cell Disks


Figure 1-3. Exadata architecture diagram


#(!04%2 7(!4)3%8!$!4!

4HETOPHALFOFTHEDIAGRAMSHOWSTHEKEYCOMPONENTSONONEOFTHEDATABASESERVERS WHILETHE
BOTTOMHALFSHOWSTHEKEYCOMPONENTSONONEOFTHESTORAGESERVERS4HETOPHALFOFTHEDIAGRAMSHOULD
LOOKPRETTYFAMILIAR ASITISSTANDARD/RACLEGARCHITECTURE)TSHOWSTHE3YSTEM'LOBAL!REA3'!
WHICHCONTAINSTHEBUFFERCACHEANDTHESHAREDPOOL)TALSOSHOWSSEVERALOFTHEKEYPROCESSES SUCHAS
,OG7RITER,'72 AND$ATABASE7RITER$"72 4HEREAREMANYMOREPROCESSES OFCOURSE ANDMUCH
MOREDETAILEDVIEWSOFTHESHAREDMEMORYTHATCOULDBEPROVIDED BUTTHISSHOULDGIVEYOUABASIC
PICTUREOFHOWTHINGSLOOKONTHEDATABASESERVER
4HEBOTTOMHALFOFTHEDIAGRAMSHOWSTHECOMPONENTSONONEOFTHESTORAGESERVERS4HE
ARCHITECTUREONTHESTORAGESERVERSISPRETTYSIMPLE4HEREISREALLYONLYONEPROCESScellsrv THAT
HANDLESALLTHECOMMUNICATIONTOANDFROMTHEDATABASESERVERS4HEREAREALSOAHANDFULOFANCILLARY
PROCESSESFORMANAGINGANDMONITORINGTHEENVIRONMENT
/NEOFTHETHINGSYOUMAYNOTICEINTHEARCHITECTUREDIAGRAMISTHATcellsrvUSESANinit.oraFILE
ANDHASANALERTLOG)NFACT THESTORAGESOFTWAREBEARSASTRIKINGRESEMBLANCETOAN/RACLEDATABASE
4HISSHOULDNTBETOOSURPRISING4HEcellinit.oraFILECONTAINSASETOFPARAMETERSTHATAREEVALUATED
WHENcellsrvISSTARTED4HEALERTLOGISUSEDTOWRITEARECORDOFNOTABLEEVENTS MUCHLIKEANALERTLOGON
AN/RACLEDATABASE.OTEALSOTHAT!UTOMATIC$IAGNOSTIC2EPOSITORY!$2 ISINCLUDEDASPARTOFTHE
STORAGESOFTWAREFORCAPTURINGANDREPORTINGDIAGNOSTICINFORMATION
!LSONOTICETHATTHEREISASTANDALONEPROCESSTHATISNOTATTACHEDTOANYDATABASEINSTANCE
DISKMON WHICHPERFORMSSEVERALTASKSRELATEDTO%XADATA3TORAGE!LTHOUGHITISCALLEDDISKMON ITIS
REALLYANETWORK ANDCELL MONITORINGPROCESSTHATCHECKSTOVERIFYTHATTHECELLSAREALIVEDISKMONISALSO
RESPONSIBLETOPROPAGATING$ATABASE2ESOURCE-ANAGER$"2- PLANSTOTHESTORAGESERVERSDISKMON
ALSOHASASINGLESLAVEPROCESSPERINSTANCE WHICHISRESPONSIBLEFORCOMMUNICATINGBETWEEN!3-AND
THEDATABASEITISRESPONSIBLEFOR
4HECONNECTIONBETWEENTHEDATABASESERVERANDTHESTORAGESERVERISPROVIDEDBYTHE)NFINI"AND
FABRIC!LLCOMMUNICATIONBETWEENTHETWOTIERSISCARRIEDBYTHISTRANSPORTMECHANISM4HISINCLUDES
WRITESVIATHE$"72PROCESSESAND,'72PROCESSANDREADSCARRIEDOUTBYTHEUSERFOREGROUNDOR
SHADOW PROCESSES
&IGURE PROVIDESANOTHERVIEWOFTHEARCHITECTURE WHICHFOCUSESONTHESOFTWARESTACKANDHOWIT
SPANSMULTIPLESERVERSINBOTHTHEDATABASEGRIDANDTHESTORAGEGRID


#(!04%2 7(!4)3%8!$!4!

Single Instance Database RAC Database

Database Server Database Server Database Server


Database Instance Database Instance Database Instance
DBRM DBRM DBRM
Single ASM
ASM ASM ASM
Cluster

LIBCELL LIBCELL LIBCELL

iDB over Infiniband

Storage Cell Storage Cell Storage Cell

CELLSRV CELLSRV CELLSRV

IORM IORM IORM

RS MS RS MS RS MS


Figure 1-4. Exadata software architecture

!SWEVEDISCUSSED !3-ISAKEYCOMPONENT.OTICETHATWEHAVEDRAWNITASANOBJECTTHATCUTS
ACROSSALLTHECOMMUNICATIONLINESBETWEENTHETWOTIERS4HISISMEANTTOINDICATETHAT!3-PROVIDES
THEMAPPINGBETWEENTHEFILESANDTHEOBJECTSTHATTHEDATABASEKNOWSABOUTONTHESTORAGELAYER!3-
DOESNOTACTUALLYSITBETWEENTHESTORAGEANDTHEDATABASE THOUGH ANDITISNOTALAYERINTHESTACKTHAT
THEPROCESSESMUSTTOUCHFOREACHhDISKACCESSv
&IGURE ALSOSHOWSTHERELATIONSHIPBETWEEN$ATABASE2ESOURCE-ANAGER$"2- RUNNINGON
THEINSTANCESONTHEDATABASESERVERSAND)/2ESOURCE-ANAGER)/2- WHICHISIMPLEMENTEDINSIDE
cellsrvRUNNINGONTHESTORAGESERVERS
4HEFINALMAJORCOMPONENTIN&IGURE ISLIBCELL WHICHISALIBRARYTHATISLINKEDWITHTHE/RACLE
KERNELLIBCELLHASTHECODETHATKNOWSHOWTOREQUESTDATAVIAI$"4HISPROVIDESAVERYNONINTRUSIVE
MECHANISMTOALLOWTHE/RACLEKERNELTOTALKTOTHESTORAGETIERVIANETWORK BASEDCALLSINSTEADOF
OPERATINGSYSTEMREADSANDWRITESI$"ISIMPLEMENTEDONTOPOFTHE2ELIABLE$ATAGRAM3OCKETS2$3
PROTOCOLPROVIDEDBYTHE/PEN&ABRICS%NTERPRISE$ISTRIBUTION4HISISALOW LATENCY LOW #05 OVERHEAD
PROTOCOLTHATPROVIDESINTERPROCESSCOMMUNICATIONS9OUMAYALSOSEETHISPROTOCOLREFERREDTOINSOME
OFTHE/RACLEMARKETINGMATERIALASTHE:ERO LOSS:ERO COPY:$0 )NFINI"ANDPROTOCOL&IGURE ISA
BASICSCHEMATICSHOWINGWHYTHE2$3PROTOCOLISMOREEFFICIENTTHANUSINGATRADITIONAL4#0BASED
PROTOCOLLIKE5$0


#(!04%2 7(!4)3%8!$!4!

5SER-ODE

Oracle / RDS Oracle / UDS

+ERNAL-ODE

RDS TCP

IP

IPoIB

(ARDWARE

Host Channel Adapter


Figure 1-5. RDS schematic

!SYOUCANSEEFROMTHEDIAGRAM USINGTHE2$3PROTOCOLTOBYPASSTHE4#0PROCESSINGCUTSOUTA
PORTIONOFTHEOVERHEADREQUIREDTOTRANSFERDATAACROSSTHENETWORK.OTETHATTHE2$3PROTOCOLISALSO
USEDFORINTERCONNECTTRAFFICBETWEEN2!#NODES

Summary
%XADATAISATIGHTLYINTEGRATEDCOMBINATIONOFHARDWAREANDSOFTWARE4HEREISNOTHINGMAGICALABOUT
THEHARDWARECOMPONENTSTHEMSELVES4HEMAJORITYOFTHEPERFORMANCEBENEFITSCOMEFROMTHEWAYTHE
COMPONENTSAREINTEGRATEDANDTHESOFTWARETHATISIMPLEMENTEDATTHESTORAGELAYER)NTHENEXTCHAPTER
WELLDIVEINTOTHEOFFLOADINGCONCEPT WHICHISWHATSETS%XADATAAPARTFROMALLOTHERPLATFORMSTHATRUN
/RACLEDATABASES


CHAPTER 2



Offloading / Smart Scan

/FFLOADINGISTHESECRETSAUCEOF%XADATA)TSWHATMAKES%XADATADIFFERENTFROMEVERYOTHERPLATFORM
THAT/RACLERUNSON/FFLOADINGREFERSTOTHECONCEPTOFMOVINGPROCESSINGFROMTHEDATABASESERVERSTO
THESTORAGELAYER)TISALSOTHEKEYPARADIGMSHIFTPROVIDEDBYTHE%XADATAPLATFORM"UTITSMORETHAN
JUSTMOVINGWORKINTERMSOF#05USAGE4HEPRIMARYBENEFITOF/FFLOADINGISTHEREDUCTIONINTHE
VOLUMEOFDATATHATMUSTBERETURNEDTOTHEDATABASESERVER4HISISONEOFTHEMAJORBOTTLENECKSOFMOST
LARGEDATABASES
4HETERMS/FFLOADINGAND3MART3CANAREUSEDSOMEWHATINTERCHANGEABLY/FFLOADINGISABETTER
DESCRIPTIONINOUROPINION ASITREFERSTOTHEFACTTHATPARTOFTHETRADITIONAL31,PROCESSINGDONEBYTHE
DATABASECANBEhOFFLOADEDvFROMTHEDATABASELAYERTOTHESTORAGELAYER)TISARATHERGENERICTERM
THOUGH ANDISUSEDTOREFERTOMANYOPTIMIZATIONSTHATARENOTEVENRELATEDTO31,PROCESSINGINCLUDING
IMPROVINGBACKUPANDRESTOREOPERATIONS
3MART3CAN ONTHEOTHERHAND ISAMOREFOCUSEDTERM INTHATITREFERSONLYTO%XADATAS
OPTIMIZATIONOF31,STATEMENTS4HESEOPTIMIZATIONSCOMEINTOPLAYFORSCANOPERATIONSTYPICALLY&ULL
4ABLE3CANS !MORESPECIFICDEFINITIONOFA3MART3CANWOULDBEANYSECTIONOFTHE/RACLEKERNELCODE
THATISCOVEREDBYTHE3MART3CANWAITEVENTS4HEREAREACTUALLYTWOWAITEVENTSTHATINCLUDETHETERM
h3MART3CANvINTHEIRNAMES #ELL3MART4ABLE3CANAND#ELL3MART)NDEX3CAN7ELLDISCUSSBOTHOF
THESEWAITEVENTSINDETAILABITLATER IN#HAPTER7HILEITSTRUETHATh3MART3CANvHASABITOFA
MARKETINGFLAVOR ITDOESHAVESPECIFICCONTEXTWHENREFERRINGTOTHECODECOVEREDBYTHESEWAITEVENTS
!TANYRATE WHILETHETERMSARESOMEWHATINTERCHANGEABLE KEEPINMINDTHAT/FFLOADINGCANREFERTO
MORETHANJUSTSPEEDINGUP31,STATEMENTEXECUTION
)NTHISCHAPTERWEWILLFOCUSON3MART3CANOPTIMIZATIONS7ELLCOVERTHEVARIOUSOPTIMIZATIONSTHAT
CANCOMEINTOPLAYWITH3MART3CANS THEMECHANICSOFHOWTHEYWORK ANDTHEREQUIREMENTSTHATMUST
BEMETFOR3MART3CANSTOOCCUR7ELLALSOCOVERSOMETECHNIQUESTHATCANBEUSEDTOHELPYOU
DETERMINEWHETHER3MART3CANSHAVEOCCURREDFORAGIVEN31,STATEMENT4HEOTHEROFFLOADING
OPTIMIZATIONSWILLONLYBEMENTIONEDBRIEFLYASTHEYARECOVEREDELSEWHEREINTHEBOOK

Why Offloading Is Important


7ECANTEMPHASIZEENOUGHHOWIMPORTANTTHISCONCEPTIS4HEIDEAOFMOVINGDATABASEPROCESSINGTO
THESTORAGETIERISAGIANTLEAPFORWARD4HECONCEPTHASBEENAROUNDFORSOMETIME)NFACT RUMORHASIT
THAT/RACLEAPPROACHEDATLEASTONEOFTHELARGE3!.MANUFACTURERSSEVERALYEARSAGOWITHTHEIDEA4HE
MANUFACTURERWASAPPARENTLYNOTINTERESTEDATTHETIMEAND/RACLEDECIDEDTOPURSUETHEIDEAONITS
OWN/RACLESUBSEQUENTLYPARTNEREDWITH(0TOBUILDTHEORIGINAL%XADATA6 WHICHINCORPORATEDTHE
/FFLOADINGCONCEPT&AST FORWARDACOUPLEOFYEARS ANDYOUHAVE/RACLESACQUISITIONOF3UN
-ICROSYSTEMS4HISPUTTHECOMPANYINAPOSITIONTOOFFERANINTEGRATEDSTACKOFHARDWAREANDSOFTWARE
ANDGIVESITCOMPLETECONTROLOVERWHICHFEATURESTOINCORPORATEINTOTHEPRODUCT


#(!04%2 /&&,/!$).'3-!243#!.

/FFLOADINGISIMPORTANTBECAUSEONEOFTHEMAJORBOTTLENECKSONLARGEDATABASESISTHETIMEITTAKES
TOTRANSFERTHELARGEVOLUMESOFDATANECESSARYTOSATISFY$7 TYPEQUERIESBETWEENTHEDISKSYSTEMSAND
THEDATABASESERVERSTHATIS BECAUSEOFBANDWIDTH 4HISISPARTLYAHARDWAREARCHITECTUREISSUE BUTTHE
BIGGERISSUEISTHESHEERVOLUMEOFDATATHATISMOVEDBYTRADITIONAL/RACLEDATABASES4HE/RACLE
DATABASEISVERYFASTANDVERYCLEVERABOUTHOWITPROCESSESDATA BUTFORQUERIESTHATACCESSALARGE
AMOUNTOFDATA GETTINGTHEDATATOTHEDATABASECANSTILLTAKEALONGTIME3OASANYGOODPERFORMANCE
ANALYSTWOULDDO /RACLEFOCUSEDONREDUCINGTHETIMESPENTONTHETHINGTHATACCOUNTEDFORTHE
MAJORITYOFTHEELAPSEDTIME$URINGTHEANALYSIS THETEAMREALIZEDTHATEVERYQUERYTHATREQUIREDDISK
ACCESSWASVERYINEFFICIENTINTERMSOFHOWMUCHDATAHADTOBERETURNEDTOANDPROCESSEDBYTHE
DATABASESERVERS/RACLEHASMADEALIVINGBYDEVELOPINGTHEBESTCACHE MANAGEMENTSOFTWARE
AVAILABLE BUTFORREALLYLARGEDATASETS ITISJUSTNOTPRACTICALTOKEEPEVERYTHINGINMEMORYONTHE
DATABASESERVERS

■+EVIN3AYS4HEAUTHORSMAKEAGOODPOINTBASEDONAhistoricalPERSPECTIVEOF/RACLEQUERYPROCESSING
(OWEVER )ROUTINELYFINDMYSELFREMINDINGPEOPLETHATMODERNCOMMODITYXSERVERSARENOLONGER
ARCHITECTURALLYCONSTRAINEDTOSMALLMEMORYCONFIGURATIONS&OREXAMPLE SERVERSBASEDON)NTEL8EON
PROCESSORSWITH1UICK0ATH)NTERCONNECTSUPPORTLARGENUMBERSOFMEMORYCHANNELSEACHWITHLARGENUMBEROF
$)--SLOTS#OMMODITY BASEDSERVERSWITHMULTIPLETERABYTESOFMAINMEMORYAREQUITECOMMON)NFACT THE8
%XADATAMODELSUPPORTSTWOTERABYTESOFMAINMEMORYINTHEDATABASEGRID ANDTHATCAPACITYWILLINCREASE
NATURALLYOVERTIME)EXPECTTHISBOOKTOREMAINRELEVANTLONGENOUGHFORFUTUREREADERSTOLOOKBACKONTHIS
COMMENTASARCANE SINCETHETRENDTOWARDEXTREMELYLARGEMAINMEMORYXSYSTEMSHASONLYJUSTBEGUN4HE
IMPORTANTTHINGTOREMEMBERABOUT%XADATAISTHATITISEVERYTHING/RACLEDATABASEOFFERSPLUS%XADATA3TORAGE
3ERVERS4HISPOINTISRELEVANTBECAUSECUSTOMERSCANCHOOSETOCOMBINEDEEPCOMPRESSIONFOREXAMPLE %XADATA
(YBRID#OLUMNAR#OMPRESSION WITHTHE)N -EMORY0ARALLEL1UERYFEATUREFORTHOSECASESWHERERULINGOUT
MAGNETICMEDIAENTIRELYISTHERIGHTSOLUTIONFORMEETINGSERVICELEVELS

)MAGINETHEFASTESTQUERYYOUCANTHINKOFASINGLECOLUMNFROMASINGLEROWFROMASINGLETABLE
WHEREYOUACTUALLYKNOWWHERETHEROWISSTOREDROWID /NATRADITIONAL/RACLEDATABASE ATLEASTONE
BLOCKOFDATAHASTOBEREADINTOMEMORYTYPICALLY+ TOGETTHEONECOLUMN,ETSASSUMEYOURTABLE
STORESANAVERAGEOFROWSPERBLOCK9OUVEJUSTTRANSFERREDEXTRAROWSTOTHEDATABASESERVERTHAT
ARESIMPLYOVERHEADFORTHISQUERY-ULTIPLYTHATBYABILLIONANDYOUSTARTTOGETANIDEAOFTHE
MAGNITUDEOFTHEPROBLEMINALARGEDATAWAREHOUSE%LIMINATINGTHETIMESPENTONTRANSFERRING
COMPLETELYUNNECESSARYDATABETWEENTHESTORAGEANDTHEDATABASETIERISTHEMAINPROBLEMTHAT
%XADATAWASDESIGNEDTOSOLVE
/FFLOADINGISTHEAPPROACHTHATWASUSEDTOSOLVETHEPROBLEMOFEXCESSIVETIMESPENTMOVING
IRRELEVANTDATABETWEENTHETIERS/FFLOADINGHASTHREEDESIGNGOALS ALTHOUGHTHEPRIMARYGOALFAR
OUTWEIGHSTHEOTHERSINIMPORTANCE
v 2EDUCETHEVOLUMEOFDATATRANSFERREDFROMDISKSYSTEMSTOTHEDATABASESERVERS
v 2EDUCE#05USAGEONDATABASESERVERS
v 2EDUCEDISKACCESSTIMESATTHESTORAGELAYER


#(!04%2 /&&,/!$).'3-!243#!.

2EDUCINGTHEVOLUMEWASTHEMAINFOCUSANDPRIMARYGOAL4HEMAJORITYOFTHEOPTIMIZATIONS
INTRODUCEDBY/FFLOADINGCONTRIBUTETOTHISGOAL2EDUCING#05LOADISIMPORTANTASWELL BUTISNOTTHE
PRIMARYBENEFITPROVIDEDBY%XADATAANDTHEREFORETAKESABACKSEATTOREDUCINGTHEVOLUMEOFDATA
TRANSFERRED!SYOULLSEE HOWEVER DECOMPRESSIONISANOTABLEEXCEPTIONTOTHATGENERALIZATION ASITIS
PERFORMEDONTHESTORAGESERVERS 3EVERALOPTIMIZATIONSTOREDUCEDISKACCESSTIMEWEREALSO
INTRODUCED ANDWHILESOMEOFTHERESULTSCANBEQUITESTUNNING WEDONTCONSIDERTHEMTOBETHE
BREAD AND BUTTEROPTIMIZATIONSOF%XADATA
%XADATAISANINTEGRATEDHARDWARESOFTWAREPRODUCTTHATDEPENDSONBOTHCOMPONENTSTOPROVIDE
SUBSTANTIALPERFORMANCEIMPROVEMENTOVERNON %XADATAPLATFORMS(OWEVER THEPERFORMANCEBENEFITS
OFTHESOFTWARECOMPONENTDWARFTHEBENEFITSPROVIDEDBYTHEHARDWARE(EREISANEXAMPLE
SYS@SANDBOX> alter session set cell_offload_processing=false;

Session altered.

Elapsed: 00:00:00.06
SYS@SANDBOX> select count(*) from kso.skew3 where col1 < 0;

COUNT(*)
----------
2

1 row selected.

Elapsed: 00:00:51.09
SYS@SANDBOX> alter session set cell_offload_processing=true;

Session altered.

Elapsed: 00:00:00.07
SYS@SANDBOX> select count(*) from kso.skew3 where col1 < 0;

COUNT(*)
----------
2

1 row selected.

Elapsed: 00:00:00.15
4HISEXAMPLESHOWSTHEPERFORMANCEOFASCANAGAINSTASINGLETABLEWITHMILLIONROWS7ERANIT
ONCEWITH/FFLOADINGDISABLED EFFECTIVELYUSINGALLTHEHARDWAREBENEFITSOF%XADATAANDNONEOFTHE
SOFTWAREBENEFITS9OULLNOTICETHATEVENON%XADATAHARDWARE THISQUERYTOOKALMOSTAMINUTE+EEPIN
MINDTHATTHISWASONLYSPREADACROSSTHREESTORAGESERVERSONOUR6QUARTERRACKANDDIDNOTUTILIZETHE
FLASHCACHEATALL7ETHENRE ENABLED/FFLOADING ANDTHEQUERYCOMPLETEDINSUBSTANTIALLYLESSTHANA
SECOND/BVIOUSLYTHEHARDWAREINPLAYWASTHESAMEINBOTHEXECUTIONS4HEPOINTISTHATITSTHE
SOFTWARESABILITYVIA/FFLOADINGTHATMADETHEDIFFERENCE


#(!04%2 /&&,/!$).'3-!243#!.

A GENERIC VERSION OF EXADATA?

4HETOPICOFBUILDINGAGENERICVERSIONOF%XADATACOMESUPFREQUENTLY4HEIDEAISTOBUILDAHARDWARE
PLATFORMTHATINSOMEWAYMIMICS%XADATA PRESUMABLYATALOWERCOSTTHANWHAT/RACLECHARGESFOR
%XADATA/FCOURSE THEFOCUSOFTHESEPROPOSALSISTOREPLICATETHEHARDWAREPARTOF%XADATA BECAUSETHE
SOFTWARECOMPONENTCANNOTBEREPLICATED4HISREALIZATIONALONESHOULDMAKEYOUSTOPANDQUESTION
WHETHERTHISAPPROACHISEVENFEASIBLE .EVERTHELESS THEIDEAOFBUILDINGYOUROWN%XADATASOUNDS
ATTRACTIVEBECAUSETHEINDIVIDUALHARDWARECOMPONENTSCANBEPURCHASEDFORLESSTHANTHEPACKAGEPRICE
/RACLECHARGES4HEREAREAFEWFLAWSWITHTHISTHINKING HOWEVER
1. 4HEHARDWARECOMPONENTTHATTENDSTOGETTHEMOSTATTENTIONISTHEFLASHCACHE
9OUCANBUYA3!.OR.!3WITHALARGECACHE4HEMIDDLE SIZE%XADATAPACKAGE
RACK SUPPLIESAROUND4ERABYTESOFFLASHCACHEACROSSTHESTORAGE
SERVERS4HATSAPRETTYBIGNUMBER BUTWHATSCACHEDISASIMPORTANTASTHESIZE
OFTHECACHEITSELF%XADATAISSMARTENOUGHNOTTOCACHEDATATHATISUNLIKELYTO
BENEFITFROMCACHING&OREXAMPLE ITISNOTHELPFULTOCACHEMIRRORCOPIESOF
BLOCKS SINCE/RACLEONLYREADSPRIMARYCOPIESUNLESSACORRUPTIONISDETECTED 
/RACLEHASALONGHISTORYOFWRITINGSOFTWARETOMANAGECACHES3OITSHOULDCOME
ASNOSURPRISETHATITDOESAVERYGOODJOBOFNOTFLUSHINGEVERYTHINGOUTWHENA
LARGETABLESCANISPROCESSEDSOTHATFREQUENTLYACCESSEDBLOCKSWOULDTENDTO
REMAININTHECACHE4HERESULTOFTHISDATABASE AWARECACHINGISTHATANORMAL
3!.OR.!3WOULDNEEDAMUCHLARGERCACHETOCOMPETEWITH%XADATASFLASH
CACHE+EEPINMINDALSOTHATTHEVOLUMEOFDATAYOUWILLNEEDTOSTOREWILLBE
MUCHLARGERONNON %XADATASTORAGEBECAUSEYOUWONTBEABLETOUSE(YBRID
#OLUMNAR#OMPRESSION
2. 4HEMOREIMPORTANTASPECTOFTHEHARDWARE WHICHODDLYENOUGHISOCCASIONALLY
OVERLOOKEDBYTHE$)9PROPOSALS ISTHETHROUGHPUTBETWEENTHESTORAGEAND
DATABASETIERS4HE%XADATAHARDWARESTACKPROVIDESAMOREBALANCEDPATHWAY
BETWEENSTORAGEANDDATABASESERVERSTHANMOSTCURRENTIMPLEMENTATIONS3OTHE
SECONDAREAOFFOCUSISGENERALLYTHEBANDWIDTHBETWEENTHETIERS)NCREASINGTHE
EFFECTIVETHROUGHPUTBETWEENTHETIERSISNOTASSIMPLEASITSOUNDS THOUGH
%XADATAPROVIDESTHEINCREASEDTHROUGHPUTVIA)NFINI"ANDANDTHE2ELIABLE
$ATAGRAM3OCKETS2$3 PROTOCOL/RACLEDEVELOPEDTHEI$"PROTOCOLTORUNACROSS
THE)NFINIBANDNETWORK4HEI$"PROTOCOLISNOTAVAILABLETODATABASESRUNNINGON
NON %XADATAHARDWARE4HEREFORE SOMEOTHERMEANSFORINCREASINGBANDWIDTH
BETWEENTHETIERSISNECESSARY3OYOUCANUSE)0/"ONA'ENETWORKANDUSE
I3#3)OR.&3 ORYOUCANUSEHIGH SPEEDFIBER BASEDCONNECTIONS)NANYCASEYOU
WILLNEEDMULTIPLEINTERFACECARDSINTHESERVERSWHICHWILLNEEDTOBEATTACHEDVIA
AFASTBUS 4HESTORAGEDEVICEORDEVICES WILLALSOHAVETOBECAPABLEOF
DELIVERINGENOUGHOUTPUTTOMATCHTHEPIPEANDCONSUMPTIONCAPABILITIESTHISIS
WHAT/RACLEMEANSWHENTHEYTALKABOUTABALANCEDCONFIGURATION 9OULLALSO
HAVETODECIDEWHICHHARDWARECOMPONENTSTOUSEANDTESTTHEWHOLETHINGTO
MAKESURETHATALLTHEVARIOUSPARTSYOUPICKWORKWELLTOGETHERWITHOUTHAVINGA
MAJORBOTTLENECKATANYPOINTINTHEPATHFROMDISKTODATABASESERVER


#(!04%2 /&&,/!$).'3-!243#!.

3. 4HETHIRDCOMPONENTTHATTHE$)9PROPOSALSGENERALLYADDRESSISTHEDATABASE
SERVERSTHEMSELVES4HE%XADATAHARDWARESPECIFICATIONSAREREADILYAVAILABLE SO
ITISASIMPLEMATTERTOBUYEXACTLYTHESAME3UNMODELS5NFORTUNATELY YOULL
NEEDTOPLANFORMORE#05SSINCEYOUWONTBEABLETOOFFLOADANYPROCESSINGTO
THE#05SONTHE%XADATASTORAGESERVERS4HISINTURNWILLDRIVEUPTHENUMBEROF
/RACLEDATABASELICENSES
4. !SSUMINGWECOULDMATCHTHE%XADATAHARDWAREPERFORMANCEINEVERYAREA WE
WOULDSTILLNOTEXPECTTOBEABLECOMECLOSETOTHEPERFORMANCEPROVIDEDBY
%XADATA4HATSBECAUSEITISTHESOFTWARETHATPROVIDESTHELIONSSHAREOFTHE
PERFORMANCEBENEFITOF%XADATA4HISISEASILYDEMONSTRATEDBYDISABLING
/FFLOADINGON%XADATAANDRUNNINGCOMPARISONS4HISALLOWSUSTOSEETHE
PERFORMANCEOFTHEHARDWAREWITHOUTTHESOFTWAREENHANCEMENTS!BIGPARTOF
WHAT%XADATASOFTWAREDOESISELIMINATETOTALLYUNNECESSARYWORK SUCHAS
TRANSFERRINGCOLUMNSANDROWSTHATWILLEVENTUALLYBEDISCARDED BACKTOTHE
DATABASESERVERS
!SOURFRIEND#ARY-ILLSAPLIKESTOSAY h4HEFASTESTWAYTODOANYTHINGISTONOTDOITv

What Offloading Includes


4HEREAREMANYOPTIMIZATIONSTHATCANBELUMPEDUNDERTHE/FFLOADINGBANNER4HISCHAPTERFOCUSESON
31,STATEMENTOPTIMIZATIONSTHATAREIMPLEMENTEDVIA3MART3CANS4HEBIGTHREE3MART3CAN
OPTIMIZATIONSARE#OLUMN0ROJECTION 0REDICATE&ILTERING AND3TORAGE)NDEXES4HEPRIMARYGOALOFMOST
OFTHE3MART3CANOPTIMIZATIONSISTOREDUCETHEAMOUNTOFDATATHATNEEDSTOBETRANSMITTEDBACKTOTHE
DATABASESERVERSDURINGSCANEXECUTION(OWEVER SOMEOFTHEOPTIMIZATIONSALSOATTEMPTTOOFFLOAD
#05 INTENSIVEOPERATIONS DECOMPRESSIONFOREXAMPLE7EWONTHAVEMUCHTOSAYABOUTOPTIMIZATIONS
THATARENOTRELATEDTO31,STATEMENTPROCESSINGINTHISCHAPTER SUCHAS3MART&ILE#REATIONAND2-!.
RELATEDOPTIMIZATIONS4HOSETOPICSWILLBECOVEREDINMOREDETAILELSEWHEREINTHEBOOK

■+EVIN3AYS4HISASPECTOF/FFLOAD0ROCESSINGSEEMSQUITECOMPLICATED4HEAUTHORSARECORRECTINSTATINGTHAT
THEPRIMARYBENEFITOF3MART3CANISPAYLOADREDUCTIONBETWEENSTORAGEANDTHEDATABASEGRID!NDITSTRUETHAT
SOME#05 OFFLOADBENEFITISENJOYEDBYDECOMPRESSING%XADATA(YBRID#OLUMNAR#OMPRESSIONUNITSINTHESTORAGE
CELLS(OWEVER THEREINLIESONECASEWHERE/FFLOAD0ROCESSINGACTUALLYAIMSTOincreaseTHEPAYLOADBETWEENTHE
CELLSANDTHEDATABASEGRID4HETRADE OFFISIMPORTANT HOWEVER)TMAKESSENSETODECOMPRESS%(##DATAINTHE
CELLSAFTERFILTRATION INSPITEOFTHEFACTTHATMOREDATAISSENTTOTHEDATABASEGRIDDUETOTHEDECOMPRESSION!LL
TECHNOLOGYSOLUTIONSHAVETRADE OFFS

#OLUMN0ROJECTION
4HETERMColumn ProjectionREFERSTO%XADATASABILITYTOLIMITTHEVOLUMEOFDATATRANSFERREDBETWEEN
THESTORAGETIERANDTHEDATABASETIERBYONLYRETURNINGCOLUMNSOFINTERESTTHATIS THOSEINTHESELECTLIST


#(!04%2 /&&,/!$).'3-!243#!.

ORNECESSARYFORJOINOPERATIONSONTHEDATABASETIER )FYOURQUERYREQUESTSFIVECOLUMNSFROMA
COLUMNTABLE %XADATACANELIMINATEMOSTOFTHEDATATHATWOULDBERETURNEDTOTHEDATABASESERVERSBY
NON %XADATASTORAGE4HISFEATUREISAMUCHBIGGERDEALTHANYOUMIGHTEXPECTANDITCANHAVEAVERY
SIGNIFICANTIMPACTONRESPONSETIMES(EREISANEXAMPLE
SYS@SANDBOX1> alter system flush shared_pool;

System altered.

Elapsed: 00:00:00.12
SYS@SANDBOX1> alter system flush buffer_cache;

System altered.

Elapsed: 00:00:00.13
SYS@SANDBOX1> alter session set "_serial_direct_read"=true;

Session altered.

Elapsed: 00:00:00.00
SYS@SANDBOX1> alter session set cell_offload_processing=false;

Session altered.

Elapsed: 00:00:00.01
SYS@SANDBOX1> select count(col1) from kso.skew3;

COUNT(COL1)
-----------
384000044

1 row selected.

Elapsed: 00:00:51.32
SYS@SANDBOX1> alter session set cell_offload_processing=true;

Session altered.

Elapsed: 00:00:00.00
SYS@SANDBOX1> select count(col1) from kso.skew3;

COUNT(COL1)
-----------
384000044

1 row selected.

Elapsed: 00:00:26.27
4HISEXAMPLEDESERVESALITTLEDISCUSSION&IRSTWEUSEDATRICKTOFORCEDIRECTPATHREADSWITHTHE
_SERIAL_DIRECT_READPARAMETERMOREONTHATLATER .EXTWEDISABLED3MART3CANSBYSETTING
CELL_OFFLOAD_PROCESSINGTOFALSE9OUCANSEETHATOURTESTQUERYDOESNTHAVEAWHERECLAUSE4HIS


#(!04%2 /&&,/!$).'3-!243#!.

MEANSTHAT0REDICATE&ILTERINGAND3TORAGE)NDEXESCANNOTBEUSEDTOCUTDOWNTHEVOLUMEOFDATATHAT
MUSTBETRANSFERREDFROMTHESTORAGETIER BECAUSETHOSETWOOPTIMIZATIONSCANONLYBEDONEWHENTHERE
ISAWHERECLAUSEWELLDISCUSSTHOSEOPTIMIZATIONSSHORTLY 4HATLEAVES#OLUMN0ROJECTIONASTHEONLY
OPTIMIZATIONINPLAY!REYOUSURPRISEDTHAT#OLUMN0ROJECTIONALONECOULDCUTAQUERYSRESPONSETIME
INHALF7EWERE THEFIRSTTIMEWESAWIT BUTITMAKESSENSEIFYOUTHINKABOUTIT9OUSHOULDBEAWARE
THATCOLUMNSINTHESELECTLISTARENOTTHEONLYCOLUMNSTHATMUSTBERETURNEDTOTHEDATABASESERVER
4HISISAVERYCOMMONMISCONCEPTION*OINCOLUMNSINTHEWHERECLAUSEMUSTALSOBERETURNED!SA
MATTEROFFACT INEARLYVERSIONSOF%XADATA THE#OLUMN0ROJECTIONFEATUREWASNOTASEFFECTIVEASITCOULD
HAVEBEENANDACTUALLYRETURNEDALLTHECOLUMNSINCLUDEDINTHEWHERECLAUSE WHICHINMANYCASES
INCLUDEDSOMEUNNECESSARYCOLUMNS
4HEDBMS_XPLANPACKAGECANDISPLAYINFORMATIONABOUTCOLUMNPROJECTION ALTHOUGHBYDEFAULTIT
DOESNOT4HEPROJECTIONDATAISSTOREDINTHEPROJECTIONCOLUMNINTHEV$SQL_PLANVIEWASWELL(EREIS
ANEXAMPLE
SYS@SANDBOX> select count(s.col1),avg(length(s.col4))
2 from kso.skew s, kso.skew2 s2
3 where s.pk_col = s2.pk_col
4 and s.col1 > 0
5 and s.col2='asddsadasd';

COUNT(S.COL1) AVG(LENGTH(S.COL4))
------------- -------------------
127999992 1

1 row selected.

SYS@SANDBOX> select sql_id, child_number, sql_text


2 from v$sql where sql_text like '%skew%';

SQL_ID CHILD SQL_TEXT


------------- ------ --------------------------------------------------------------
8xa3wjh48b9ar 0 select count(s.col1),avg(length(s.col4)) from kso.skew s, kso.

1 row selected.

SYS@SANDBOX> select * from


2 table(dbms_xplan.display_cursor('&sql_id','&child_no','+projection'));
Enter value for sql_id: 8xa3wjh48b9ar
Enter value for child_no:

PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------
SQL_ID 8xa3wjh48b9ar, child number 0
-------------------------------------
select count(s.col1),avg(length(s.col4)) from kso.skew s, kso.skew2 s2
where s.pk_col = s2.pk_col and s.col1 > 0 and s.col2='asddsadasd'

Plan hash value: 3361152066


#(!04%2 /&&,/!$).'3-!243#!.

-------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
-------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | | | | 360K(100)| |
| 1 | SORT AGGREGATE | | 1 | 30 | | | |
|* 2 | HASH JOIN | | 64M| 1836M| 549M| 360K (1)| 01:12:02 |
|* 3 | TABLE ACCESS STORAGE FULL| SKEW | 16M| 366M| | 44585 (2)| 00:08:56 |
| 4 | TABLE ACCESS STORAGE FULL| SKEW2| 128M| 732M| | 178K (1)| 00:35:37 |
-------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):


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

2 - access("S"."PK_COL"="S2"."PK_COL")
3 - storage(("S"."COL2"='asddsadasd' AND "S"."COL1">0))
filter(("S"."COL2"='asddsadasd' AND "S"."COL1">0))

Column Projection Information (identified by operation id):


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

1 - (#keys=0) COUNT(LENGTH("S"."COL4"))[22], COUNT("S"."COL1")[22],


SUM(LENGTH("S"."COL4"))[22]
2 - (#keys=1) "S"."COL4"[VARCHAR2,1], "S"."COL1"[NUMBER,22]
3 - "S"."PK_COL"[NUMBER,22], "S"."COL1"[NUMBER,22], "S"."COL4"[VARCHAR2,1]
4 - "S2"."PK_COL"[NUMBER,22]

33 rows selected.

SYS@SANDBOX> select projection from v$sql_plan


2 where projection is not null
3 and sql_id = '8xa3wjh48b9ar';

PROJECTION
-------------------------------------------------------------------------------------------
(#keys=0) COUNT(LENGTH("S"."COL4"))[22], COUNT("S"."COL1")[22], SUM(LENGTH("S"."COL4"))[22]
(#keys=1) "S"."COL4"[VARCHAR2,1], "S"."COL1"[NUMBER,22]
"S"."PK_COL"[NUMBER,22], "S"."COL1"[NUMBER,22], "S"."COL4"[VARCHAR2,1]
"S2"."PK_COL"[NUMBER,22]

4 rows selected.
3OASYOUCANSEE THEPLANOUTPUTSHOWSTHEPROJECTIONINFORMATION BUTONLYIFYOUUSETHE
+PROJECTIONARGUMENTINTHECALLTOTHEDBMS_XPLANPACKAGE.OTEALSOTHATTHEPK_COLCOLUMNSFROM
BOTHTABLESWERELISTEDINTHEPROJECTIONSECTION BUTTHATNOTALLCOLUMNSINTHEWHERECLAUSEARE
INCLUDED/NLYTHOSECOLUMNSTHATNEEDTOBERETURNEDTOTHEDATABASEJOINCOLUMNS SHOULDBELISTED
.OTEALSOTHATTHEPROJECTIONINFORMATIONISNOTUNIQUETO%XADATABUTISAGENERICPARTOFTHEDATABASE
CODE
4HEV$SQLFAMILYOFVIEWSCONTAINCOLUMNSTHATDEFINETHEVOLUMEOFDATATHATMAYBESAVEDBY
/FFLOADINGIO_CELL_OFFLOAD_ELIGIBLE_BYTES ANDTHEVOLUMEOFDATATHATWASACTUALLYRETURNEDBYTHE
STORAGESERVERSIO_INTERCONNECT_BYTES .OTETHATTHESECOLUMNSARECUMULATIVEFORALLTHEEXECUTIONS
OFTHESTATEMENT7ELLBEUSINGTHESETWOCOLUMNSTHROUGHOUTTHEBOOKBECAUSETHEYAREKEYINDICATORS


#(!04%2 /&&,/!$).'3-!243#!.

OFOFFLOADPROCESSING(ERESAQUICKDEMONSTRATIONTOSHOWTHATPROJECTIONDOESAFFECTTHEAMOUNTOF
DATARETURNEDTOTHEDATABASESERVERSANDTHATSELECTINGFEWERCOLUMNSRESULTSINLESSDATATRANSFERRED
SYS@SANDBOX> select /* single col */ avg(pk_col)
2 from kso.skew3;

AVG(PK_COL)
-----------
16093750.3

1 row selected.

Elapsed: 00:00:32.13

SYS@SANDBOX> select /* multi col */ avg(pk_col),sum(col1)


2 from kso.skew3;

AVG(PK_COL) SUM(COL1)
----------- ----------
16093750.3 1.9003E+14

1 row selected.

Elapsed: 00:00:45.32
SYS@SANDBOX> set timing off
SYS@SANDBOX> select sql_id,sql_text from v$sql
2 where sql_text like '%col */ avg(pk_col)%';

SQL_ID SQL_TEXT
------------- ----------------------------------------------------------------------
bb3z4aaa9du7j select /* single col */ avg(pk_col) from kso.skew3
555pskb8aaqct select /* multi col */ avg(pk_col),sum(col1) from kso.skew3

2 rows selected.

SYS@SANDBOX> select sql_id, IO_CELL_OFFLOAD_ELIGIBLE_BYTES eligible,


2 IO_INTERCONNECT_BYTES actual,
3 100*(IO_CELL_OFFLOAD_ELIGIBLE_BYTES-IO_INTERCONNECT_BYTES)
4 /IO_CELL_OFFLOAD_ELIGIBLE_BYTES "IO_SAVED_%", sql_text
5 from v$sql where sql_id in ('bb3z4aaa9du7j','555pskb8aaqct');

SQL_ID ELIGIBLE ACTUAL IO_SAVED_% SQL_TEXT


------------- ---------- ---------- ---------- ------------------------------------
bb3z4aaa9du7j 1.6025E+10 4511552296 71.85 select /* single col */ avg(pk_col)
555pskb8aaqct 1.6025E+10 6421233960 59.93 select /* multi col */ avg(pk_col),s

2 rows selected.

SYS@SANDBOX> @fsx4
Enter value for sql_text: %col */ avg(pk_col)%
Enter value for sql_id:


#(!04%2 /&&,/!$).'3-!243#!.

SQL_ID CHILD OFFLOAD IO_SAVED_% AVG_ETIME SQL_TEXT


------------- ------ ------- ---------- ------------- --------------------
6u7v77c2f8x5r 0 Yes 59.93 45.15 select /* multi col
d43dr7hvmw3yb 0 Yes 71.85 31.94 select /* single col

2 rows selected.
.OTETHATTHEEXTRACOLUMNRESULTEDINAGREATDEALOFEXTRATIMEREQUIREDTOCOMPLETETHEQUERYAND
THATTHECOLUMNSINV$SQLVERIFIEDTHEINCREASEDVOLUMEOFDATATHATHADTOBETRANSFERRED7EVEALSO
SHOWNTHEOUTPUTOFAMODIFIEDVERSIONOFTHEfsx.sqlSCRIPT WHICHWELLDISCUSSINMOREDETAILLATERIN
THISCHAPTER&ORNOW PLEASEJUSTACCEPTTHATITSHOWSUSWHETHERASTATEMENTWASOFFLOADEDORNOT

0REDICATE&ILTERING
4HESECONDOFTHEBIGTHREE3MART3CANOPTIMIZATIONSISPredicate Filtering4HISTERMREFERSTO%XADATAS
ABILITYTORETURNONLYROWSOFINTERESTTOTHEDATABASETIER3INCEI$"INCLUDESTHEPREDICATEINFORMATION
INITSREQUESTS THISISACCOMPLISHEDBYPERFORMINGTHESTANDARDFILTERINGOPERATIONSATTHESTORAGECELLS
BEFORERETURNINGTHEDATA/NDATABASESUSINGNON %XADATASTORAGE FILTERINGISDONEONTHEDATABASE
SERVERS4HISGENERALLYMEANSTHATALARGENUMBEROFRECORDSTHATWILLEVENTUALLYBEDISCARDEDWILLBE
RETURNEDTOTHEDATABASETIER&ILTERINGTHESEROWSATTHESTORAGELAYERCANPROVIDEAVERYSIGNIFICANT
DECREASEINTHEVOLUMEOFDATATHATMUSTBETRANSFERREDTOTHEDATABASETIER7HILETHISOPTIMIZATIONALSO
RESULTSINSOMESAVINGSIN#05USAGEONTHEDATABASESERVERS THEBIGGESTADVANTAGEISGENERALLYTHE
REDUCTIONINDATATRANSFER
(EREISANEXAMPLE
SYS@SANDBOX> alter session set cell_offload_processing=false;

Session altered.

Elapsed: 00:00:00.01
SYS@SANDBOX> select count(pk_col) from kso.skew3;

COUNT(PK_COL)
-------------
384000036

Elapsed: 00:00:48.45
SYS@SANDBOX> alter session set cell_offload_processing=true;

Session altered.

Elapsed: 00:00:00.01
SYS@SANDBOX> select count(pk_col) from kso.skew3;

COUNT(PK_COL)
-------------
384000036

Elapsed: 00:00:26.61
SYS@SANDBOX> -- disable storage indexes
SYS@SANDBOX> alter system set "_kcfis_storageidx_disabled"=true;


#(!04%2 /&&,/!$).'3-!243#!.

System altered.

Elapsed: 00:00:00.17
SYS@SANDBOX> select count(pk_col) from kso.skew3 where col1 < 0;

COUNT(PK_COL)
-------------
2

Elapsed: 00:00:08.53
&IRSTWECOMPLETELYDISABLED/FFLOADINGUSINGTHECELL_OFFLOAD_PROCESSINGPARAMETERANDRANA
QUERYWITHOUTAWHERECLAUSE7ITHOUTTHEBENEFITOF/FFLOADINGTHISQUERYTOOKABOUTSECONDS7E
THENENABLED/FFLOADINGANDRE RANTHEQUERY4HISTIMETHEQUERYTOOKONLYABOUTSECONDS4HE
SAVINGSOFAPPROXIMATELYSECONDSWASDUESTRICTLYTO#OLUMN0ROJECTIONBECAUSEWITHOUTAWHERE
CLAUSEFORFILTERING THEREWERENOOTHEROPTIMIZATIONSTHATCOULDCOMEINTOPLAY 7ETHENUSEDATRICKTO
DISABLESTORAGEINDEXESBYSETTINGTHEHIDDENPARAMETER _KCFIS_STORAGEIDX_DISABLED TOTRUEWELL
DISCUSSTHATMOREINTHENEXTSECTION ANDADDEDAWHERECLAUSE WHICHREDUCEDTHEEXECUTIONTIMETO
ABOUTSECONDS4HISREDUCTIONOFANADDITIONALSECONDSORSOWASTHANKSTO0REDICATE&ILTERING.OTE
THATWEHADTODISABLESTORAGEINDEXESTOBESURETHATWEWERENTGETTINGANYBENEFITFROMTHAT
OPTIMIZATIONANDTHATALLTHEIMPROVEMENTWASDUETO0REDICATE&ILTERING WHICHBRINGSUSTOTHENEXT
TOPIC

3TORAGE)NDEXES
3TORAGE)NDEXESPROVIDETHETHIRDLEVELOFOPTIMIZATIONFOR3MART3CANS3TORAGE)NDEXESAREIN MEMORY
STRUCTURESONTHESTORAGECELLSTHATMAINTAINAMAXIMUMANDMINIMUMVALUEFOREACH-"DISKSTORAGE
UNIT FORUPTOEIGHTCOLUMNSOFATABLE3TORAGE)NDEXESAREALITTLEDIFFERENTTHANMOST3MART3CAN
OPTIMIZATIONS4HEGOALOF3TORAGE)NDEXESISNOTTOREDUCETHEAMOUNTOFDATABEINGTRANSFERREDBACKTO
THEDATABASETIER)NFACT WHETHERTHEYAREUSEDONAGIVENQUERYORNOT THEAMOUNTOFDATARETURNEDTO
THEDATABASETIERREMAINSCONSTANT/NTHECONTRARY 3TORAGE)NDEXESAREDESIGNEDTOELIMINATETIME
SPENTREADINGDATAFROMDISKONTHESTORAGESERVERSTHEMSELVES4HINKOFTHISFEATUREASAPRE FILTER3INCE
3MART3CANSPASSTHEQUERYPREDICATESTOTHESTORAGESERVERS AND3TORAGE)NDEXESCONTAINAMAPOF
VALUESINEACH-"STORAGEREGION ANYREGIONTHATCANTPOSSIBLYCONTAINAMATCHINGROWCANBE
ELIMINATEDWITHOUTEVERBEINGREAD9OUCANALSOTHINKOF3TORAGE)NDEXESASANALTERNATEPARTITIONING
MECHANISM$ISK)/ISELIMINATEDINANALOGOUSFASHIONTOPARTITIONELIMINATION)FAPARTITIONCANT
CONTAINANYRECORDSOFINTEREST THEPARTITIONSBLOCKSWILLNOTBEREAD3IMILARLY IFASTORAGEREGION
CANNOTCONTAINANYRECORDSOFINTEREST THATSTORAGEREGIONNEEDNOTBEREAD
3TORAGE)NDEXESCANNOTBEUSEDINALLCASES ANDTHEREISLITTLETHATCANBEDONETOAFFECTWHENORHOW
THEYAREUSED"UTINTHERIGHTSITUATIONS THERESULTSFROMTHISOPTIMIZATIONTECHNIQUECANBE
ASTOUNDING
(EREISANEXAMPLE
SYS@SANDBOX> -- disable storage indexes
SYS@SANDBOX> alter system set "_kcfis_storageidx_disabled"=true;

System altered.

Elapsed: 00:00:00.22
SYS@SANDBOX> select count(pk_col) from kso.skew3 where col1 < 0;


#(!04%2 /&&,/!$).'3-!243#!.

COUNT(PK_COL)
-------------
2

Elapsed: 00:00:08.74
SYS@SANDBOX> -- enable storage indexes
SYS@SANDBOX> alter system set "_kcfis_storageidx_disabled"=false;

System altered.

Elapsed: 00:00:00.03
SYS@SANDBOX> select count(pk_col) from kso.skew3 where col1 < 0;

COUNT(PK_COL)
-------------
2

Elapsed: 00:00:00.08
)NTHISEXAMPLEWEDISABLEDSTORAGEINDEXESUSINGTHE_KCFIS_STORAGEIDX_DISABLEDPARAMETER TO
REMINDYOUOFTHEELAPSEDTIMEREQUIREDTOREADTHROUGHMILLIONROWSUSING#OLUMN0ROJECTIONAND
0REDICATE&ILTERING2EMEMBERTHATEVENTHOUGHTHEAMOUNTOFDATARETURNEDTOTHEDATABASETIERIS
EXTREMELYSMALLINTHISCASE THESTORAGESERVERSSTILLHADTOREADTHROUGHEVERYBLOCKCONTAININGDATAFOR
THESKEW3TABLEANDTHENHADTOCHECKEACHROWTOSEEIFITMATCHEDTHEWHERECLAUSE4HISISWHERETHE
MAJORITYOFTHESECONDSWASSPENT7ETHENRE ENABLEDSTORAGEINDEXESANDRERANTHEQUERY WHICH
REDUCEDTHEEXECUTIONTIMETOABOUTSECONDS4HISREDUCTIONINELAPSEDTIMEISARESULTOFSTORAGE
INDEXESBEINGUSEDTOAVOIDVIRTUALLYALLOFTHEDISK)/ANDTHETIMESPENTFILTERINGTHROUGHTHOSE
RECORDS
*USTTOREITERATE #OLUMN0ROJECTIONAND0REDICATE&ILTERINGANDMOSTOTHER3MART3CAN
OPTIMIZATIONS IMPROVEPERFORMANCEBYREDUCINGTHEVOLUMEOFDATABEINGTRANSFERREDBACKTOTHE
DATABASESERVERSANDTHUSTHEAMOUNTOFTIMETOTRANSFERTHEDATA 3TORAGE)NDEXESIMPROVE
PERFORMANCEBYELIMINATINGTIMESPENTREADINGDATAFROMDISKONTHESTORAGESERVERSANDFILTERINGTHAT
DATA3TORAGE)NDEXESARECOVEREDINMUCHMOREDETAILIN#HAPTER

3IMPLE*OINS"LOOM&ILTERS
)NSOMECASES JOINPROCESSINGCANBEOFFLOADEDTOTHESTORAGETIERASWELL/FFLOADEDJOINSARE
ACCOMPLISHEDBYCREATINGWHATISCALLEDAbloom filter"LOOMFILTERSHAVEBEENAROUNDFORALONGTIME
ANDHAVEBEENUSEDBY/RACLESINCE/RACLE$ATABASE6ERSIONG2ELEASE3OTHEYARENOTSPECIFICTO
%XADATA/NEOFTHEMAINWAYS/RACLEUSESTHEMISTOREDUCETRAFFICBETWEENPARALLELQUERYSLAVES4HEY
HAVETHEADVANTAGEOFBEINGVERYSMALLRELATIVETOTHEDATASETTHATTHEYREPRESENT(OWEVER THISCOMES
ATAPRICEˆTHEYCANRETURNFALSEPOSITIVES4HATIS ROWSTHATSHOULDNOTBEINCLUDEDINTHEDESIREDRESULT
SETCANOCCASIONALLYPASSABLOOMFILTER&ORTHATREASON ANADDITIONALFILTERMUSTBEAPPLIEDAFTERTHE
BLOOMFILTERTOENSURETHATANYFALSEPOSITIVESAREELIMINATED4HEINTERESTINGTHINGABOUTBLOOMFILTERS
FROMAN%XADATAPERSPECTIVEISTHATTHEYMAYBEPASSEDTOTHESTORAGESERVERSANDEVALUATEDTHERE4HIS
TECHNIQUECANRESULTINALARGEDECREASEINTHEVOLUMEOFDATATHATMUSTBETRANSMITTEDBACKTODATABASE
SERVERS
(ERESANEXAMPLE


#(!04%2 /&&,/!$).'3-!243#!.

SYS@SANDBOX> -- disable bloom filter offloading


SYS@SANDBOX> alter session set "_bloom_predicate_pushdown_to_storage"=false;

Session altered.

Elapsed: 00:00:00.82
SYS@SANDBOX> @bloom_join2.sql

COL2 SUM(A.COL1)
------------------------------ -----------
2342 144
asddsadasd 153598416

2 rows selected.

Elapsed: 00:11:39.39
SYS@SANDBOX> -- enable bloom filter offloading
SYS@SANDBOX> alter session set "_bloom_predicate_pushdown_to_storage"=true;

Session altered.

Elapsed: 00:00:00.82
SYS@SANDBOX> @bloom_join2.sql

COL2 SUM(A.COL1)
------------------------------ -----------
asddsadasd 153598416
2342 144

2 rows selected.

Elapsed: 00:02:06.13

SYS@SANDBOX> @dplan
Enter value for sql_id: 09m6t5qpgkywx
Enter value for child_no: 0

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
SQL_ID 09m6t5qpgkywx, child number 0
-------------------------------------
select /*+ bloom join 2 use_hash (skew temp_skew) */ a.col2,
sum(a.col1) from kso.skew3 a, kso.skew2 b where a.pk_col = b.pk_col and
b.col1 = 1 group by a.col2

Plan hash value: 466947137


#(!04%2 /&&,/!$).'3-!243#!.

-----------------------------------------------------------------------------------------
| Id | Operation | Name | TQ |IN-OUT| PQ Distrib |
-----------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | | | |
| 1 | PX COORDINATOR | | | | |
| 2 | PX SEND QC (RANDOM) | :TQ10002 | Q1,02 | P->S | QC (RAND) |
| 3 | HASH GROUP BY | | Q1,02 | PCWP | |
| 4 | PX RECEIVE | | Q1,02 | PCWP | |
| 5 | PX SEND HASH | :TQ10001 | Q1,01 | P->P | HASH |
| 6 | HASH GROUP BY | | Q1,01 | PCWP | |
|* 7 | HASH JOIN | | Q1,01 | PCWP | |
| 8 | BUFFER SORT | | Q1,01 | PCWC | |
| 9 | PX RECEIVE | | Q1,01 | PCWP | |
| 10 | PX SEND BROADCAST | :TQ10000 | | S->P | BROADCAST |
| 11 | TABLE ACCESS BY INDEX ROWID| SKEW2 | | | |
|* 12 | INDEX RANGE SCAN | SKEW2_COL1 | | | |
| 13 | PX BLOCK ITERATOR | | Q1,01 | PCWC | |
|* 14 | TABLE ACCESS STORAGE FULL | SKEW3 | Q1,01 | PCWP | |
-----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):


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

7 - access("A"."PK_COL"="B"."PK_COL")
12 - access("B"."COL1"=1)
14 - storage(:Z>=:Z AND :Z<=:Z)
filter(SYS_OP_BLOOM_FILTER(:BF0000,"A"."PK_COL"))

36 rows selected.

SYS@SANDBOX> @dplan
Enter value for sql_id: 09m6t5qpgkywx
Enter value for child_no: 1

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
SQL_ID 09m6t5qpgkywx, child number 1
-------------------------------------
select /*+ bloom join 2 use_hash (skew temp_skew) */ a.col2,
sum(a.col1) from kso.skew3 a, kso.skew2 b where a.pk_col = b.pk_col and
b.col1 = 1 group by a.col2

Plan hash value: 466947137

-----------------------------------------------------------------------------------------
| Id | Operation | Name | TQ |IN-OUT| PQ Distrib |
-----------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | | | |
| 1 | PX COORDINATOR | | | | |
| 2 | PX SEND QC (RANDOM) | :TQ10002 | Q1,02 | P->S | QC (RAND) |


#(!04%2 /&&,/!$).'3-!243#!.

| 3 | HASH GROUP BY | | Q1,02 | PCWP | |


| 4 | PX RECEIVE | | Q1,02 | PCWP | |
| 5 | PX SEND HASH | :TQ10001 | Q1,01 | P->P | HASH |
| 6 | HASH GROUP BY | | Q1,01 | PCWP | |
|* 7 | HASH JOIN | | Q1,01 | PCWP | |
| 8 | BUFFER SORT | | Q1,01 | PCWC | |
| 9 | PX RECEIVE | | Q1,01 | PCWP | |
| 10 | PX SEND BROADCAST | :TQ10000 | | S->P | BROADCAST |
| 11 | TABLE ACCESS BY INDEX ROWID| SKEW2 | | | |
|* 12 | INDEX RANGE SCAN | SKEW2_COL1 | | | |
| 13 | PX BLOCK ITERATOR | | Q1,01 | PCWC | |
|* 14 | TABLE ACCESS STORAGE FULL | SKEW3 | Q1,01 | PCWP | |
-----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):


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

7 - access("A"."PK_COL"="B"."PK_COL")
12 - access("B"."COL1"=1)
14 - storage(:Z>=:Z AND :Z<=:Z AND SYS_OP_BLOOM_FILTER(:BF0000,"A"."PK_COL"))
filter(SYS_OP_BLOOM_FILTER(:BF0000,"A"."PK_COL"))

36 rows selected.
)NTHISLISTINGWEUSEDAHIDDENPARAMETER ?BLOOM_PREDICATE_PUSHDOWN_TO_STORAGE TODISABLETHIS
FEATUREFORCOMPARISONPURPOSES.OTICETHATOURTESTQUERYRANINABOUTMINUTESWITH/FFLOADINGAND
MINUTESWITHOUT)FYOULOOKCLOSELYATTHE0REDICATE)NFORMATIONOFTHEPLANS YOUWILLSEETHATTHE
SYS_OP_BLOOM_FILTER(:BF0000,"A"."PK_COL")PREDICATEWASRUNONTHESTORAGESERVERSFORTHESECOND
RUN4HEOFFLOADEDVERSIONRANFASTERBECAUSETHESTORAGESERVERSWEREABLETOPRE JOINTHETABLES WHICH
ELIMINATEDALARGEAMOUNTOFDATATHATWOULDOTHERWISEHAVEBEENTRANSFERREDBACKTOTHEDATABASE
SERVERS

&UNCTION/FFLOADING
/RACLESIMPLEMENTATIONOF31,INCLUDESMANYBUILT IN31,FUNCTIONS4HESEFUNCTIONSCANBEUSED
DIRECTLYIN31,STATEMENTS4HEYMAYBEDIVIDEDINTOTWOMAINGROUPSSINGLE ROWFUNCTIONSANDMULTI
ROWFUNCTIONS3INGLE ROWFUNCTIONSRETURNASINGLERESULTROWFOREVERYROWOFAQUERIEDTABLE4HESE
SINGLEROWFUNCTIONSCANBEFURTHERSUBDIVIDEDINTOTHEFOLLOWINGGENERALCATEGORIES
v .UMERICFUNCTIONSSIN COS FLOOR MOD LOG x
v #HARACTERFUNCTIONSCHR LPAD REPLACE TRIM UPPER LENGTH x
v $ATETIMEFUNCTIONSADD_MONTHS TO_CHAR TRUNC x
v #ONVERSIONFUNCTIONSCAST HEXTORAW TO_CHAR TO_DATE x
6IRTUALLYALLOFTHESESINGLE ROWFUNCTIONSCANBEOFFLOADEDTO%XADATASTORAGE4HESECONDMAJOR
GROUPOF31,FUNCTIONSOPERATEONASETOFROWS4HEREARETWOSUBGROUPSINTHISMULTI ROWFUNCTION
CATEGORY


#(!04%2 /&&,/!$).'3-!243#!.

v !GGREGATEFUNCTIONSAVG COUNT SUM x


v !NALYTICFUNCTIONSAVG COUNT DENSE_RANK LAG x
4HESEFUNCTIONSRETURNEITHERASINGLEROWAGGREGATEFUNCTIONS ORMULTIPLEROWSANALYTIC
FUNCTIONS .OTETHATSOMEOFTHEFUNCTIONSAREOVERLOADEDANDBELONGTOBOTHGROUPS.ONEOFTHESE
FUNCTIONSCANBEOFFLOADEDTO%XADATA7HICHMAKESSENSE BECAUSEMANYOFTHESEFUNCTIONSREQUIRE
ACCESSTOTHEENTIRESETOFROWS WHICHINDIVIDUALSTORAGECELLSDONOTHAVE
4HEREARESOMEADDITIONALFUNCTIONSTHATDONTFALLNEATLYINTOANYOFTHEPREVIOUSLYDESCRIBED
GROUPINGS4HESEFUNCTIONSAREAMIXEDBAGINTERMSOF/FFLOADING&OREXAMPLE DECODEANDNVLARE
OFFLOADABLE BUTTHE8-,FUNCTIONSARENOT3OMEOFTHE$ATA-ININGFUNCTIONSAREOFFLOADABLEANDSOME
ARENOT!LSOKEEPINMINDTHATTHELISTOFOFFLOADABLEFUNCTIONSMAYCHANGEASNEWERVERSIONSARE
RELEASED4HEDEFINITIVELISTOFWHICHFUNCTIONSAREOFFLOADABLEFORYOURPARTICULARVERSIONISCONTAINEDIN
V$SQLFN_METADATA
SYS@SANDBOX> select distinct name, version, offloadable
2 from V$SQLFN_METADATA
3 order by 1,2;

NAME VERSION OFF


------------------------------ ------------ ---
!= SQL/DS YES
!= V6 Oracle YES
< SQL/DS YES
< V6 Oracle YES
<= SQL/DS YES
<= V6 Oracle YES
= SQL/DS YES
= V6 Oracle YES
> SQL/DS YES
> V6 Oracle YES
>= SQL/DS YES
>= V6 Oracle YES
ABS V10 Oracle YES
ABS V10 Oracle YES
ABS V6 Oracle YES
ACOS V10 Oracle YES
ACOS V73 Oracle YES
. . .
VSIZE V6 Oracle YES
WIDTH_BUCKET V82 Oracle NO
XMLCAST V11R1 Oracle NO
XMLCDATA V10 Oracle NO
XMLCOMMENT V10 Oracle NO
XMLCONCAT V92 Oracle NO
XMLDIFF V11R1 Oracle NO
XMLEXISTS2 V11R1 Oracle NO
XMLISNODE V92 Oracle NO
XMLISVALID V92 Oracle NO
XMLPATCH V11R1 Oracle NO
XMLQUERY V10 Oracle NO
XMLTOOBJECT V11R1 Oracle NO


#(!04%2 /&&,/!$).'3-!243#!.

XMLTRANSFORM V92 Oracle NO


XMLTRANSFORMBLOB V10 Oracle NO
XS_SYS_CONTEXT V11R1 Oracle NO

921 rows selected.


/FFLOADINGFUNCTIONSDOESALLOWTHESTORAGECELLSTODOSOMEOFTHEWORKTHATWOULDNORMALLYBE
DONEBYTHE#05SONTHEDATABASESERVERS(OWEVER THESAVINGIN#05USAGEISGENERALLYARELATIVELY
MINORENHANCEMENT4HEBIGGAINUSUALLYCOMESFROMLIMITINGTHEAMOUNTOFDATATRANSFERREDBACKTO
THEDATABASESERVERS"EINGABLETOEVALUATEFUNCTIONSCONTAINEDINWHERECLAUSESALLOWSSTORAGECELLSTO
SENDONLYROWSOFINTERESTBACKTOTHEDATABASETIER3OASWITHMOST/FFLOADING THEPRIMARYGOALOFTHIS
OPTIMIZATIONISTOREDUCETHEAMOUNTOFTRAFFICBETWEENTHESTORAGEANDDATABASETIERS

#OMPRESSION$ECOMPRESSION
/NE%XADATAFEATURETHATHASRECEIVEDQUITEABITOFATTENTIONIS(YBRID#OLUMNAR#OMPRESSION(## 
%XADATAOFFLOADSTHEDECOMPRESSIONOFDATASTOREDIN(##FORMATDURING3MART3CANOPERATIONS4HATIS
COLUMNSOFINTERESTAREDECOMPRESSEDONTHESTORAGECELLSWHENTHECOMPRESSEDDATAISACCESSEDVIA
3MART3CANS4HISDECOMPRESSIONISNOTNECESSARYFORFILTERING SOONLYTHEDATATHATWILLBERETURNEDTO
THEDATABASETIERWILLBEDECOMPRESSED.OTETHATALLCOMPRESSIONISCURRENTLYDONEATTHEDATABASETIER
HOWEVER$ECOMPRESSIONMAYALSOBEDONEATTHEDATABASETIERWHENDATAISNOTACCESSEDVIAA3MART
3CAN3OTOMAKEITSIMPLE 4ABLE SHOWSWHERETHEWORKISDONE

Table 2-1. HCC Compression/Decompression Offloading

Operation Database Servers Storage Servers


#OMPRESSION!LWA YS .EVER

$ECOMPRESSION .ON 3MART3CAN 3MART3CAN



$ECOMPRESSINGDATAATTHESTORAGETIERRUNSCOUNTERTOTHETHEMEOFMOSTOFTHEOTHER3MART3CAN
OPTIMIZATIONS-OSTOFTHEMAREGEAREDTOREDUCINGTHEVOLUMEOFDATATOBETRANSPORTEDBACKTOTHE
DATABASESERVERS"ECAUSEDECOMPRESSIONISSUCHA#05 INTENSIVETASK PARTICULARLYWITHTHEHIGHER
LEVELSOFCOMPRESSION THEDECISIONWASMADETODOTHEDECOMPRESSIONONTHESTORAGESERVERS4HIS
DECISIONISNOTBELOCKEDINSTONE HOWEVER ASINSOMESITUATIONSTHEREMAYBEAMPLE#05RESOURCES
AVAILABLETOMAKEDECOMPRESSINGDATAONTHEDATABASESERVERSANATTRACTIVEOPTIONTHATIS INSOME
SITUATIONSTHEREDUCTIONINDATATOBESHIPPEDMAYOUTWEIGHTHEREDUCTIONINDATABASESERVER#05
CONSUMPTION )NFACT ASOFCELLSRVVERSION %XADATADOESHAVETHEABILITYTORETURNCOMPRESSED
DATATOTHEDATABASESERVERSWHENTHESTORAGECELLSAREBUSY


#(!04%2 /&&,/!$).'3-!243#!.

+EVIN3AYS4HEAUTHORSARECORRECTTOSURMISETHATTHEDELINEATIONOFRESPONSIBILITYBETWEENTHEDATABASEGRID
ANDTHESTORAGEGRIDAREQUITEFLUIDˆATLEASTFROMANARCHITECTURALSTANDPOINT!LLOWMETOEXPLAIN$URING3MART
3CANPROCESSING %XADATA3TORAGE3ERVERSOFTWAREPERFORMSOFFLOADPROCESSINGSUCHASFILTRATION PROJECTION AND
DECOMPRESSIONOF%(##DATA ON-"CHUNKSOFDATA)NTRUE3MART3CANFORM THEPRODUCTOF3MART3CANFILTERED
ANDPROJECTEDDATA FLOWSOVERI$"INTOTHE0'!OFTHEREQUESTINGPROCESSINTHEDATABASEGRID(OWEVER THERE
HAVEALWAYSBEENCONDITIONSWHERE3MART3CANISFORCEDTOHALTINTELLIGENTPROCESSINGWITHINONEOFTHESE-"
CHUNKSANDRETURNDATAINORIGINALBLOCKFORM/NESUCHCASEISWHEN3MART3CANENCOUNTERSACHAINEDROW
DURINGFILTRATION/NLYTHEDATABASEGRIDCANDETERMINETHELOCATIONOFTHEBLOCKTHATCONTAINSTHECHAINEDROW
%VENIFCELLSWEREGIVENTHEINTELLIGENCETODETERMINETHELOCALEOFTHECHAINEDROW ITWOULDMOSTLIKELYNOTBEON
THESAMECELLANDCELLSHAVENODIRECTCOMMUNICATIONPATHSAMONGTHEMSELVES ANYWAY3O WITHTHISEXAMPLEIN
MIND ITISEASYTOSEETHAT3MART3CANCANREVERTTOABLOCKSERVERWHENITneedsTO&ORTHATMATTER 3MART3CAN
CANREVERTTOABLOCKSERVERWHENITwants TO)EXPECTTHESHELF LIFEOFTHISBOOKTOOUTLIVESOMEOFTHERIGID
DESCRIPTIONSWEVEGIVENREGARDINGROLESANDTHEDELINEATIONOFRESPONSIBILITIESBETWEENTHEDATABASEGRIDANDTHE
STORAGEGRIDOFTHE%XADATA$ATABASE-ACHINE#ONSIDERASCENARIOWHERETHECELLSARESERVICINGAMODERATELY
SELECTIVEQUERYOFMINIMALCOMPLEXITYFOREXAMPLE FEWORNOJOINS ANDLIGHTAGGREGATIONANDSORTING AGAINST
DEEPLYCOMPRESSEDDATA'IVENTHESEPARAMETERS THEPROCESSORUTILIZATIONWOULDSKEWHEAVILYTOWARDTHESTORAGE
GRID ASTHECOSTOFFILTERING PROJECTING ANDDECOMPRESSINGTHEDATAISMUCHGREATERTHANTHEEFFORTBEING
EXPENDEDINTHEDATABASEGRID7EKNOW3MART3CANCANREVERTTOABLOCKSERVERWHENITneedsTO4HESCENARIO)
JUSTDESCRIBEDMAYINDEEDBEACASEWHEN3MART3CANWOULDwantTOREVERTTOBLOCKSERVERFORATLEASTSOMEOFITS
PAYLOAD)NDEED ITSBETTERNOTTOBROKERWORKTOFULLYSATURATEDPROCESSORSIFTHEREAREOTHERPROCESSORSNEARIDLE

"YTHEWAY THEREISAHIDDENPARAMETERTHATCONTROLSWHETHERDECOMPRESSIONWILLBEOFFLOADEDAT
ALL5NFORTUNATELY ITDOESNTJUSTMOVETHEDECOMPRESSIONBACKANDFORTHBETWEENTHESTORAGEAND
DATABASETIERS)FTHE_CELL_OFFLOAD_HYBRIDCOLUMNARPARAMETERISSETTOAVALUEOFFALSE 3MART3CANSWILL
BECOMPLETELYDISABLEDON(##DATA

%NCRYPTION$ECRYPTION
%NCRYPTIONANDDECRYPTIONAREHANDLEDINAMANNERVERYSIMILARTOCOMPRESSIONANDDECOMPRESSIONOF
(##DATA%NCRYPTIONISALWAYSDONEATTHEDATABASETIER WHILEDECRYPTIONCANBEDONEBYTHESTORAGE
SERVERSORBYTHEDATABASESERVERS7HENENCRYPTEDDATAISACCESSEDVIA3MART3CAN ITISDECRYPTEDON
THESTORAGESERVERS/THERWISE ITISDECRYPTEDONTHEDATABASESERVERS.OTETHATTHE8 ANDX 
PLATFORMSBOTHUSE)NTEL8EON7ESTMERECHIPSINTHESTORAGESERVERS8 USESTHESAMECHIPSINTHE
DATABASESERVERS BYTHEWAY 4HESECHIPSCONTAINASPECIALINSTRUCTIONSET)NTEL!%3 .) THATEFFECTIVELY
ADDSAHARDWAREBOOSTTOPROCESSESDOINGENCRYPTIONORDECRYPTION.OTETHAT/RACLE$ATABASE2ELEASE
ISNECESSARYTOTAKEADVANTAGEOFTHENEWINSTRUCTIONSET
%NCRYPTIONAND(##COMPRESSIONWORKWELLTOGETHER3INCECOMPRESSIONISDONEFIRST THEREISLESS
WORKNEEDEDFORPROCESSESDOINGENCRYPTIONANDDECRYPTIONON(##DATA.OTETHATTHE


#(!04%2 /&&,/!$).'3-!243#!.

CELL_OFFLOAD_DECRYPTIONPARAMETERCONTROLSTHISBEHAVIOR ANDTHATASITDOESWITHTHEHIDDEN
PARAMETER_CELL_OFFLOAD_HYBRIDCOLUMNAR SETTINGTHEPARAMETERTOAVALUEOFFALSECOMPLETELYDISABLES
3MART3CANSONENCRYPTEDDATA WHICHALSODISABLESDECRYPTIONATTHESTORAGELAYER

6IRTUAL#OLUMNS
Virtual columnsPROVIDETHEABILITYTODEFINEPSEUDO COLUMNSTHATCANBECALCULATEDFROMOTHERCOLUMNS
INATABLE WITHOUTACTUALLYSTORINGTHECALCULATEDVALUE6IRTUALCOLUMNSMAYBEUSEDASPARTITIONKEYS
USEDINCONSTRAINTS ORINDEXED#OLUMNLEVELSTATISTICSCANALSOBEGATHEREDONTHEM3INCETHEVALUESOF
VIRTUALCOLUMNSARENOTACTUALLYSTORED THEYMUSTBECALCULATEDONTHEFLYWHENTHEYAREACCESSED4HESE
CALCULATIONSCANBEOFFLOADEDWHENACCESSISVIA3MART3CANS
SYS@SANDBOX1> alter table kso.temp_skew add col1_plus_pk as (col1+pk_col);

Table altered.

SYS@SANDBOX1> select col1_plus_pk from kso.temp_skew where rownum < 10;

COL1_PLUS_PK
------------
27998260
27998258
27998256
27998254
27998252
27998250
27998248
27998246
27998244

9 rows selected.

SYS@SANDBOX1> select count(*) from kso.temp_skew where col1_plus_pk=27998244;

COUNT(*)
----------
2

SYS@SANDBOX> @fsx4
Enter value for sql_text: select count(*) from kso.temp_skew where col1_plus_pk=27998244
Enter value for sql_id:

SQL_ID CHILD OFFLOAD AVG_ETIME IO_SAVED_% SQL_TEXT


------------- ------ ------- ------------- ---------- --------------------
35tqjjq5vzg4b 0 Yes 1.14 99.99 select count(*) from

1 row selected.

SYS@SANDBOX1> @dplan
Enter value for sql_id: 35tqjjq5vzg4b


#(!04%2 /&&,/!$).'3-!243#!.

Enter value for child_no:

PLAN_TABLE_OUTPUT
---------------------------------------------------------------------------------------
SQL_ID 35tqjjq5vzg4b, child number 0
-------------------------------------
select count(*) from kso.temp_skew where col1_plus_pk=27998244

Plan hash value: 725706675

----------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
----------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | | | 44804 (100)| |
| 1 | SORT AGGREGATE | | 1 | 13 | | |
|* 2 | TABLE ACCESS STORAGE FULL| TEMP_SKEW | 320K| 4062K| 44804 (2)| 00:08:58 |
----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):


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

2 - storage("COL1"+"PK_COL"=27998244)
filter("COL1"+"PK_COL"=27998244)

20 rows selected.

SYS@SANDBOX1> alter session set "_cell_offload_virtual_columns"=false;

Session altered.

SYS@SANDBOX1> @flush_sql
Enter value for sql_id: 35tqjjq5vzg4b

PL/SQL procedure successfully completed.

SYS@SANDBOX1> select count(*) from kso.temp_skew where col1_plus_pk=27998244;

COUNT(*)
----------
2

1 row selected.

SYS@SANDBOX1> @fsx4
Enter value for sql_text: select count(*) from kso.temp_skew where col1_plus_pk=27998244
Enter value for sql_id:
Enter value for inst_id:

SQL_ID CHILD OFFLOAD AVG_ETIME IO_SAVED_% SQL_TEXT


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


#(!04%2 /&&,/!$).'3-!243#!.

35tqjjq5vzg4b 0 Yes 3.00 59.79 select count(*) from

1 row selected.

SYS@SANDBOX1> alter session set "_cell_offload_virtual_columns"=true;

Session altered.

SYS@SANDBOX1> select count(*) from kso.temp_skew where col1_plus_pk=27998244;

COUNT(*)
----------
2

1 row selected.

SYS@SANDBOX1> @fsx4
Enter value for sql_text: select count(*) from kso.temp_skew where col1_plus_pk=27998244
Enter value for sql_id:
Enter value for inst_id:

SQL_ID CHILD OFFLOAD AVG_ETIME IO_SAVED_% SQL_TEXT


------------- ------ ------- ------------- ---------- --------------------
35tqjjq5vzg4b 0 Yes 3.00 59.79 select count(*) from
35tqjjq5vzg4b 0 Yes 1.19 99.99 select count(*) from

2 rows selected.
4HISEXAMPLESHOWSTHATVIRTUALCOLUMNEVALUATIONCANBEOFFLOADED)TALSOSHOWSTHATTHE
OPTIMIZATIONCANBECONTROLLEDUSINGTHE_CELL_OFFLOAD_VIRTUAL_COLUMNSPARAMETER.OTETHATSTORAGE
INDEXESARENOTBUILTONVIRTUALCOLUMNS!SWITH&UNCTION/FFLOADING THEREALADVANTAGEOFOFFLOADING
VIRTUALCOLUMNCALCULATIONSHASMORETODOWITHREDUCINGTHEVOLUMEOFDATARETURNEDTOTHEDATABASE
SERVERSTHANWITHREDUCING#05USAGEONTHEDATABASETIER

$ATA-INING-ODEL3CORING
3OMEOFTHEDATAMODELSCORINGFUNCTIONSCANBEOFFLOADED'ENERALLYSPEAKINGTHISOPTIMIZATIONIS
AIMEDATREDUCINGTHEAMOUNTOFDATATRANSFERREDTOTHEDATABASETIERASOPPOSEDTOPURE#05
OFFLOADING!SWITHOTHERFUNCTION/FFLOADING YOUCANVERIFYWHICHDATAMININGFUNCTIONSCANBE
OFFLOADEDBYQUERYINGV$SQLFN_METADATA4HEOUTPUTLOOKSLIKETHIS
SYS@SANDBOX> select distinct name, version, offloadable
2 from V$SQLFN_METADATA
3 where name like 'PREDICT%'
4 order by 1,2;

NAME VERSION OFFLOADABLE


------------------------------ ------------ -----------
PREDICTION V10R2 Oracle YES
PREDICTION_BOUNDS V11R1 Oracle NO
PREDICTION_COST V10R2 Oracle YES
PREDICTION_DETAILS V10R2 Oracle NO


#(!04%2 /&&,/!$).'3-!243#!.

PREDICTION_PROBABILITY V10R2 Oracle YES


PREDICTION_SET V10R2 Oracle NO

6 rows selected.
!SYOUCANSEE SOMEOFTHEFUNCTIONSAREOFFLOADABLEANDSOMEARENOT4HEONESTHATARE
OFFLOADABLECANBEUSEDBYTHESTORAGECELLSFOR0REDICATE&ILTERING(ERESANEXAMPLEQUERYTHATSHOULD
ONLYRETURNRECORDSTHATMEETTHESCORINGREQUIREMENTSPECIFIEDINTHEWHERECLAUSE
select cust_id
from customers
where region = 'US'
and prediction_probability(churnmod,'Y' using *) > 0.8;
4HISOPTIMIZATIONISDESIGNEDTOOFFLOAD#05USAGEASWELLASREDUCETHEVOLUMEOFDATATRANSFERRED
(OWEVER ITISMOSTBENEFICIALINSITUATIONSWHEREITCANREDUCETHEDATARETURNEDTOTHEDATABASETIER
SUCHASINTHEPREVIOUSEXAMPLE

.ON 3MART3CAN/FFLOADING
4HEREAREAFEWOPTIMIZATIONSTHATARENOTRELATEDTOQUERYPROCESSING!STHESEARENOTTHEFOCUSOFTHIS
CHAPTERWEWILLONLYTOUCHONTHEMBRIEFLY

Smart File Creation


4HISOPTIMIZATIONHASASOMEWHATMISLEADINGNAME)TREALLYISANOPTIMIZATIONDESIGNEDTOSPEEDUP
BLOCKINITIALIZATION7HENEVERBLOCKSAREALLOCATED THEDATABASEMUSTINITIALIZETHEM4HISACTIVITY
HAPPENSWHENTABLESPACESARECREATED BUTITALSOOCCURSWHENFILESAREEXTENDEDFORANYNUMBEROF
OTHERREASONS/NNON %XADATASTORAGE THESESITUATIONSREQUIRETHEDATABASESERVERTOFORMATEACHBLOCK
ANDTHENWRITETHEMBACKTODISK!LLTHATREADINGANDWRITINGCAUSESALOTOFTRAFFICBETWEENTHEDATABASE
SERVERSANDTHESTORAGECELLS!SYOUARENOWAWARE ELIMINATINGTRAFFICBETWEENTHELAYERSISAPRIMARY
GOALOF%XADATA3OASYOUMIGHTIMAGINE THISTOTALLYUNNECESSARYTRAFFICHASBEENELIMINATED"LOCKSARE
FORMATTEDBYTHESTORAGECELLSTHEMSELVESWITHOUTHAVINGTOSENDTHEMTOTHEDATABASESERVERS4IME
SPENTWAITINGONTHISACTIVITYISRECORDEDBYTHE3MART&ILE#REATIONWAITEVENT4HISWAITEVENTANDTHE
OPERATIONSTHATINVOKEITARECOVEREDINMOREDETAILIN#HAPTER

RMAN Incremental Backups


%XADATASPEEDSUPINCREMENTALBACKUPSBYINCREASINGTHEGRANULARITYOFBLOCKCHANGETRACKING/NNON
%XADATAPLATFORMS BLOCKCHANGESARETRACKEDFORGROUPSOFBLOCKSON%XADATA CHANGESARETRACKEDFOR
INDIVIDUALBLOCKS4HISCANSIGNIFICANTLYDECREASETHENUMBEROFBLOCKSTHATMUSTBEBACKEDUP RESULTING
INSMALLERBACKUPSIZES LESS)/BANDWIDTH ANDREDUCEDTIMETOCOMPLETEINCREMENTALBACKUPS4HIS
FEATURECANBEDISABLEDBYSETTINGTHE_DISABLE_CELL_OPTIMIZED_BACKUPSPARAMETERTOAVALUEOFTRUE
4HISOPTIMIZATIONISCOVEREDIN#HAPTER

RMAN Restores
4HISOPTIMIZATIONSPEEDSUPTHEFILEINITIALIZATIONPORTIONWHENRESTORINGFROMBACKUPONACELL
!LTHOUGHRESTORINGDATABASESFROMBACKUPSISRARE THISOPTIMIZATIONCANALSOHELPSPEEDUPCLONINGOF


#(!04%2 /&&,/!$).'3-!243#!.

ENVIRONMENTS4HEOPTIMIZATIONREDUCES#05USAGEONTHEDATABASESERVERSANDREDUCESTRAFFICBETWEEN
THETWOTIERS)FTHE_CELL_FAST_FILE_RESTOREPARAMETERISSETTOAVALUEOFFALSE THISBEHAVIORWILLBE
DISABLED4HISOPTIMIZATIONISALSOCOVEREDIN#HAPTER

Smart Scan Prerequisites


3MART3CANSDONOTOCCURFOREVERYQUERYRUNON%XADATA4HEREARETHREEBASICREQUIREMENTSTHATMUST
BEMETFOR3MART3CANSTOOCCUR
v 4HEREMUSTBEAFULLSCANOFANOBJECT
v 4HESCANMUSTUSE/RACLES$IRECT0ATH2EADMECHANISM
v 4HEOBJECTMUSTBESTOREDON%XADATASTORAGE
4HEREISASIMPLEEXPLANATIONASTOWHYTHESEREQUIREMENTSEXIST/RACLEISA#PROGRAM4HE
FUNCTIONTHATPERFORMS3MART3CANSkcfis_read ISCALLEDBYTHEDIRECTPATHREADFUNCTIONkcbldrget
WHICHISCALLEDBYONEOFTHEFULLSCANFUNCTIONS)TSTHATSIMPLE9OUCANTGETTOTHEkcfis_readFUNCTION
WITHOUTTRAVERSINGTHECODEPATHFROMFULLSCANTODIRECTREAD!NDOFCOURSE THESTORAGEWILLHAVETOBE
RUNNING/RACLESSOFTWAREINORDERTOPROCESS3MART3CANS
7ELLDISCUSSEACHOFTHESEREQUIREMENTSINTURN

&ULL3CANS
)NORDERFORQUERIESTOTAKEADVANTAGEOF%XADATAS/FFLOADINGCAPABILITIES THEOPTIMIZERMUSTDECIDETO
EXECUTEASTATEMENTWITHA&ULL4ABLE3CANORA&AST&ULL)NDEX3CAN.OTETHAT)AMUSINGTHESETERMS
SOMEWHATGENERICALLY'ENERALLYSPEAKING THESETERMSCORRESPONDTOTABLE ACCESS FULLANDINDEX FAST
FULL SCANOPERATIONSOFANEXECUTIONPLAN7ITH%XADATA THESEFAMILIAROPERATIONSHAVEBEENRENAMED
SLIGHTLYTOSHOWTHATTHEYAREACCESSING%XADATASTORAGE4HENEWOPERATIONNAMESARETABLE ACCESS
STORAGE FULLANDINDEX STORAGE FAST FULL SCAN.OTETHATTHEREAREALSOSOMEMINORVARIATIONSOF
THESEOPERATIONS SUCHASMAT_VIEW ACCESS STORAGE FULL THATALSOQUALIFYFOR3MART3CANS9OUSHOULD
HOWEVER BEAWARETHATTHEFACTTHATYOUREXECUTIONPLANSHOWSATABLE ACCESS STORAGE FULLOPERATION
DOESNOTMEANTHATYOURQUERYWASPERFORMEDWITHA3MART3CAN)TMERELYMEANSTHATTHISPREREQUISITE
HASBEENSATISFIED7ELLDISCUSSHOWTOVERIFYWHETHERASTATEMENTWASACTUALLY/FFLOADEDVIAA3MART
3CANALITTLELATERINTHISCHAPTER

$IRECT0ATH2EADS
)NADDITIONTOREQUIRING&ULL3CANOPERATIONS 3MART3CANSALSOREQUIRETHATTHEREADOPERATIONSBE
EXECUTEDVIA/RACLES$IRECT0ATH2EADMECHANISM$IRECT0ATH2EADSHAVEBEENAROUNDFORALONGTIME
4RADITIONALLY THISREADMECHANISMHASBEENUSEDBYSLAVEPROCESSES WHICHSERVICEPARALLELQUERIES
"ECAUSEPARALLELQUERIESWEREORIGINALLYEXPECTEDTOBEUSEDFORACCESSINGVERYLARGEAMOUNTSOFDATA
TYPICALLYMUCHTOOLARGETOFITINTHE/RACLEBUFFERCACHE ITWASDECIDEDTHATTHEPARALLELSLAVESSHOULD
READDATADIRECTLYINTOTHEIROWNMEMORYALSOKNOWNASTHEPROGRAMGLOBALAREAOR0'! 4HE$IRECT
0ATH2EADMECHANISMCOMPLETELYBYPASSESTHESTANDARD/RACLECACHINGMECHANISMOFPLACINGBLOCKSIN
THEBUFFERCACHE4HISWASAVERYGOODTHINGFORVERYLARGEDATASETS ASITELIMINATEDEXTRAWORKTHATWAS
EXPECTEDTONOTBEHELPFULCACHINGFULLTABLESCANDATATHATWOULDPROBABLYNOTBEREUSED ANDKEPT
THEMFROMFLUSHINGOTHERDATAOUTOFTHECACHE!NDASWEPREVIOUSLYMENTIONED THEkcfisKERNELFILE
INTELLIGENTSTORAGE FUNCTIONSAREBURIEDUNDERTHEkcbldrgetKERNELBLOCKDIRECTREADGET FUNCTION
4HEREFORE 3MART3CANSCANONLYBEPERFORMEDIFTHEDIRECTPATHREADMECHANISMISBEINGUSED


#(!04%2 /&&,/!$).'3-!243#!.

)NADDITIONTOPARALLELSLAVES DIRECTPATHREADSAREPOSSIBLEFORNON PARALLEL31,STATEMENTS WHEN


CONDITIONSARERIGHT4HEREISAHIDDENPARAMETER _SERIAL_DIRECT_READ WHICHCONTROLSTHISFEATURE
7HENTHISPARAMETERISSETTOITSDEFAULTVALUEAUTO /RACLEAUTOMATICALLYDETERMINESWHETHERTOUSE
DIRECTPATHREADSFORNON PARALLELSCANS4HECALCULATIONISBASEDONSEVERALFACTORSINCLUDINGTHESIZEOF
THEOBJECT THESIZEOFTHEBUFFERCACHEANDHOWMANYOFTHEOBJECTSBLOCKSAREALREADYINTHEBUFFER
CACHE4HEREISALSOAHIDDENPARAMETER_SMALL_TABLE_THRESHOLD WHICHPLAYSAROLEINDETERMINING
HOWBIGATABLEMUSTBEBEFOREITWILLBECONSIDEREDFORSERIALDIRECTPATHREADS4HEALGORITHMFOR
DETERMININGWHETHERTOUSETHEDIRECTPATHREADMECHANISMONNON PARALLELSCANSISNOTPUBLISHED
7HILETHEABILITYTODOSERIALDIRECTPATHREADSHASBEENAROUNDFORSOMETIME ITHASONLYRECENTLY
BECOMEARELATIVELYCOMMONOCCURRENCE/RACLE$ATABASEG2HASAMODIFIEDVERSIONOFTHE
CALCULATIONSUSEDTODETERMINEWHETHERTOUSEDIRECTPATHREADSFORNON PARALLELSCANS4HENEW
MODIFICATIONSTOTHEALGORITHMMAKETHEDIRECTPATHREADMECHANISMMUCHMORELIKELYTOOCCURTHANIT
WASINPREVIOUSVERSIONS4HISWASPROBABLYDONEASARESULTOF%XADATAS3MART3CANOPTIMIZATIONSAND
THEDESIREFORTHEMTOBETRIGGEREDWHENEVERPOSSIBLE4HEALGORITHMMAYBESOMEWHATOVERLYAGGRESSIVE
ONNON %XADATAPLATFORMS

■.OTE-Y/RACLE3UPPORT.OTECONTAINSTHEFOLLOWINGSTATEMENT

There have been changes in 11g in the heuristics to choose between direct path reads or reads through buffer
cache for serial table scans. In 10g, serial table scans for "large" tables used to go through cache (by default)
which is not the case anymore. In 11g, this decision to read via direct path or through cache is based on the size
of the table, buffer cache size and various other stats. Direct path reads are faster than scattered reads and have
less impact on other processes because they avoid latches.

%XADATA3TORAGE
/FCOURSETHEDATABEINGSCANNEDMUSTBESTOREDON%XADATASTORAGEINORDERFOR3MART3CANSTOOCCUR)T
ISPOSSIBLETOCREATE!3-DISKGROUPSTHATACCESSNON %XADATASTORAGEON%XADATADATABASESERVERS!ND
OFCOURSEITMAKESSENSETHATANY31,STATEMENTSACCESSINGOBJECTSDEFINEDUSINGTHESENON %XADATA
DISKGROUPSWILLNOTBEELIGIBLEFOR/FFLOADING7HILEITISUNUSUAL ITISALSOPOSSIBLETOCREATE!3-
DISKGROUPSUSINGACOMBINATIONOF%XADATAANDNON %XADATASTORAGE4HISMIGHTBEDONETOFACILITATEA
MIGRATIONVIAAN!3-REBALANCE FOREXAMPLE1UERIESAGAINSTOBJECTSWHOSESEGMENTSRESIDEONTHESE
MIXEDSTORAGEDISKGROUPSAREALSONOTELIGIBLEFOR/FFLOADING4HEREISACTUALLYANATTRIBUTEASSIGNEDTO
!3-DISKGROUPScell.smart_scan_capable THATSPECIFIESWHETHERADISKGROUPISCAPABLEOFPROCESSING
3MART3CANS4HISATTRIBUTEMUSTBESETTOFALSEBEFORENON %XADATASTORAGECANBEASSIGNEDTOAN!3-
DISKGROUP(ERESALISTINGSHOWINGTHEPROCESSOFCREATINGAMIXEDSTORAGEDISKGROUPANDTHEEFFECTSON
QUERIESAGAINSTATABLEWITHSEGMENTSSTOREDINTHATDISKGROUP.OTETHATWEAREJUMPINGAHEADINTHIS
EXAMPLE SOSOMEOFTHECOMMANDSMAYNOTMAKEALOTOFSENSEYET$ONTWORRYWELLCOVERTHEDETAILS
INDUETIME&ORNOWWEJUSTWANTYOUTOSEETHATYOUCANACCESSNON %XADATASTORAGE BUTTHATITWILL
DISABLETHE%XADATASTORAGE BASEDOPTIMIZATIONS
SYS@+ASM> -- Add non-Exadata storage

SYS@+ASM> alter diskgroup SMITHERS add failgroup LOCAL disk '/dev/raw/raw5','/dev/raw/raw6';


#(!04%2 /&&,/!$).'3-!243#!.

alter diskgroup SMITHERS add failgroup LOCAL disk '/dev/raw/raw5','/dev/raw/raw6'


*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15285: disk '/dev/raw/raw5' violates disk group attribute cell.smart_scan_capable
ORA-15285: disk '/dev/raw/raw6' violates disk group attribute cell.smart_scan_capable

SYS@+ASM> alter diskgroup smithers set attribute 'cell.smart_scan_capable' = 'FALSE';

Diskgroup altered.

SYS@+ASM> alter diskgroup SMITHERS add failgroup LOCAL disk '/dev/raw/raw5','/dev/raw/raw6';

Diskgroup altered.

SYS@+ASM> select name, total_mb from v$asm_diskgroup where state='MOUNTED'

NAME TOTAL_MB
-------------------------------------------------- --------
SMITHERS 512,000
SMITHERS_LOCAL 1,562

SYS@+ASM> select g.name "diskgroup", d.path "disk", d.failgroup "failgroup", d.total_mb "disk
size" from v$asm_diskgroup g, v$asm_disk d where g.group_number=d.group_number and
g.state='MOUNTED'

diskgroup disk failgroup disk size


--------------- ------------------------------------- ----------------------- ---------
SMITHERS /dev/raw/raw5 LOCAL 102,400
SMITHERS /dev/raw/raw6 LOCAL 102,400
SMITHERS o/192.168.12.3/SMITHERS_CD_05_cell01 ENKCEL01 102,400
SMITHERS o/192.168.12.4/SMITHERS_CD_05_cell02 ENKCEL02 102,400
SMITHERS o/192.168.12.5/SMITHERS_CD_05_cell03 ENKCEL03 102,400
SMITHERS_LOCAL /dev/raw/raw1 SMITHERS_LOCAL_0000 781
SMITHERS_LOCAL /dev/raw/raw2 SMITHERS_LOCAL_0001 781

7 rows selected.
7ESTARTEDOUTWITHADISKGROUPON%XADATASTORAGETHATCONTAINEDATABLECOMPRESSEDWITH(##
7HENWEINITIALLYTRIEDTOADDTHENON %XADATASTORAGETOTHATDISKGROUP WEGOTANERRORSAYINGWEHAD
VIOLATEDTHEcell.smart_scan_capableDISKGROUPATTRIBUTE/NCEWECHANGEDTHEATTRIBUTE SETTINGITTO
FALSE WEWEREABLETOADDTHENON %XADATASTORAGEOFCOURSE CHANGINGTHISSETTINGDISABLES3MART
3CANSONANYOBJECTWITHSEGMENTSSTOREDINTHISDISKGROUP 7ETHENLOGGEDONTOTHEDATABASEAND
TRIEDTOACCESSOURCOMPRESSEDTABLE
SYS@SMITHERS> select table_name, compression, compress_for
2 from dba_tables where owner='ACOLVIN';


#(!04%2 /&&,/!$).'3-!243#!.

TABLE_NAME COMPRESS COMPRESS_FOR


------------------------------ -------- ------------
SKEW3 ENABLED QUERY HIGH

SYS@SMITHERS> @table_size
Enter value for owner: ACOLVIN
Enter value for table_name: SKEW3
Enter value for type: TABLE

OWNER SEGMENT_NAME TYPE TOTALSIZE_MEGS TS


-------------------- ------------------------------ ------------------ -------------- -----
ACOLVIN SKEW3 TABLE 1,020.0 USERS
--------------
sum 1,020.0

SYS@SMITHERS> select count(*) from acolvin.skew3 where col1<0;


select count(*) from acolvin.skew3 where col1<0
*
ERROR at line 1:
ORA-64307: hybrid columnar compression is only supported in tablespaces residing on Exadata«
storage

SYS@SMITHERS> alter table acolvin.skew3 move nocompress;

Table altered.

SYS@SMITHERS> select /*+ parallel (a 8) */ count(*) from acolvin.skew3 a;

COUNT(*)
----------
384000048

Elapsed: 00:03:24.64
SYS@SMITHERS> @fsx4
Enter value for sql_text: select /*+ parallel (a 8) */ count(*) from acolvin.skew3 a
Enter value for sql_id:

SQL_ID CHILD OFFLOAD IO_SAVED_% AVG_ETIME SQL_TEXT


------------- ------ ------- ---------- ------------- --------------------
5y9jm9pfbrg7q 0 No .00 204.58 select /*+ parallel

1 row selected.

SYS@SMITHERS> @table_size
Enter value for owner: ACOLVIN
Enter value for table_name: SKEW3
Enter value for type: TABLE

OWNER SEGMENT_NAME TYPE TOTALSIZE_MEGS TS


-------------------- ------------------------------ ------------------ -------------- -----
ACOLVIN SKEW3 TABLE 13,814.0 USERS
--------------


#(!04%2 /&&,/!$).'3-!243#!.

sum 13,814.0

1 row selected.
3OADDINGTHENON %XADATASTORAGEALSODISABLED(##7EHADTODECOMPRESSTHETABLESIMPLYTO
ACCESSIT/NCETHISWASDONEWEEXECUTEDAPARALLELQUERYONTHETABLEAND ASYOUCANSEE THEQUERY
WASNOT/FFLOADED3OALLTHATWASTOSHOWTHATYOUNEED%XADATASTORAGETODO3MART3CANS

Smart Scan Disablers


4HEREARESITUATIONSWHERE3MART3CANSAREEFFECTIVELYDISABLED4HESIMPLECASEISWHERETHEYHAVENOT
BEENENABLEDINTHECODEYET ANDSO3MART3CANSDONTHAPPENATALL4HEREAREOTHERCASESWHERE
/RACLESTARTSDOWNTHE3MART3CANPATHBUTTHESTORAGESOFTWAREEITHERDECIDES ORISFORCED TOREVERTTO
BLOCKSHIPPINGMODE'ENERALLYTHISDECISIONISMADEONABLOCK BY BLOCKBASIS

3IMPLY5NAVAILABLE
$URINGTHEDISCUSSIONOF3MART3CANOPTIMIZATIONSWEHAVECOVEREDTHEPREREQUISITESTHATMUSTBEMET
TOENABLE3MART3CANS(OWEVER EVENWHENTHOSECONDITIONSAREMET THEREARECIRCUMSTANCESTHAT
PREVENT3MART3CANS(EREAREAFEWOTHERSITUATIONSTHATARENOTRELATEDTOSPECIFICOPTIMIZATIONS BUT
WHERE3MART3CANSSIMPLYCANNOTBEUSEDATLEASTASOFcellsrvVERSION 
v 3MART3CANSCANNOTBEUSEDONCLUSTEREDTABLES
v 3MART3CANSCANNOTBEUSEDON)NDEX/RGANIZED4ABLES)/4S 
v 3MART3CANSCANNOTBEUSEDONTABLESWITHROWDEPENDENCIESENABLED

2EVERTINGTO"LOCK3HIPPING
4HEREARESITUATIONSWHERE3MART3CANSAREUSED BUTFORVARIOUSREASONScellsrvREVERTSTOBLOCK
SHIPPINGMODE4HISISAVERYCOMPLEXTOPIC ANDWESTRUGGLEDWITHWHETHERTOINCLUDEITINAN
INTRODUCTORYCHAPTERONOFFLOADING"UTITISAFUNDAMENTALCONCEPTANDSOINTHEENDWEDECIDEDTO
DISCUSSITHERE
7EVEDESCRIBEDHOW3MART3CANSAVOIDTRANSFERRINGLARGEAMOUNTSOFDATATOTHEDATABASELAYERBY
RETURNINGPREFILTEREDDATADIRECTLYTOTHE0'!4HEKEYCONCEPTTOUNDERSTANDHEREISTHAT3MART3CANS
CANCHOOSEORBEFORCED TORETURNCOMPLETEBLOCKSTOTHE3'!"ASICALLYANYSITUATIONTHATWOULDCAUSE
/RACLETOHAVETOREADANOTHERBLOCKTOCOMPLETEARECORDWILLCAUSETHISTOHAPPEN!CHAINEDROWIS
PERHAPSTHESIMPLESTEXAMPLE7HEN/RACLEENCOUNTERSACHAINEDROW THEHEADPIECEWILLCONTAINA
POINTERTOTHEBLOCKCONTAININGTHESECONDROWPIECE3INCETHESTORAGECELLSDONOTCOMMUNICATE
DIRECTLYWITHEACHOTHER ANDITISUNLIKELYTHATTHECHAINEDBLOCKRESIDESONTHESAMESTORAGECELL
cellsrvSIMPLYSHIPSTHEENTIREBLOCKANDALLOWSTHEDATABASELAYERTODEALWITHIT
3OINTHISVERYSIMPLECASE THE3MART3CANISPAUSEDMOMENTARILY ANDASINGLEBLOCKREADIS
EFFECTIVELYPERFORMED WHICHMOTIVATESANOTHERSINGLEBLOCKREADTOGETTHEADDITIONALROWPIECE+EEPIN
MINDTHATTHISISAVERYSIMPLECASE4HISSAMEBEHAVIORCOMESINTOPLAYWHEN/RACLEMUSTDEALWITH
READCONSISTENCYISSUES&OREXAMPLE IF/RACLENOTICESTHATABLOCKIShNEWERvTHANTHECURRENTQUERY THE
PROCESSOFFINDINGANAGE APPROPRIATEVERSIONOFTHEBLOCKISLEFTFORTHEDATABASELAYERTODEALWITH4HIS
EFFECTIVELYPAUSESTHE3MART3CANPROCESSINGWHILETHEDATABASEDOESITSTRADITIONALREADCONSISTENCY
PROCESSING
3OISTHISREALLYIMPORTANT ANDWHYSHOULDYOUCARE4HEANSWER OFCOURSE ISTHATITDEPENDS)N
MOSTCASESYOUPROBABLYWONTCARE/RACLEGUARANTEESTHATREADSWILLBECONSISTENT EVENWHENDOING


#(!04%2 /&&,/!$).'3-!243#!.

3MART3CANS4HISISANIMPORTANTPOINT BYTHEWAY4HEFACTTHAT/RACLEBEHAVESEXACTLYTHESAMEFROM
THEAPPLICATIONSTANDPOINT REGARDLESSOFWHETHER3MART3CANSAREUSEDORNOTISABIGDEAL4HEFACTTHAT
/RACLEMAYDOSOMESINGLEBLOCKREADSALONGWITHITS3MART3CANISOFLITTLECONCERNIFTHERESULTSARE
CORRECTANDTHEPERFORMANCEISNOTSEVERELYIMPACTED ANDINMOSTCASESITWONTBE4HEREARECASES
THOUGH WHERECHOOSINGTODOA3MART3CANANDTHENREVERTINGTOBLOCKSHIPPINGMODECANBEPAINFUL
FROMAPERFORMANCESTANDPOINT4HESEARETHECASESWHEREITSIMPORTANTTOUNDERSTANDWHATSGOINGON
UNDERTHECOVERS9OULLFINDMOREINFORMATIONONTHISISSUEIN#HAPTER

3KIPPING3OME/FFLOADING
!NOTHERVERYCOMPLEXBEHAVIORTHATWEWILLONLYMENTIONBRIEFLYISTHEABILITYOFCELLSRVTOREFUSETODO
SOMEOFTHENORMALOFFLOADPROCESSING4HISCANBEDONETOAVOIDOVERLOADINGTHE#05RESOURCESONTHE
STORAGECELLSFOREXAMPLE!GOODEXAMPLEOFTHISBEHAVIOROCCURSWHENDECOMPRESSING(##DATA
$ECOMPRESSIONISANEXTREMELY#05INTENSIVETASK ESPECIALLYFORTHEHIGHERLEVELSOFCOMPRESSION)N
LATERVERSIONSOFTHESTORAGESOFTWAREANDLATER CELLSRVCANCHOOSETOSKIPTHEDECOMPRESSION
STEPONSOMEPORTIONOFTHEDATAWHENTHE#05SONTHESTORAGECELLSAREVERYBUSYANDTHEDATABASE
HOSTS#05ARENOTVERYBUSY4HISEFFECTIVELYMOVESSOMEOFTHEWORKLOADBACKTOTHEDATABASETIERBY
FORCINGTHEDATABASEHOSTSTODOTHEDECOMPRESSION)NTHISCASE SOMESTEPSSUCHASPROJECTIONMAYSTILL
BEDONEONTHESTORAGECELLS DESPITETHEFACTTHATTHEDECOMPRESSIONSTEPISSKIPPED!S+EVINHAS
ALREADYPOINTEDOUT THISSELECTIVEDETERMINATIONOFWHICHOFFLOADPROCESSINGTODOCANMAKETHE
BOUNDARIESBETWEENTHETIERSVERYFLUIDANDDIFFICULTTOMONITOR#HAPTERCOVERSSOMETECHNIQUESFOR
MONITORINGTHISBEHAVIOR

How to Verify That Smart Scan is Happening


/NEOFTHEMOSTIMPORTANTTHINGSYOUCANLEARNABOUT%XADATAISHOWTOIDENTIFYWHETHERAQUERYHAS
BEENABLETOTAKEADVANTAGEOF3MART3CANS4HISISNOTASEASYASITSOUNDS5NFORTUNATELY THENORMAL
EXECUTIONPLANOUTPUTPRODUCEDBYTHEDBMS_XPLANPACKAGEWILLNOTSHOWYOUWHETHERA3MART3CANWAS
USEDORNOT(ERESANEXAMPLE
PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------------
SQL_ID 05cq2hb1r37tr, child number 0
-------------------------------------
select avg(pk_col) from kso.skew a where col1 > 0

Plan hash value: 568322376

-----------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-----------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | | | 44486 (100)| |
| 1 | SORT AGGREGATE | | 1 | 11 | | |
|* 2 | TABLE ACCESS STORAGE FULL| SKEW | 32M| 335M| 44486 (1)| 00:08:54 |
-----------------------------------------------------------------------------------

Predicate Information (identified by operation id):


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


#(!04%2 /&&,/!$).'3-!243#!.

2 - storage("COL1">0)
filter("COL1">0)
.OTICETHATTHEOPTIMIZERCHOSEATABLE ACCESS STORAGE FULLOPERATIONANDTHATTHEPREDICATE
SECTIONSHOWSAstorage()PREDICATEASSOCIATEDWITHSTEPOFTHEPLAN"OTHOFTHESECHARACTERISTICS
INDICATETHATA3MART3CANWASPOSSIBLE BUTNEITHERPROVIDESADEFINITIVEVERIFICATION)NFACT THE
STATEMENTINTHISLISTINGWASnotEXECUTEDWITHA3MART3CAN

■.OTE!NINTERESTINGFEATUREOFTHEPLANOUTPUTISWORTHMENTIONING.OTICETHATINTHEPREDICATESECTIONTHEREISA
storage()CLAUSEANDTHEREISAMATCHINGfilter()CLAUSETHATBOTHPERFORMTHESAMECOMPARISON7E
SCRATCHEDOURHEADSABOUTTHISFORAWHILE WONDERINGWHETHERTHESECLAUSESREPRESENTEDSEPARATEPARTSOFTHE
PLANORWHETHERITWASJUSTAQUIRKOFTHE80,!.OUTPUT4HEREISACTUALLYAVERYSIMPLEEXPLANATIONFORTHIS
BEHAVIOR4HECELLSHAVETOFALLBACKTOREGULARBLOCK)/INANUMBEROFCASES7HENA3MART3CANHITSACHAINED
ROW FOREXAMPLE THATBLOCKMUSTBERETURNEDINITSENTIRETYTOTHE$"LAYER3INCETHEREISNOSUCHTHINGASA
GUARANTEEDhPUREv3MART3CAN AFILTEROPERATIONMUSTBEINCLUDEDINTHEPLANINADDITIONTOTHEFILTERINGPROVIDED
BYTHESTORAGECELLSREPRESENTEDBYTHEstorage()CLAUSE 3OTHETWOPREDICATESACTUALLYREPRESENTTWODISTINCT
OPERATIONS+EEPINMIND THOUGH THATTHEYWILLNOTOVERLAP4HEfilter()OPERATIONWILLBEDONEONROWSRETURNED
VIATHEBLOCKSHIPPINGMODE WHILETHEstorage()OPERATIONWILLBEPERFORMEDONTHESTORAGECELLSFORTHEROWS
THATCANBERETURNEDDIRECTLYTOTHE0'!VIATHENORMAL3MART3CANMECHANISM

4HEFACTTHATEXECUTIONPLANSDONOTSHOWWHETHERA3MART3CANWASPERFORMEDISABITFRUSTRATING
(OWEVER THEREARESEVERALTECHNIQUESTHATWECANUSETOWORKAROUNDTHISISSUE7ELLCOVERAFEW
OPTIONSINTHENEXTSEVERALSECTIONS

4RACE
/NEOFTHEMOSTSTRAIGHTFORWARDWAYSTODETERMINEWHETHERA3MART3CANWASUSEDISTOENABLEA
TRACEONTHESTATEMENTINQUESTION5NFORTUNATELY THISISABITCUMBERSOMEANDDOESNTALLOWYOUTODO
ANYINVESTIGATIONINTOWHATHASHAPPENEDWITHPASTEXECUTIONS.EVERTHELESS TRACINGISAFAIRLYFOOLPROOF
WAYTOVERIFYWHETHERA3MART3CANWASUSEDORNOT)F3MART3CANWASUSED THEREWILLBECELL SMART
TABLE SCANORCELL SMART INDEX SCANEVENTSINTHETRACEFILE(EREISANEXCERPTFROMTHETRACEFILE
COLLECTEDFORTHEPREVIOUSSTATEMENT
PARSING IN CURSOR #47387827351064 len=49 dep=0 uid=0 oct=3 lid=0 tim=1297219338278533
hv=3279003447 ad='2c8743808' sqlid='05cq2hb1r37tr'
select avg(pk_col) from kso.skew a where col1 > 0
END OF STMT
PARSE #47387827351064:c=57991,e=78256,p=25,cr=199,cu=0,mis=1,r=0,dep=0,
og=1,plh=568322376,tim=12
EXEC #47387827351064:c=0,e=14,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,plh=568322376,tim=1297
WAIT #47387827351064: nam='SQL*Net message to client' ela= 2 . . .
WAIT #47387827351064: nam='cell single block physical read' ela= 487 . . .
WAIT #47387827351064: nam='cell multiblock physical read' ela= 25262 . . .


#(!04%2 /&&,/!$).'3-!243#!.

*** 2011-02-08 20:42:19.106


WAIT #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.107


WAIT #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 . . .
.OTICETHATTHEREARENO3MART3CANWAITEVENTSINTHETRACEFILEOUTPUT&ORCOMPARISON HEREISA
BRIEFEXCERPTFROMASTATEMENTUSING3MART3CAN
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.skew
END OF STMT
PARSE #2:c=2000,e=2424,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,plh=568322376
EXEC #2:c=0,e=34,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,plh=568322376
WAIT #2: nam='SQL*Net message to client' ela= 3 driver id=1650815232 #bytes=1 p3=0 obj#=-1
WAIT #2: nam='ges message buffer allocation' ela= 2 pool=0 request=1 allocated=0 obj#=-1
WAIT #2: nam='KJC: Wait for msg sends to complete' ela= 10 msg=6674450368 dest|rcvr=65536
WAIT #2: nam='reliable message' ela= 1107 channel context=6712270872 channel handle=66967991
WAIT #2: nam='ges message buffer allocation' ela= 1 pool=0 request=1 allocated=0 obj#=-1
WAIT #2: nam='enq: KO - fast object checkpoint' ela= 104 name|mode=126 2=65575 0=1 obj#=-1
WAIT #2: nam='ges message buffer allocation' ela= 1 pool=0 request=1 allocated=0 obj#=-1
WAIT #2: nam='enq: KO - fast object checkpoint' ela= 103 name|mode=126 2=65575 0=2 obj#=-1
WAIT #2: nam='cell smart table scan' ela= 162 cellhash#=2133459483 p2=0 p3=0 obj#=66849
WAIT #2: nam='cell smart table scan' ela= 244 cellhash#=379339958 p2=0 p3=0 obj#=66849
WAIT #2: nam='cell smart table scan' ela= 181 cellhash#=3176594409 p2=0 p3=0 obj#=66849
WAIT #2: nam='cell smart table scan' ela= 1285 cellhash#=2133459483 p2=0 p3=0 obj#=66849
WAIT #2: nam='cell smart table scan' ela= 1327 cellhash#=379339958 p2=0 p3=0 obj#=66849
WAIT #2: nam='cell smart table scan' ela= 1310 cellhash#=3176594409 p2=0 p3=0 obj#=66849
WAIT #2: nam='cell smart table scan' ela= 19755 cellhash#=3176594409 p2=0 p3=0 obj#=66849
WAIT #2: nam='cell smart table scan' ela= 39 cellhash#=3176594409 p2=0 p3=0 obj#=66849
!SYOUCANSEE THISTRACEFILECONTAINSSEVERALCELL SMART TABLE SCANWAITEVENTS4HEREISNODOUBT
THATTHISSTATEMENTWASOFFLOADED7ECOVER%XADATA SPECIFICAND RELATEDWAITEVENTSINDETAILIN
#HAPTER

0ERFORMANCE3TATISTICSVSESSSTAT
/FCOURSE WECANALSOLOOKATSOMEOFTHEPERFORMANCEVIEWSSUCHASV$SESSSTATAND
V$ACTIVE_SESSION_HISTORY4ANEL0ODERS3NAPPERSCRIPTPROVIDESAGREATWAYTOSEEWHATWAITEVENTSARE
BEINGGENERATEDWHILEASTATEMENTISRUNNINGBUTAGAIN YOUMUSTCATCHITINTHEACTTOVERIFYWHATS
HAPPENING!CTIVE3ESSION(ISTORY!3( ISGOODASWELL BUTSINCETHEDATAISSAMPLED THEREISNO
GUARANTEETHATITWILLCATCHTHEWAITEVENTYOUARELOOKINGFOR.EVERTHELESS PERFORMANCESTATISTICS
PROVIDEARELIABLESOURCEOFDATAASLONGASYOUCANACCESSTHESYSTEMDURINGTHEEXECUTIONOFTHE
STATEMENTYOUAREINVESTIGATING(ERESANEXAMPLEUSINGV$MYSTATS WHICHISSIMPLYAVERSIONOF
V$SESSSTATTHATLIMITSDATATOYOURCURRENTSESSION&ORTHISEXAMPLEWELLLOOKATTHEcell scansSTATISTIC
WHICHISINCREMENTEDWHENA3MART4ABLE3CANOCCURS


#(!04%2 /&&,/!$).'3-!243#!.

SYS@dbm1> set echo on


SYS@dbm1> @mystats
SYS@dbm1> select name, value
2 from v$mystat s, v$statname n
3 where n.statistic# = s.statistic#
4 and name like nvl('%&name%',name)
5 order by 1
6 /
Enter value for name: cell scans

NAME VALUE
---------------------------------------------------------------------- ---------------
cell scans 833

1 row selected.

SYS@dbm1> set echo off


SYS@dbm1> select avg(pk_col) from kso.skew2 a where col1 > 0;

AVG(PK_COL)
-----------
16093748.8

1 row selected.

SYS@dbm1> @mystats
Enter value for name: cell scan

NAME VALUE
---------------------------------------------------------------------- ---------------
cell scans 834

1 row selected.

SYS@dbm1> alter session set cell_offload_processing=false;

Session altered.

SYS@dbm1> select avg(pk_col) from kso.skew2 a where col1 > 0;

AVG(PK_COL)
-----------
16093748.8

1 row selected.

SYS@dbm1> @mystats
Enter value for name: cell scans


#(!04%2 /&&,/!$).'3-!243#!.

NAME VALUE
---------------------------------------------------------------------- ---------------
cell scans 834

1 row selected.
3OASYOUCANSEE THEFIRSTTIMETHESTATEMENTWASEXECUTEDITWASOFFLOADED ANDTHEcell scans
STATISTICWASINCREMENTEDFROMTO7ETHENTURNEDOFF3MART3CANSANDRANTHESTATEMENTAGAIN
4HISTIMETHESTATISTICWASNOTINCREMENTED3OTHISAPPROACHWORKSWELLASLONGASWECANCATCHTHE
STATEMENTSOFINTERESTINACTION.OTETHAT/RACLEPERFORMANCESTATISTICSARECOMPLEMENTARYTOTHE
/RACLEWAITEVENTINTERFACEANDPROVIDEINFORMATIONTHATISJUSTNOTAVAILABLEELSEWHERE7ECOVERTHE
%XADATA RELATEDSTATISTICSINDETAILIN#HAPTER

/FFLOAD%LIGIBLE"YTES
4HEREISANOTHERCLUETOWHETHERASTATEMENTUSEDA3MART3CANORNOT!SWEVEALREADYMENTIONED THE
V$SQLFAMILYOFVIEWSCONTAINACOLUMNCALLEDIO_CELL_OFFLOAD_ELIGIBLE_BYTES WHICHSHOWSTHE
NUMBEROFBYTESTHATAREELIGIBLEFOR/FFLOADING4HISCOLUMNCANBEUSEDASANINDICATOROFWHETHERA
STATEMENTUSEDA3MART3CAN)TAPPEARSTHATTHISCOLUMNISSETTOAVALUEGREATERTHANONLYWHENA
3MART3CANISUSED7ECANMAKEUSEOFTHISOBSERVATIONTOWRITEALITTLESCRIPTfsx.sql THATRETURNSA
VALUEOF9%3OR./DEPENDINGONWHETHERTHATCOLUMNINV$SQLHASAVALUEGREATERTHAN4HEOUTPUTOF
THESCRIPTISALITTLETOOWIDETOFITINABOOKFORMAT SOWEVEUSEDACOUPLEOFCUT DOWNVERSIONSINOUR
EXAMPLES!NDOFCOURSE ALLOFTHEVERSIONSWILLBEAVAILABLEINTHEONLINECODEREPOSITORY9OUVEALREADY
SEENTHESCRIPTINACTIONINSEVERALOFTHEPREVIOUSSECTIONS(ERESWHATSINSIDETHESCRIPTANDAN
EXAMPLEOFITSUSE
SYS@SANDBOX1> !cat fsx.sql
----------------------------------------------------------------------------------------
--
-- File name: fsx.sql
--
-- Purpose: Find SQL and report whether it was Offloaded and % of I/O saved.
--
-- Usage: This scripts prompts for two values.
--
-- sql_text: a piece of a SQL statement like %select col1, col2 from skew%
--
-- sql_id: the sql_id of the statement if you know it (leave blank to ignore)
--
-- Description:
--
-- This script can be used to locate statements in the shared pool and
-- determine whether they have been executed via Smart Scans.
--
-- It is based on the observation that the IO_CELL_OFFLOAD_ELIGIBLE_BYTES
-- column in V$SQL is only greater than 0 when a statement is executed
-- using a Smart Scan. The IO_SAVED_% column attempts to show the ratio of
-- of data received from the storage cells to the actual amount of data
-- that would have had to be retrieved on non-Exadata storage. Note that
-- as of 11.2.0.2, there are issues calculating this value with some queries.
--
-- Note that the AVG_ETIME will not be acurate for parallel queries. The


#(!04%2 /&&,/!$).'3-!243#!.

-- ELAPSED_TIME column contains the sum of all parallel slaves. So the


-- script divides the value by the number of PX slaves used which gives an
-- approximation.
--
-- Note also that if parallel slaves are spread across multiple nodes on
-- a RAC database the PX_SERVERS_EXECUTIONS column will not be set.
--
---------------------------------------------------------------------------------------
set pagesize 999
set lines 190
col sql_text format a70 trunc
col child format 99999
col execs format 9,999
col avg_etime format 99,999.99
col "IO_SAVED_%" format 999.99
col avg_px format 999
col offload for a7

select sql_id, child_number child, plan_hash_value plan_hash, executions execs,


(elapsed_time/1000000)/decode(nvl(executions,0),0,1,executions)/
decode(px_servers_executions,0,1,px_servers_executions/
decode(nvl(executions,0),0,1,executions)) avg_etime,
px_servers_executions/decode(nvl(executions,0),0,1,executions) avg_px,
decode(IO_CELL_OFFLOAD_ELIGIBLE_BYTES,0,'No','Yes') Offload,
decode(IO_CELL_OFFLOAD_ELIGIBLE_BYTES,0,0,
100*(IO_CELL_OFFLOAD_ELIGIBLE_BYTES-IO_INTERCONNECT_BYTES)
/decode(IO_CELL_OFFLOAD_ELIGIBLE_BYTES,0,1,IO_CELL_OFFLOAD_ELIGIBLE_BYTES)) "IO_SAVED_%",
sql_text
from v$sql s
where upper(sql_text) like upper(nvl('&sql_text',sql_text))
and sql_text not like 'BEGIN :sql_text := %'
and sql_text not like '%IO_CELL_OFFLOAD_ELIGIBLE_BYTES%'
and sql_id like nvl('&sql_id',sql_id)
order by 1, 2, 3
/

SYS@SANDBOX1> select avg(pk_col) from kso.skew3 where col1 < 0;

AVG(PK_COL)
-----------
1849142.5

Elapsed: 00:00:00.07
SYS@SANDBOX1> alter session set cell_offload_processing=false;

Session altered.

Elapsed: 00:00:00.00
SYS@SANDBOX1> select avg(pk_col) from kso.skew3 where col1 < 0;


#(!04%2 /&&,/!$).'3-!243#!.

AVG(PK_COL)
-----------
1849142.5

Elapsed: 00:00:49.68
SYS@SANDBOX1> @fsx4
Enter value for sql_text: select avg(pk_col) from kso.skew3 where col1 < 0
Enter value for sql_id:

SQL_ID CHILD OFFLOAD IO_SAVED_% AVG_ETIME SQL_TEXT


------------- ------ ------- ---------- ---------- ---------------------------------
a6j7wgqf84jvg 0 Yes 100.00 .07 select avg(pk_col) from kso.skew3
a6j7wgqf84jvg 1 No .00 49.68 select avg(pk_col) from kso.skew3

Elapsed: 00:00:00.04
)NTHEfsxSCRIPTYOUCANSEETHATTHEOFFLOADCOLUMNISJUSTADECODETHATCHECKSTOSEEIFTHE
IO_CELL_OFFLOAD_ELIGIBLE_BYTESCOLUMNISEQUALTOORNOT4HEIO_SAVED_%COLUMNISCALCULATEDUSING
THEIO_INTERCONNECT_BYTESFIELD ANDITATTEMPTSTOSHOWHOWMUCHDATAWASRETURNEDTOTHEDATABASE
SERVERS4HEEXAMPLESHOWSTHESAMESTATEMENTRUNONCEWITH3MART3CANENABLEDANDONCEWITH3MART
3CANDISABLED7EUSEDTHECELL_OFFLOAD_PROCESSINGPARAMETERTOTURN3MART3CANSONANDOFFFORTHIS
PURPOSE#HANGINGTHISPARAMETERCAUSEDTHEORIGINALCURSORTOBEINVALIDATEDBECAUSEOFANOPTIMIZER
MISMATCH4HISRESULTEDINTWOCHILDCURSORSFORTHESTATEMENT)NOUREXAMPLE THEOUTPUTOFTHESCRIPT
SHOWSTHATONEVERSIONOFTHESTATEMENTWASOFFLOADEDUSING3MART3CANSANDTOOKLESSTHANASECOND
4HESECONDEXECUTIONOFTHESTATEMENTTHOUGHWASNOT/FFLOADEDANDTOOKALMOSTAMINUTE
4HETECHNIQUEUSEDBYTHEfsxSCRIPTSEEMSTOWORKPRETTYWELLMOSTOFTHETIME(OWEVER IN
SITUATIONSWHEREASINGLECHILDCURSORISUSEDREPEATEDLY ITISPOSSIBLETHATSOMEEXECUTIONSMAYBE
EXECUTEDUSING3MART3CANSWHILEOTHERSARENOT7HILETHISISANUNUSUALSITUATION ITCANCAUSE
CONFUSIONBECAUSETHEIO_CELL_OFFLOAD_ELIGIBLE_BYTESCOLUMNCONTAINSACUMULATIVEVALUEFORALL
EXECUTIONS4HATISTOSAYTHATEACHEXECUTIONADDSITSELIGIBLEBYTESCOUNTTOTHERUNNINGTOTAL7HEN
SOMEEXECUTIONSUSE3MART3CANSANDSOMEDONT THEIO_CELL_OFFLOAD_ELIGIBLE_BYTESCOLUMNWILLBE
GREATERTHAN4HISISAFAIRLYRAREOCCURRENCEANDYOUMAYNEVERRUNINTOIT.EVERTHELESS HEREISAN
EXAMPLE
SYS@SANDBOX1> alter session set "_serial_direct_read"=true;

Session altered.

Elapsed: 00:00:00.01
SYS@SANDBOX1> -- execution 1
SYS@SANDBOX1> select avg(pk_col) from kso.skew a where col1 > 0;

AVG(PK_COL)
-----------
16093748.8

1 row selected.

Elapsed: 00:00:03.51
SYS@SANDBOX1> @fsx3
Enter value for sql_text: %skew%
Enter value for sql_id:


#(!04%2 /&&,/!$).'3-!243#!.

SQL_ID CHILD OFFLOAD EXECS ELIGIBLE_BYTES SQL_TEXT


------------- ------ ------- ----- -------------- --------------------
05cq2hb1r37tr 0 Yes 1 38797312 select avg(pk_col) f

1 row selected.

Elapsed: 00:00:00.01
SYS@SANDBOX1> alter session set "_serial_direct_read"=false;

Session altered.

Elapsed: 00:00:00.00
SYS@SANDBOX1> -- execution 2
SYS@SANDBOX1> select avg(pk_col) from kso.skew a where col1 > 0;

AVG(PK_COL)
-----------
16093748.8

1 row selected.

Elapsed: 00:00:04.71
SYS@SANDBOX1> @fsx3
Enter value for sql_text: %skew%
Enter value for sql_id:

SQL_ID CHILD OFFLOAD EXECS ELIGIBLE_BYTES SQL_TEXT


------------- ------ ------- ----- -------------- --------------------
05cq2hb1r37tr 0 Yes 2 38797312 select avg(pk_col) f

1 row selected.

Elapsed: 00:00:00.01
SYS@SANDBOX1>
SYS@SANDBOX1> alter session set "_serial_direct_read"=true;

Session altered.

Elapsed: 00:00:00.01
SYS@SANDBOX1> -- execution 3
SYS@SANDBOX1> select avg(pk_col) from kso.skew a where col1 > 0;

AVG(PK_COL)
-----------
16093748.8

1 row selected.

Elapsed: 00:00:03.54
SYS@SANDBOX1> @fsx3
Enter value for sql_text: %skew%
Enter value for sql_id:


#(!04%2 /&&,/!$).'3-!243#!.

SQL_ID CHILD OFFLOAD EXECS ELIGIBLE_BYTES SQL_TEXT


------------- ------ ------- ----- -------------- --------------------
05cq2hb1r37tr 0 Yes 3 58195968 select avg(pk_col) f

1 row selected.

Elapsed: 00:00:00.01
)NTHISEXAMPLEWEUSEDTHE_SERIAL_DIRECT_READPARAMETERTODISABLE3MART3CANS4HISPARAMETER
DOESNOTINVALIDATECURSORS SOTHESAMECURSORWASUSEDFORALLTHREEEXECUTIONSOFTHESTATEMENT)FYOU
LOOKATTHESECONDEXECUTION YOUCANPROBABLYGUESSTHATITDIDNTUSEA3MART3CAN ASITWASSLOWER
THANTHEPREVIOUSEXECUTION9OUCANVERIFYTHATASSUMPTIONBYNOTINGTHATTHE%LIGIBLE"YTE#OUNTDID
NOTINCREASE(OWEVER THEfsxSCRIPTSIMPLYCHECKSTOSEEIFTHEVALUEOFTHE
IO_CELL_OFFLOAD_ELIGIBLE_BYTESCOLUMNISGREATERTHAN!SYOUCANSEE THEVALUEOFTHECOLUMN
REMAINEDTHESAMEBETWEENEXECUTIONSCAUSINGTHEfsxSCRIPTTOREPORTTHATTHESTATEMENTWAS
OFFLOADED EVENTHOUGHTHESECONDEXECUTIONWASNOTOFFLOADED3OKEEPINMINDTHATOURINDICATORISA
CUMULATIVEVALUEFORALLTHEEXECUTIONSOFTHISCURSOR.OTETHATINTHEPREVIOUSEXAMPLEWESETUPA
RATHERUNUSUALSITUATIONWHEREASINGLECURSORISOFFLOADEDONONEEXECUTIONANDNOTONANOTHER4HIS
RARELYHAPPENSINREALLIFE
4HETECHNIQUEDEMONSTRATEDBYTHEfsxSCRIPTPROVIDESAVERYUSEFULALTERNATIVETOTRACINGORUSING
SESSIONSTATISTICSTOVERIFYWHETHER3MART3CANSAREBEINGPERFORMED4HEBIGGESTADVANTAGEISTHATYOU
DONTHAVETOTRYTOCATCH3MART3CANINREALTIME4HEIO_CELL_OFFLOAD_ELIGIBLE_BYTESCOLUMNISSTORED
INV$SQLANDRELATEDVIEWS WHICHMEANSITSALSOCAPTUREDBY!724HISPROVIDESUSWITHAHISTORICAL
VIEWINTOHOWSTATEMENTSHAVEBEENPROCESSEDINTHEPAST)TISONEOFTHEMAINTOOLSTHATWEUSEFORA
QUICK AND DIRTYVERIFICATIONOFWHETHERA3MART3CANHASBEENUSEDORNOT

31,-ONITORING
4HEREISONEOTHERTOOLTHATISVERYUSEFULFORDETERMININGWHETHERA31,STATEMENTWAS/FFLOADED4HE
REPORT_SQL_MONITORPROCEDUREISPARTOFTHENEW2EAL4IME31,-ONITORINGFUNCTIONALITYTHATWAS
ADDEDWITHG)TISBUILTINTOTHEDBMS_SQLTUNEPACKAGEANDPROVIDESAGREATDEALOFINFORMATION NOT
ONLYONWHETHERASTATEMENTWASOFFLOADED BUTALSOONWHICHSTEPSINAPLANWEREOFFLOADED(ERESAN
EXAMPLEFIRSTOFASTATEMENTTHATWASNOTOFFLOADEDANDTHENOFTHESAMESTATEMENTWHENITWAS
OFFLOADED 
SYS@SANDBOX1> alter session set cell_offload_processing=false;

Session altered.

SYS@SANDBOX1> set echo off


SYS@SANDBOX1> @avgskew3

AVG(PK_COL)
-----------
16093750.2

SYS@SANDBOX1> @fsx4
Enter value for sql_text: %skew3%
Enter value for sql_id:


#(!04%2 /&&,/!$).'3-!243#!.

SQL_ID CHILD OFFLOAD IO_SAVED_% AVG_ETIME SQL_TEXT


------------- ------ ------- ---------- ---------- ----------------------------------------
6uutdmqr72smc 0 No .00 57.95 select /* avgskew3.sql */ avg(pk_col) fr

SYS@SANDBOX1> @report_sql_monitor
Enter value for sid:
Enter value for sql_id: 6uutdmqr72smc
Enter value for sql_exec_id:

REPORT
------------------------------------------------------------------------------------------
SQL Monitoring Report

SQL Text
------------------------------
select /* avgskew3.sql */ avg(pk_col) from kso.skew3 a where col1 > 0

Global Information
------------------------------
Status : DONE (ALL ROWS)
Instance ID : 1
Session : SYS (3:5465)
SQL ID : 6uutdmqr72smc
SQL Execution ID : 16777216
Execution Started : 03/15/2011 15:26:11
First Refresh Time : 03/15/2011 15:26:19
Last Refresh Time : 03/15/2011 15:27:09
Duration : 58s
Module/Action : sqlplus@enkdb01.enkitec.com (TNS V1-V3)/-
Service : SYS$USERS
Program : sqlplus@enkdb01.enkitec.com (TNS V1-V3)
Fetch Calls : 1

Global Stats
==========================================================================================
| Elapsed | Cpu | IO | Application | Cluster | Fetch | Buffer | Read | Read |
| Time(s) | Time(s) | Waits(s) | Waits(s) | Waits(s) | Calls | Gets | Reqs | Bytes |
==========================================================================================
| 58 | 35 | 23 | 0.00 | 0.00 | 1 | 2M | 15322 | 15GB |
==========================================================================================


#(!04%2 /&&,/!$).'3-!243#!.

SQL Plan Monitoring Details (Plan Hash Value=2684249835)


======================================================================================
| Id | Operation | Name | ... | Activity | Activity Detail |
| | | | | (%) | (# samples) |
======================================================================================
| 0 | SELECT STATEMENT | | | | |
| 1 | SORT AGGREGATE | | | 41.38 | Cpu (24) |
| 2 | TABLE ACCESS STORAGE FULL | SKEW3 | | 58.62 | Cpu (11) |
| | | | | | direct path read (23) |
======================================================================================

SYS@SANDBOX1> @ss_on
SYS@SANDBOX1> alter session set cell_offload_processing=true;

Session altered.

SYS@SANDBOX1> @avgskew3

AVG(PK_COL)
-----------
16093750.2

SYS@SANDBOX1> @fsx4
Enter value for sql_text: %skew3%
Enter value for sql_id:

SQL_ID CHILD OFFLOAD IO_SAVED_% AVG_ETIME SQL_TEXT


------------- ------ ------- ---------- ---------- ----------------------------------------
6uutdmqr72smc 0 Yes 71.85 34.54 select /* avgskew3.sql */ avg(pk_col) fr

SYS@SANDBOX1> @report_sql_monitor
Enter value for sid:
Enter value for sql_id: 6uutdmqr72smc
Enter value for sql_exec_id:

REPORT
----------------------------------------------------------------------------------------
SQL Monitoring Report

SQL Text
------------------------------
select /* avgskew3.sql */ avg(pk_col) from kso.skew3 a where col1 > 0

Global Information
------------------------------
Status : DONE (ALL ROWS)
Instance ID : 1
Session : SYS (3:5467)
SQL ID : 6uutdmqr72smc
SQL Execution ID : 16777219
Execution Started : 03/15/2011 15:36:11


#(!04%2 /&&,/!$).'3-!243#!.

First Refresh Time : 03/15/2011 15:36:15


Last Refresh Time : 03/15/2011 15:36:45
Duration : 34s
Module/Action : sqlplus@enkdb01.enkitec.com (TNS V1-V3)/-
Service : SYS$USERS
Program : sqlplus@enkdb01.enkitec.com (TNS V1-V3)
Fetch Calls : 1

Global Stats
=========================================================================================
| Elapsed | Cpu | IO | Application | Fetch | Buffer | Read | Read | Cell |
| Time(s) | Time(s) | Waits(s) | Waits(s) | Calls | Gets | Reqs | Bytes | Offload |
=========================================================================================
| 35 | 31 | 3.85 | 0.00 | 1 | 2M | 18422 | 15GB | 71.83% |
=========================================================================================

SQL Plan Monitoring Details (Plan Hash Value=2684249835)


============================================================================================
| Id | Operation | Name | | Cell | Activity | Activity Detail |
| | | | | Offload | (%) | (# samples) |
============================================================================================
| 0 | SELECT STATEMENT | | | | | |
| 1 | SORT AGGREGATE | | | | 50.00 | Cpu (17) |
| 2 | TABLE ACCESS STORAGE FULL | SKEW3 | | 71.83% | 50.00 | Cpu (12) |
| | | | | | | cell smart tab... (5) |
============================================================================================
.OTETHATWECUTOUTANUMBEROFCOLUMNSFROMTHEREPORTBECAUSEITISVERYWIDEANDDOESNTFIT
NICELYINBOOKFORMAT.EVERTHELESS YOUCANSEETHATTHEREPORTSHOWSWHICHSTEPSWERE/FFLOADED#ELL
/FFLOAD WHERETHESTATEMENTSPENTITSTIME!CTIVITY ANDWHATITSPENTTIMEDOING!CTIVITY$ETAIL 
4HISCANBEEXTREMELYUSEFULWITHMORECOMPLEXSTATEMENTSTHATHAVEMULTIPLESTEPSELIGIBLEFOR
OFFLOADING!LSONOTETHATMONITORINGOCCURSAUTOMATICALLYONPARALLELIZEDSTATEMENTSANDONSTATEMENTS
THATTHEOPTIMIZERANTICIPATESWILLRUNFORALONGTIME)F/RACLEISNOTAUTOMATICALLYCHOOSINGTOMONITOR
ASTATEMENTTHATISOFINTEREST YOUCANUSETHEMONITORHINTTOTELL/RACLETOMONITORTHESTATEMENT

Parameters
4HEREARESEVERALPARAMETERSTHATAPPLYTO/FFLOADING4HEMAINONEISCELL_OFFLOAD_PROCESSING WHICH
TURNS/FFLOADINGONANDOFF4HEREARESEVERALOTHERSTHATAREOFLESSIMPORTANCE4ABLE SHOWSALISTOF
THENON HIDDENPARAMETERSTHATAFFECT/FFLOADINGASOF/RACLEDATABASEVERSION .OTETHATWE
HAVEALSOINCLUDEDTHEHIDDENPARAMETER _SERIAL_DIRECT_READ WHICHCONTROLSTHISVERYIMPORTANT
FEATURE

Table 2-2. Database Parameters Controlling Offloading

Parameter Default Description


cell_offload_compaction ADAPTIVE 4HISPARAMETERISRESERVEDFORFUTUREUSE4HEONLINE
DESCRIPTIONSAYS h#ELLPACKETCOMPACTIONSTRATEGYv


#(!04%2 /&&,/!$).'3-!243#!.

Parameter Default Description


cell_offload_decryption TRUE #ONTROLSWHETHERDECRYPTIONISOFFLOADED.OTETHATWHENTHIS
PARAMETERISSETTOFALSE 3MART3CANSARECOMPLETELYDISABLED
ONENCRYPTEDDATA

cell_offload_parameters 4HISPARAMETERISRESERVEDFORFUTUREUSE

cell_offload_plan_display AUTO #ONTROLSWHETHER%XADATAOPERATIONNAMESAREUSEDIN


EXECUTIONPLANOUTPUTFROM80,!.AUTOMEANSTODISPLAY
THEMONLYIFTHEDATABASEISUSING%XADATASTORAGE

cell_offload_processing TRUE 4URNS/FFLOADINGONOROFF

_serial_direct_read AUTO #ONTROLSTHESERIALDIRECTPATHREADMECHANISM4HEVALID


VALUESAREAUTO TRUE FALSE ALWAYSANDNEVER

)NADDITIONTOTHENORMAL/RACLE APPROVEDPARAMETERS THEREAREANUMBEROFSO CALLEDHIDDEN
PARAMETERSTHATAFFECTVARIOUSASPECTSOF/FFLOADING4HEFOLLOWINGLISTINGSHOWSALLTHECELLPARAMETERS
INCLUDINGTHEHIDDENPARAMETERS ALONGWITHTHEIRDESCRIPTIONS
SYS@POC1> @parmsd
Enter value for parameter: cell
Enter value for isset:
Enter value for show_hidden: Y

NAME DESCRIPTION
--------------------------------------------- ---------------------------------------------
cell_offload_compaction Cell packet compaction strategy
cell_offload_decryption enable SQL processing offload of encrypted
data to cells

cell_offload_parameters Additional cell offload parameters


cell_offload_plan_display Cell offload explain plan display
cell_offload_processing enable SQL processing offload to cells
_allow_cell_smart_scan_attr Allow checking smart_scan_capable Attr
_cell_fast_file_create Allow optimized file creation path for Cells
_cell_fast_file_restore Allow optimized rman restore for Cells
_cell_file_format_chunk_size Cell file format chunk size in MB
_cell_index_scan_enabled enable CELL processing of index FFS
_cell_offload_capabilities_enabled specifies capability table to load
_cell_offload_hybridcolumnar Query offloading of hybrid columnar
compressed tables to exadata

_cell_offload_predicate_reordering_enabled enable out-of-order SQL processing offload to


cells

_cell_offload_timezone enable timezone related SQL processing


offload to cells


#(!04%2 /&&,/!$).'3-!243#!.

_cell_offload_virtual_columns enable offload of predicates on virtual


columns to cells

_cell_range_scan_enabled enable CELL processing of index range scans


_cell_storidx_mode Cell Storage Index mode
_db_check_cell_hints
_disable_cell_optimized_backups disable cell optimized backups
_kcfis_cell_passthru_enabled Do not perform smart IO filtering on the cell
_kcfis_kept_in_cellfc_enabled Enable usage of cellsrv flash cache for kept
objects

_kcfis_nonkept_in_cellfc_enabled Enable use of cellsrv flash cache for


non-kept objects

22 rows selected.
7EVEUSEDAFEWOFTHESEPARAMETERSINTHEEXAMPLESINTHISCHAPTERANDWELLUSESEVERALINTHE
UPCOMINGCHAPTERS4HEREARESEVERALOTHERkcfisKERNELFILEINTELLIGENTSTORAGE PARAMETERSASWELL
(ERESALISTINGOFTHEMWITHDESCRIPTIONS
SYS@SMITHERS> @parmsd
Enter value for parameter: kcfis
Enter value for isset:
Enter value for show_hidden: Y

NAME DESCRIPTION
---------------------------------------- --------------------------------------------------
_kcfis_block_dump_level Smart IO block dump level
_kcfis_caching_enabled enable kcfis intra-scan session caching
_kcfis_cell_passthru_enabled Do not perform smart IO filtering on the cell
_kcfis_control1 Kcfis control1
_kcfis_control2 Kcfis control2
_kcfis_control3 Kcfis control3
_kcfis_control4 Kcfis control4
_kcfis_control5 Kcfis control5
_kcfis_control6 Kcfis control6
_kcfis_disable_platform_decryption Don't use platform-specific decryption on the
storage cell

_kcfis_dump_corrupt_block Dump any corrupt blocks found during smart IO


_kcfis_fast_response_enabled Enable smart scan optimization for fast response
(first rows)

_kcfis_fast_response_initiosize Fast response - The size of the first IO in


logical blocks

_kcfis_fast_response_iosizemult Fast response - (next IO size = current IO size *


this parameter)

_kcfis_fast_response_threshold Fast response - the number of IOs after which


smartIO is used


#(!04%2 /&&,/!$).'3-!243#!.

_kcfis_fault_control Fault Injection Control


_kcfis_io_prefetch_size Smart IO prefetch size for a cell
_kcfis_ioreqs_throttle_enabled Enable Smart IO requests throttling
_kcfis_kept_in_cellfc_enabled Enable usage of cellsrv flash cache for kept
objects

_kcfis_large_payload_enabled enable large payload to be passed to cellsrv


_kcfis_max_cached_sessions Sets the maximum number of kcfis sessions cached
_kcfis_max_out_translations Sets the maximum number of outstanding
translations in kcfis

_kcfis_nonkept_in_cellfc_enabled Enable use of cellsrv flash cache for non-kept


objects

_kcfis_oss_io_size KCFIS OSS I/O size


_kcfis_rdbms_blockio_enabled Use block IO instead of smart IO in the smart IO
module on RDBMS

_kcfis_read_buffer_limit KCFIS Read Buffer (per session) memory limit in


bytes

_kcfis_spawn_debugger Decides whether to spawn the debugger at kcfis


initialize

_kcfis_stats_level sets kcfis stats level


_kcfis_storageidx_diag_mode Debug mode for storage index on the cell
_kcfis_storageidx_disabled Don't use storage index optimization on the
storage cell

_kcfis_test_control1 kcfis tst control1


_kcfis_trace_bucket_size KCFIS tracing bucket size in bytes
_kcfis_trace_level sets kcfis tracing level
_kcfis_work_set_appliances Working Set of appliances in a KCFIS session

34 rows selected.
.OTETHATHIDDENPARAMETERSSHOULDNOTBEUSEDONPRODUCTIONSYSTEMSWITHOUTPRIORDISCUSSION
WITH/RACLESUPPORT"UTTHEYDOPROVIDEVALUABLECLUESABOUTHOWSOMEOFTHE%XADATAFEATURESWORK
ANDARECONTROLLED

Summary
/FFLOADINGREALLYISTHESECRETSAUCEOF%XADATA7HILETHEHARDWAREARCHITECTUREDOESAGOODJOBOF
PROVIDINGMOREBALANCEBETWEENTHESTORAGELAYERSABILITYTODELIVERDATAANDTHEDATABASELAYERSABILITY
TOCONSUMEIT THEBULKOFTHEPERFORMANCEGAINSAREPROVIDEDBYTHESOFTWARE3MART3CANSARELARGELY
RESPONSIBLEFORTHESEGAINS4HEPRIMARYFOCUSOFMOSTOFTHESEOPTIMIZATIONSISTOREDUCETHEAMOUNTOF
DATATRANSFERREDBETWEENTHESTORAGETIERANDTHEDATABASETIER


CHAPTER 3



Hybrid Columnar Compression

(YBRID#OLUMNAR#OMPRESSION(## ISPROBABLYONEOFTHELEASTUNDERSTOODOFTHEFEATURESTHATARE
UNIQUETO%XADATA4HEFEATUREWASORIGINALLYROLLEDOUTINABETAVERSIONOFG2ANDWASENABLEDON
BOTH%XADATAANDNON %XADATAPLATFORMS4HEPRODUCTIONRELEASEOFG2RESTRICTEDTHEFEATURETO
%XADATAPLATFORMSONLY/STENSIBLYTHISDECISIONWASMADEBECAUSETHEADDITIONALPROCESSINGPOWER
AVAILABLEONTHE%XADATASTORAGESERVERS"ECAUSETHEFEATUREISRESTRICTEDTO%XADATA THERECENT
DOCUMENTATIONREFERSTOITAS%XADATA(YBRID#OLUMNAR#OMPRESSION%(## 
4HISCHAPTERWILLFIRSTPRESENTBASICINFORMATIONONBOTHOF/RACLESOLDERROW MAJORFORMAT
COMPRESSIONMETHODS"!3)#AND/,40 7EWILLTHENEXPLOREINDETAILTHEMECHANICSOF/RACLESNEW
(##FEATUREˆHOWITWORKS INCLUDINGHOWTHEDATAISACTUALLYSTOREDONDISK WHEREANDWHENTHE
COMPRESSIONANDDECOMPRESSIONOCCUR ANDWHENITSUSEISAPPROPRIATE&INALLYWELLPROVIDESOMEREAL
WORLDEXAMPLESOF(##USAGE

Oracle Storage Review


!SYOUPROBABLYALREADYKNOW /RACLESTORESDATAINABLOCKSTRUCTURE4HESEBLOCKSARETYPICALLY+AND
FROMASIMPLISTICPOINTOFVIEWTHEYCONSISTOFABLOCKHEADER AROWDIRECTORY ROWDATAANDFREESPACE
4HEBLOCKHEADERSTARTSATTHETOPOFABLOCKANDWORKSITSWAYDOWN WHILETHEROWDATASTARTSATTHE
BOTTOMANDWORKSITSWAYUP4HEFREESPACEGENERALLYSITSINTHEMIDDLE&IGURE SHOWSA
REPRESENTATIONOFATRADITIONAL/RACLEBLOCKFORMAT


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

#OMMONAND
6ARIABLE(EADER

4ABLE$IRECTORY

2OW$IRECTORY

&REE3PACE

2OW$ATA
$ATABASE
"LOCK


Figure 3-1. The standard Oracle block format (row-major storage)

2OWSARESTOREDINNOSPECIFICORDER BUTCOLUMNSAREGENERALLYSTOREDINTHEORDERINWHICHTHEY
WEREDEFINEDINTHETABLE&OREACHROWINABLOCKTHEREWILLBEAROWHEADER FOLLOWEDBYTHECOLUMN
DATAFOREACHCOLUMN&IGURESHOWSHOWTHEPIECESOFAROWARESTOREDINASTANDARD/RACLEBLOCK
.OTETHATWECALLEDITA row piece BECAUSEOCCASIONALLYAROWSDATAMAYBESTOREDINMORETHANONE
CHUNK)NTHISCASE THEREWILLBEAPOINTERTOTHENEXTPIECE

#OMMONAND
6ARIABLE(EADER

4ABLE$IRECTORY

2OW$IRECTORY
2OW(EADER
&REE3PACE #OLUMN$ATA
#OLUMN,ENGTH

#OLUMN,ENGTH

ATA
2OW$ Column
Value
$ATABASE Column
"LOCK Value


Figure 3-2. The standard Oracle row format (row-major storage)


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

.OTETHATTHEROWHEADERMAYCONTAINAPOINTERTOANOTHERROWPIECE7ELLCOMEBACKTOTHISALITTLE
LATER BUTFORNOW JUSTBEAWARETHATTHEREISAMECHANISMTOPOINTTOANOTHERLOCATION!LSONOTETHAT
EACHCOLUMNISPRECEDEDBYASEPARATEFIELDINDICATINGTHELENGTHOFTHECOLUMN.OTHINGISACTUALLY
STOREDINTHE#OLUMN6ALUEFIELDFORNULLS4HEPRESENCEOFANULLCOLUMNISINDICATEDBYAVALUEOFIN
THECOLUMNLENGTHFIELD4RAILINGNULLSDONTEVENSTORETHECOLUMNLENGTHFIELDS ASTHEPRESENCEOFANEW
ROWHEADERINDICATESTHATTHEREARENOMORECOLUMNSWITHVALUESINTHECURRENTROW
?2C5A44ISAKEYVALUEASSOCIATEDWITHBLOCKSITCONTROLSHOWSPACEISUSEDINABLOCK)TSPURPOSEIS
TORESERVESOMEFREESPACEINEACHBLOCKFORUPDATES4HISISNECESSARYTOPREVENTROWMIGRATIONMOVING
ROWSTONEWBLOCKS THATWOULDBECAUSEDBYLACKOFSPACEINTHEROWSORIGINALBLOCKWHENAROW
INCREASESINSIZE7HENROWSAREEXPECTEDTOBEUPDATEDWITHVALUESTHATREQUIREMORESPACE MORE
SPACEISGENERALLYRESERVED7HENROWSARENOTEXPECTEDTOINCREASEINSIZEBECAUSEOFUPDATES VALUESAS
LOWASMAYBESPECIFIEDFOR?2C5A447ITHCOMPRESSEDBLOCKSITISCOMMONTOUSEVERYLOWVALUESOF
?2C5A44 BECAUSETHEGOALISTOMINIMIZESPACEUSAGEANDTHEROWSAREGENERALLYNOTEXPECTEDTOBE
UPDATEDFREQUENTLYIFEVER &IGURE SHOWSHOWFREESPACEISRESERVEDBASEDONTHEVALUEOF?2C5A44

ACE
&REE3P 20 % of the space in the
  bolck is reserved for
updates to existing records

A
$AT $AT
AB 2OW
"LOC ASE
K
0#4
&2%
%


Figure 3-3. Block free space controlled by PCTFREE

&IGURE SHOWSABLOCKTHATRESERVESPERCENTOFITSSPACEFORUPDATES!BLOCKWITHA?2C5A44
SETTINGOFPERCENTWOULDALLOWINSERTSTOFILLTHEBLOCKALMOSTCOMPLETELY7HENARECORDISUPDATED
ANDTHENEWDATAWILLNOTFITINTHEAVAILABLEFREESPACEOFTHEBLOCKWHERETHERECORDISSTORED THE
DATABASEWILLMOVETHEROWTOANEWBLOCK4HISPROCESSISCALLEDrow migration)TDOESNOTCOMPLETELY
REMOVETHEROWFROMTHEORIGINALBLOCKBUTLEAVESAREFERENCETOTHENEWLYRELOCATEDROWSOTHATITCAN
STILLBEFOUNDBYITSORIGINALROWIDWHICHBASICALLYCONSISTSOFAFILENUMBER BLOCKNUMBER ANDROW
NUMBERWITHINTHEBLOCK 4HISABILITYOF/RACLETORELOCATEROWSWILLBECOMERELEVANTWHENWEDISCUSS
WHATHAPPENSIFYOUUPDATEAROWTHATHASBEENCOMPRESSED.OTETHATTHEMOREGENERICTERMFOR
STORINGROWSINMORETHANONEPIECEISrow chaining2OWMIGRATIONISASPECIALCASEOFROWCHAININGIN
WHICHTHEENTIREROWISRELOCATED&IGURE SHOWSWHATABLOCKWITHAMIGRATEDROWMIGHTLOOKLIKE


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

"LOCK&LAGGEDFOR
/,40#OMPRESSION

0OINTERTO
5PDATED2OW
e &REE3PACE
Spac
Free

5NCOMPRESSE
D
5PDATED2OW


Figure 3-4. Row migration

4HISDIAGRAMREPRESENTSASITUATIONWHERETHEENTIREROWHASBEENRELOCATED LEAVINGBEHINDONLYA
POINTERTOTHENEWLOCATION

Oracle Compression Mechanisms


/RACLEPROVIDESSEVERALCOMPRESSIONMECHANISMSINADDITIONTO(##4HENAMINGISSOMEWHAT
CONFUSINGDUETOTHECOMMONMARKETINGTERMSANDSOMECHANGESINNOMENCLATUREALONGTHEWAY(ERE
WELLREFERTOTHETHREEMAINFLAVORSOFCOMPRESSIONUSEDBY/RACLEAS"!3)# /,40 AND(##

"!3)#
4HISCOMPRESSIONMETHODISABASEFEATUREOF/RACLE$ATABASEG%NTERPRISE%DITION)TCOMPRESSES
DATAONLYONDIRECTPATHLOADS-ODIFICATIONSFORCETHEDATATOBESTOREDINANUNCOMPRESSEDFORMAT AS
DOINSERTSTHATDONOTUSETHEDIRECTPATHLOADMECHANISM2OWSARESTILLSTOREDTOGETHERINTHENORMAL
ROW MAJORFORM4HECOMPRESSIONUNITISASINGLE/RACLEBLOCK"!3)#ISTHEDEFAULTCOMPRESSION
METHOD FROMASYNTAXSTANDPOINT&OREXAMPLE "!3)#COMPRESSIONWILLBEUSEDIFYOUISSUETHE
FOLLOWINGCOMMAND
2A40C4C01;4q2><?A4BB*
"ASICCOMPRESSIONWASINTRODUCEDIN/RACLE$ATABASEVERSIONI4HISFORMOFCOMPRESSIONWASALSO
REFERREDTOAS$33#OMPRESSIONINTHEPAST4HESYNTAX2><?A4BB5>A38A42CN;>03>?4A0C8>=BCANSTILL
BEUSEDTOENABLE"!3)#COMPRESSION ALTHOUGHTHISSYNTAXHASNOWBEENDEPRECATED

/,40
4HE/,40COMPRESSIONMETHODALLOWSDATATOBECOMPRESSEDFORALLOPERATIONS NOTJUSTDIRECTPATH
LOADS)TISPARTOFANEXTRA COSTOPTIONCALLED!DVANCED#OMPRESSIONANDWASINTRODUCEDIN/RACLE


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

$ATABASEVERSIONG2ELEASE4HESTORAGEFORMATISESSENTIALLYTHESAMEAS"!3)# USINGASYMBOL
TABLETOREPLACEREPEATINGVALUES/,40COMPRESSIONATTEMPTSTOALLOWFORFUTUREUPDATESBYLEAVING
PERCENTFREESPACEINEACHBLOCKVIATHE?2C5A44SETTING"!3)#COMPRESSIONUSESA?2C5A44VALUEOF
PERCENT 4HEREFORE TABLESCOMPRESSEDFOR/,40WILLOCCUPYSLIGHTLYMORESPACETHANIFTHEYWERE
COMPRESSEDWITH"!3)#ASSUMINGDIRECTPATHLOADSONLYANDNOUPDATES 4HESYNTAXFORENABLINGTHIS
TYPEOFCOMPRESSIONIS
2A40C4C01;4q2><?A4BB5>A>;C?*
!LTERNATIVELY THESYNTAX2><?A4BB5>A0;;>?4A0C8>=BMAYBEUSED ALTHOUGHTHISSYNTAXISNOW
DEPRECATED/,40COMPRESSIONISIMPORTANTBECAUSEITISTHEFALLBACKMETHODFORTABLESTHATUSE(##
COMPRESSION)NOTHERWORDS BLOCKSWILLBESTOREDUSING/,40COMPRESSIONINCASESWHERE(##CANNOT
BEUSEDNON DIRECTPATHLOADSFOREXAMPLE /NEIMPORTANTCHARACTERISTICOF/,40COMPRESSIONISTHAT
UPDATESANDNON DIRECTPATHINSERTSARENOTCOMPRESSEDINITIALLY/NCEABLOCKBECOMEShFULLvITWILLBE
COMPRESSED7ELLREVISITTHISISSUEINTHEPERFORMANCESECTIONOFTHISCHAPTER

(##
(##ISONLYAVAILABLEFORTABLESSTOREDON%XADATASTORAGE!SWITH"!3)#COMPRESSION DATAWILLONLYBE
COMPRESSEDIN(##FORMATWHENITISLOADEDUSINGDIRECTPATHLOADS#ONVENTIONALINSERTSANDUPDATES
CAUSERECORDSTOBESTOREDIN/,40COMPRESSEDFORMAT)NTHECASEOFUPDATES ROWSAREMIGRATEDTONEW
BLOCKS4HESEBLOCKSAREMARKEDFOR/,40COMPRESSION SOWHENONEOFTHESENEWBLOCKSISSUFFICIENTLY
FULL ITWILLBECOMPRESSEDUSINGTHE/,40ALGORITHM
(##PROVIDESFOURLEVELSOFCOMPRESSION ASSHOWNIN4ABLE .OTETHATTHEEXPECTED
COMPRESSIONRATIOSAREVERYROUGHESTIMATESANDTHATTHEACTUALCOMPRESSIONRATIOWILLVARYGREATLY
DEPENDINGONTHEDATATHATISBEINGCOMPRESSED

Table 3-1. HCC Compression Types

Compression Expected
Description
Type Compression Ratio
@D4AH;>F (##LEVELUSESTHE,:/COMPRESSIONALGORITHM4HISLEVEL ¾
PROVIDESTHELOWESTCOMPRESSIONRATIOSBUTREQUIRESTHELEAST#05
FORCOMPRESSIONANDDECOMPRESSIONOPERATIONS4HISALGORITHMIS
OPTIMIZEDFORMAXIMIZINGSPEEDRATHERTHANCOMPRESSION
$ECOMPRESSIONISVERYFASTWITHTHISALGORITHM9OUMAYSEESOME
DOCUMENTSREFERTOTHISLEVELASF0A47>DB4;>F

@D4AH7867 (##LEVELUSESTHE:,)"GZIP COMPRESSIONALGORITHM3OME ¾


DOCUMENTSREFERTOTHISLEVELASF0A47>DB47867

0A278E4;>F (##LEVELUSESTHE:,)"GZIP COMPRESSIONALGORITHMASWELL ¾


BUTATAHIGHERCOMPRESSIONLEVELTHAN@D4AH7867$EPENDINGON
THEDATA HOWEVER THECOMPRESSIONRATIOSMAYNOTBEMUCH
HIGHERTHANWITH@D4AH7867


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

Compression Expected
Description
Type Compression Ratio
0A278E47867 (##LEVELCOMPRESSIONUSES"ZIPCOMPRESSION4HISISTHE ¾
HIGHESTLEVELOFCOMPRESSIONAVAILABLEBUTISFARANDAWAYTHEMOST
#05 INTENSIVE#OMPRESSIONTIMESAREOFTENSEVERALTIMESSLOWER
THANFORLEVELSAND"UTAGAIN DEPENDINGONTHEDATA THE
COMPRESSIONRATIOMAYNOTBETHATMUCHHIGHERTHANWITH0A278E4
;>F4HISLEVELISFORSITUATIONSWHERETHETIMETOCOMPRESSDATAIS
RELATIVELYUNIMPORTANTORWHERESPACEISINCRITICALLYSHORTSUPPLY

COMPRESSION ALGORITHMS

4HEREFERENCESTOTHESPECIFICALGORITHMSASSOCIATEDWITH(##COMPRESSION,:/ :,)" OR":)0 AREALL


INFERREDFROMTHEFUNCTIONNAMESUSEDINTHE/RACLECODE4HE>A0341D6UTILITYPROVIDESADIRECTINTERFACE
INTOTHE/RACLECALLSTACKVIATHEB7>ACNBC02:COMMAND/PERATINGSYSTEMUTILITIESSUCHASPSTACKCAN
ALSOPROVIDETHESAMEINFORMATION!SANEXAMPLE HEREISAPARTOFTHESTACKDUMPFORAPROCESSDOING
0A278E47867COMPRESSION
-ZVRRQiX_!_bTdS^S^
-ZVRRQiX_!S^
-1I!NQi2^\_aTbb
-WP]S[TNR^\_aTbb
-1I!NR^\_aTbb1[^RZ


4ABLESMAYBECOMPRESSEDWITH(##USINGTHEFOLLOWINGSYNTAX
2A40C4C01;42><?A4BB5>A@D4AH;>F*
2A40C4C01;42><?A4BB5>A@D4AH7867*
2A40C4C01;42><?A4BB5>A0A278E4;>F*
2A40C4C01;42><?A4BB5>A0A278E47867*
9OUMAYALSOCHANGEATABLESCOMPRESSIONATTRIBUTEBYUSINGTHE0;C4AC01;4STATEMENT(OWEVER
THISCOMMANDHASNOEFFECTONEXISTINGRECORDSUNLESSYOUACTUALLYREBUILDTHESEGMENTUSINGTHE<>E4
KEYWORD7ITHOUTTHE<>E4KEYWORD THE0;C4AC01;4COMMANDMERELYNOTIFIES/RACLETHATFUTUREDIRECT
PATHINSERTSSHOULDBESTOREDUSING(##"YTHEWAY YOUCANSEEWHICHFORMOFCOMPRESSIONATABLEIS
ASSIGNED IFANY USINGAQUERYLIKETHIS
BHB/B0=31>G -bT[TRc^f]TacPQ[TN]P\TR^\_aTbbNU^a
!Ua^\SQPNcPQ[Tb
"fWTaTR^\_aTbbX^],y4=01;43z
#P]SR^\_aTbbNU^a[XZT]e[U^a\PcR^\_aTbbNU^a
$^aSTaQh !*

>F=4AC01;4N=0<42><?A4BBN5>A

:B>B:4F!N10B8210B82
:B>B:4F!N722 @D4AH;>F


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

:B>B:4F!N722!@D4AH7867
:B>B:4F!N722"0A278E4;>F
:B>B:4F!N722#0A278E47867
:B>B:4F!N>;C?>;C?

%a^fbbT[TRcTS
/FCOURSE THECURRENTASSIGNMENTMAYHAVENOTHINGTODOWITHTHESTORAGEFORMATINUSEFORANYOR
ALLOFTHEBLOCKSTHATSTOREDATAFORAGIVENTABLE(EREISAQUICKEXAMPLE
BHB/B0=31>G -RPccPQ[TNbXiT!b`[
R^\_dcTbd\^Uc^cP[bXiTN\TVb^]aT_^ac
QaTPZ^]aT_^ac
R^[^f]TaU^aP!
R^[bTV\T]cN]P\TU^aP"
R^[bTV\T]cNch_TU^aP 
R^[c^cP[bXiTN\TVbU^a(((((((
bT[TRcb^f]TabTV\T]cN]P\T
bd\QhcTb !# !#Pbc^cP[bXiTN\TVbR^\_aTbbNU^a
Ua^\SQPNbTV\T]cbbSQPNcPQ[Tbc
fWTaTb^f]Ta,c^f]Ta
P]SccPQ[TN]P\T,bbTV\T]cN]P\T
P]Sb^f]Ta[XZT]e[^f]Tab^f]Ta
P]SccPQ[TN]P\T[XZT]e[cPQ[TN]P\TbTV\T]cN]P\T
Va^d_Qhb^f]TabTV\T]cN]P\TR^\_aTbbNU^a
^aSTaQh"*

BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4F #%"

bd\ #%"

a^fbT[TRcTS

4[P_bTS)))" 
BHB/B0=31>G -P[cTacPQ[TZb^bZTfR^\_aTbbU^a0A278E47867*

CPQ[TP[cTaTS

4[P_bTS)))!
BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4F #%"0A278E47867



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.


bd\ #%"

a^fbT[TRcTS

4[P_bTS)))!
BHB/B0=31>G -8cbPhb0A278E47867Qdc^QeX^db[hcWTSPcPWPb]^cQTT]R^\_aTbbTS
BHB/B0=31>G -
BHB/B0=31>G -P[cTacPQ[TZb^bZTf\^eTR^\_aTbbU^a`dTah[^f_PaP[[T["!*

CPQ[TP[cTaTS

4[P_bTS)))(%
BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4F" "@D4AH;>F

bd\" "

4[P_bTS)))!
9OUCOULDPROBABLYGUESSTHATTHEFIRST0;C4ACOMMANDWITHOUTTHE<>E4KEYWORD DIDNTREALLYDO
ANYTHINGTOTHEEXISTINGDATA)TONLYTOOKAFEWHUNDREDTHSOFASECOND AFTERALL!NDASYOUCANSEE
WHENWELOOKEDATTHESIZEOFTHETABLE ITDIDNOTCOMPRESSTHEEXISTINGDATA EVENTHOUGHTHEDATA
DICTIONARYNOWSAYSTHETABLEISIN0A278E47867MODE7HENWEADDEDTHE<>E4KEYWORD THETABLEWAS
ACTUALLYREBUILTWITHTHENEWCOMPRESSIONSETTINGUSINGDIRECTPATHINSERTSANDASYOUCANSEE THEDATA
HASBEENCOMPRESSEDFROMTHEORIGINAL -"TO-"
)NTHISSECTIONWEBRIEFLYDESCRIBEDEACHOFTHETHREETYPESOFCOMPRESSIONAVAILABLEIN/RACLE3INCE
THISCHAPTERISFOCUSEDON(## WEWONTDISCUSSTHEOTHERMETHODSFURTHEREXCEPTASTHEYRELATETOHOW
(##WORKS

HCC Mechanics
(##WORKSBYSTORINGDATAINANONTRADITIONALFORMATˆNONTRADITIONALFOR/RACLE ANYWAY$ATASTORED
USING(##STILLRESIDESIN/RACLEBLOCKS ANDEACHBLOCKSTILLHASABLOCKHEADER"UTTHEDATASTORAGEHAS
BEENREORGANIZED)NTHEFIRSTPLACE THEBLOCKSARECOMBINEDINTOLOGICALSTRUCTURESCALLEDcompression
units OR#5S!#5CONSISTSOFMULTIPLE/RACLEBLOCKSUSUALLYADDINGUPTO+OR+ &IGURE 
SHOWSALOGICALREPRESENTATIONOFHOW#5SARELAIDOUT


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

Compression Unit

Block Header Block Header Block Header Block Header

Compression Unit
Column 4 Column 5
Header
Column 3
Column 1 Column 6
Column 5
Column 2 Column 4


Figure 3-5. Layout of an HCC Compression Unit

.OTICETHATTHEROWSARENOLONGERSTOREDTOGETHER)NSTEADTHEDATAISORGANIZEDBYCOLUMNWITHIN
THECOMPRESSIONUNIT4HISISNOTATRUECOLUMNORIENTEDSTORAGEFORMATBUTRATHERACROSSBETWEEN
COLUMNORIENTEDANDROWORIENTED2EMEMBERTHATTHESORTINGISDONEONLYWITHINASINGLE#54HENEXT
#5WILLSTARTOVERWITH#OLUMNAGAIN4HEADVANTAGEOFTHISFORMATISTHATITALLOWSANYROWTOBEREAD
INITSENTIRETYBYREADINGASINGLE#57ITHATRUECOLUMNORIENTEDSTORAGEFORMATYOUWOULDHAVETO
PERFORMASEPARATEREADFOREACHCOLUMN4HEDISADVANTAGEISTHATREADINGANINDIVIDUALRECORDWILL
REQUIREREADINGAMULTI BLOCK#5INSTEADOFASINGLEBLOCK/FCOURSEFULLTABLESCANSWILLNOTSUFFER
BECAUSEALLTHEBLOCKSWILLBEREAD7ELLTALKMOREABOUTTHISTRADE OFFALITTLELATERBUTYOUSHOULD
ALREADYBETHINKINGTHATTHISLIMITATIONCOULDMAKE(##LESSATTRACTIVEFORTABLESTHATNEEDTOSUPPORT
LOTSOFSINGLEROWACCESS
4HESORTINGBYCOLUMNISACTUALLYDONETOIMPROVETHEEFFECTIVENESSOFTHECOMPRESSIONALGORITHMS
NOTTOGETPERFORMANCEBENEFITSOFCOLUMNORIENTEDSTORAGE4HISISWHERETHENAMEh(YBRID#OLUMNAR
#OMPRESSIONvCOMESFROMANDWHY%XADATAHASNOTBEENMARKETEDASACOLUMNORIENTEDDATABASE4HE
NAMEISACTUALLYVERYDESCRIPTIVEOFHOWTHEFEATUREACTUALLYWORKS

HCC Performance
4HEREARETHREEAREASOFCONCERNWHENDISCUSSINGPERFORMANCERELATEDTOTABLECOMPRESSION4HEFIRST
load performance ISHOWLONGITTAKESTOCOMPRESSTHEDATA3INCECOMPRESSIONONLYTAKESPLACEON
DIRECTPATHLOADS THISISESSENTIALLYAMEASUREMENTOFTHEIMPACTOFLOADINGDATA4HESECONDAREAOF
CONCERN query performance ISTHEIMPACTOFDECOMPRESSIONANDOTHERSIDEEFFECTSONQUERIESAGAINST
THECOMPRESSEDDATA4HETHIRDAREAOFCONCERN DML performance ISTHEIMPACTCOMPRESSION
ALGORITHMSHAVEONOTHER$-,ACTIVITIESSUCHAS5PDATESAND$ELETES

,OAD0ERFORMANCE
!SYOUMIGHTEXPECT LOADTIMETENDSTOINCREASEWITHTHEAMOUNTOFCOMPRESSIONAPPLIED!STHESAYING
GOES h4HEREISNOSUCHTHINGASAFREEPUPPYv7HENYOUCOMPARECOSTSINTERMSOFINCREASEDLOADTIME
WITHTHEBENEFITPROVIDEDBYINCREASEDCOMPRESSIONRATIO THETWO:LIB BASEDOPTIONS@D4AH;>FAND
0A278E47867 APPEARTOOFFERTHEBESTTRADE OFF(ERESALISTINGSHOWINGTHESYNTAXFORGENERATING
COMPRESSEDVERSIONSOFA'TABLEALONGWITHTIMINGINFORMATION
BHB/B0=31>G -/WRRNQdX[S"
BHB/B0=31>G -bTccX\X]V^]
BHB/B0=31>G -bTcTRW^^]
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"N]^]T]^[^VVX]V_PaP[[T['


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

!PbbT[TRc_PaP[[T[P'Ua^\PR^[eX]bZTf"P*

CPQ[TRaTPcTS

4[P_bTS)))#!&%
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"NQPbXR]^[^VVX]V_PaP[[T['R^\_aTbb
!PbbT[TRc_PaP[[T[P'Ua^\PR^[eX]bZTf"P*

CPQ[TRaTPcTS

4[P_bTS)) )"$(&
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"N^[c_]^[^VVX]V_PaP[[T['R^\_aTbbU^a^[c_
!PbbT[TRc_PaP[[T[P'Ua^\PR^[eX]bZTf"P*

CPQ[TRaTPcTS

4[P_bTS)) )!#$'
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"NWRR ]^[^VVX]V_PaP[[T['R^\_aTbbU^a`dTah[^f
!PbbT[TRc_PaP[[T[P'Ua^\PR^[eX]bZTf"P*

CPQ[TRaTPcTS

4[P_bTS)))$%$&
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"NWRR!]^[^VVX]V_PaP[[T['R^\_aTbbU^a`dTahWXVW
!PbbT[TRc_PaP[[T[P'Ua^\PR^[eX]bZTf"P*

CPQ[TRaTPcTS

4[P_bTS)) )$%#(
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"NWRR"]^[^VVX]V_PaP[[T['R^\_aTbbU^aPaRWXeT[^f
!PbbT[TRc_PaP[[T[P'Ua^\PR^[eX]bZTf"P*

CPQ[TRaTPcTS

4[P_bTS)) )$"#"
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"NWRR#]^[^VVX]V_PaP[[T['R^\_aTbbU^aPaRWXeTWXVW
!PbbT[TRc_PaP[[T[P'Ua^\PR^[eX]bZTf"P*

CPQ[TRaTPcTS

4[P_bTS))')$$$'
BHB/B0=31>G -bTccX\X]V^UU
BHB/B0=31>G -bTcTRW^^UU
BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta)
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B

02>;E8=B:4F"C01;4 $"#&$



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

bd\ $"#&$

a^fbT[TRcTS

BHB/B0=31>G-RPcR^\_NaPcX^b`[
R^\_dcTbd\^Uc^cP[bXiTN\TVb^]aT_^ac
QaTPZ^]aT_^ac
R^[^f]TaU^aP 
R^[bTV\T]cN]P\TU^aP!
R^[bTV\T]cNch_TU^aP 
R^[c^cP[bXiTN\TVbU^a(((((((
R^[R^\_aTbbX^]NaPcX^U^a((((
bT[TRc^f]TabTV\T]cN]P\TbTV\T]cNch_Tch_T
bd\QhcTb !# !#Pbc^cP[bXiTN\TVb
^aXVX]P[NbXiTbd\QhcTb !# !#PbR^\_aTbbX^]NaPcX^
Ua^\SQPNbTV\T]cb
fWTaT^f]Ta[XZT]e[^f]Ta^f]Ta
P]SbTV\T]cN]P\T[XZT]e[cPQ[TN]P\TbTV\T]cN]P\T
P]SbTV\T]cNch_T[XZT]e[ch_TbTV\T]cNch_T
Va^d_Qh^f]TabTV\T]cN]P\TcPQ[Tb_PRTN]P\TbTV\T]cNch_T
^aSTaQh$*

BHB/B0=31>G -/R^\_NaPcX^
4]cTaeP[dTU^a^aXVX]P[NbXiT) $"#&$
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B2><?A4BB8>=NA0C8>

:B>B:4F"N=>=4C01;4 $"&' 
:B>B:4F"N>;C?C01;4 & !& #
:B>B:4F"N10B82C01;4(%#& %
:B>B:4F"N722 C01;4"&( #
:B>B:4F"N722"C01;4""%(#$%
:B>B:4F"N722!C01;4""%&#$%
:B>B:4F"N722#C01;4!&#"$$(

bd\!$( #

&a^fbbT[TRcTS
4HELISTINGSHOWSTHECOMMANDSUSEDTOCREATECOMPRESSEDVERSIONSOFTHEB:4F"TABLE7EALSO
LOADEDANUNCOMPRESSEDVERSIONFORATIMINGREFERENCE.OTEALSOTHATTHEB:4F"TABLEISHIGHLY
COMPRESSIBLEDUETOMANYREPEATINGVALUESINASMALLNUMBEROFCOLUMNS)TSALITTLEHARDTOPICKOUT
THEINFORMATIONFROMTHELISTING SO4ABLE SUMMARIZESTHEDATAINAMOREEASILYDIGESTEDFORMAT


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

Table 3-2. HCC Load Times vs.Compression Ratios for SKEW3

Table Name Compress For Compression Ratio Load Time Load Time Ratio
B:4F"

B:4F"N=>=4   

B:4F"N>;C?>;C?   

B:4F"N10B8210B82   

B:4F"N722 @D4AH ;>F   

B:4F"N722!@D4AH 7867   

B:4F"N722"0A278E4 ;>F   

B:4F"N722#0A278E4 7867  



3OASYOUCANSEE @D4AH7867AND0A278E4;>FCOMPRESSIONLEVELSRESULTEDINALMOSTEXACTLYTHE
SAMECOMPRESSIONRATIOS FORTHISDATASETANDTOOKROUGHLYTHESAMEAMOUNTOFTIMETOLOAD
,OADINGISDEFINITELYSLOWERWITHCOMPRESSIONANDFORTHISDATASETWASSOMEWHEREBETWEENAND
TIMESSLOWERWITHTHEEXCEPTIONOF0A278E47867 WHICHWELLCOMEBACKTO .OTICETHEHUGEJUMPIN
COMPRESSIONBETWEEN@D4AH;>FAND@D4AH78677HILETHELOADTIMEROUGHLYDOUBLED THECOMPRESSION
RATIOIMPROVEDBYAFACTOROF&ORTHISDATASET THISISCLEARLYTHESWEETSPOTWHENCOMPARINGLOADTIME
TOCOMPRESSIONRATIO
.OWLETSTURNOURATTENTIONTOTHE0A278E47867COMPRESSIONSETTING)NTHEPREVIOUSTESTWEDIDNOT
ATTEMPTTOMAXIMIZETHELOADTIME/URCHOICEOFISACTUALLYARATHERPEDESTRIANSETTINGFORPARALLELISM
ON%XADATA)NADDITION OURPARALLELSLAVEPROCESSESWERELIMITEDTOASINGLENODEVIATHE
?0A0;;4;N5>A24N;>20;PARAMETERWELLTALKMOREABOUTTHATIN#HAPTER 3OOURLOADPROCESSWASUSING
ATOTALOFEIGHTSLAVESONASINGLENODE(ERESSOMEOUTPUTFROMTHE5NIXc^_COMMANDSHOWINGHOW
THESYSTEMWASBEHAVINGDURINGTHELOAD
,,,5Xabc722#ad]'b[PeTb
c^_ ()$#) #d_!SPhb )" $dbTab[^PSPeTaPVT)!&(  (
CPbZb)'"!c^cP[(ad]]X]V'!"b[TT_X]Vbc^__TSi^\QXT
Cpu(s): 50.5%us%bh]X#''XS fPWXbXbc
<T\)&#!&&$!Zc^cP[!(#($'ZdbTS##$"!%&!ZUaTT '!'ZQdUUTab
BfP_) %&& '$!Zc^cP[! !(##ZdbTS #%$('ZUaTT!$ $!(!ZRPRWTS

?83DB4A?A=8E8ACA4BB7AB2?D<4<C8<42><<0=3
(##^aPR[T!$  V'%\$$\A((( )! !$^aPN_ NB0=31>G 
(#$ ^aPR[T!$  V'%\$$\A((( )! ! ^aPN_!NB0=31>G 
(#%$^aPR[T!$  V'%\$$\A((( )! "#^aPN_"NB0=31>G 
(#%'^aPR[T!$  V'&\$$\A((( )!!!^aPN_#NB0=31>G 
(#&(^aPR[T!$  V'%\$$\A((( )! ! ^aPN_$NB0=31>G 
($ $^aPR[T!$  V'%\$#\A((( )!  '^aPN_%NB0=31>G 


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

($ &^aPR[T!$  V''\$\A((( )!&$(^aPN_&NB0=31>G 


(# ^aPR[T!$  V'&\$#\A(($ )! " ^aPN_NB0=31>G 
#LEARLY LOADINGDATAINTOAN0A278E47867COMPRESSEDTABLEISA#05 INTENSIVEPROCESS"UTNOTICE
THATWERESTILLONLYUSINGABOUTHALFTHEPROCESSINGPOWERONTHESINGLE$ATABASE3ERVER!DDINGMORE
PROCESSORSANDMORESERVERSSHOULDMAKEITGOCONSIDERABLYFASTER"YTHEWAY ITSUSUALLYWORTHWHILETO
LOOKATTHE#05USAGEDURINGTHEUNCOMPRESSEDLOADFORCOMPARISONPURPOSES(ERESANOTHERSNAPSHOT
FROMc^_TAKENDURINGTHELOADINGOFTHEUNCOMPRESSEDVERSIONOFTHEB:4F"TABLEINTHISANDSIMILAR
SNAPSHOTS WEVEHIGHLIGHTEDOUTPUTITEMSOFPARTICULARINTEREST
,,,=^2^\_aTbbX^];^PS
c^_ ()#%)$$d_!SPhb )!"%dbTab[^PSPeTaPVT) ! %  !
CPbZb)'""c^cP[!ad]]X]V'" b[TT_X]Vbc^__TSi^\QXT
Cpu(s): 22.3%us #bh]X&$(XS fP WX!bXbc
<T\)&#!&&$!Zc^cP[!(!&"$"!ZdbTS##&$#!!ZUaTT "&%ZQdUUTab
BfP_) %&& '$!Zc^cP[! "$"%'ZdbTS #%"%#'#ZUaTT!$&#%&!ZRPRWTS

?83DB4A?A=8E8ACA4BB7AB2?D<4<C8<42><<0=3
$(((^aPR[T % V&!\%#\B$#' )#'(^aPN_NB0=31>G 
% ^aPR[T % V&!\%#\B$ $ )#&!^aPN_ NB0=31>G 
%!#^aPR[T % V%(\% \B#'$ )"(&^aPN_&NB0=31>G 
%!^aPR[T % V&\% \B##% )# %^aPN_%NB0=31>G 
%"^aPR[T % V& \%!\B#"% )##!^aPN_!NB0=31>G 
% #^aPR[T % V& \%!\B#!( )#!%^aPN_$NB0=31>G 
%&^aPR[T % V%(\% \B#( )#!'^aPN_#NB0=31>G 
%$^aPR[T $ V&!\%#\A"'" )##$^aPN_"NB0=31>G 
.OTICETHATWHILETHENUMBEROFACTIVEPROCESSESISTHESAME THE#05USAGEISSIGNIFICANTLYLESS
WHENTHEDATAISNOTBEINGCOMPRESSEDDURINGTHELOAD4HEOTHERLEVELSOFCOMPRESSIONUSESOMEWHAT
LESS#05 BUTAREMUCHCLOSERTO(##THANTOTHENONCOMPRESSEDLOAD
4OSPEEDUPTHE0A278E47867LOADINGWECOULDADDMOREPROCESSESORWECOULDALLOWTHESLAVESTO
RUNONMULTIPLENODES(ERESAQUICKEXAMPLE
BHB/B0=31>G -P[cTabhbcT\bTc_PaP[[T[NU^aRTN[^RP[,UP[bT*

BhbcT\P[cTaTS

4[P_bTS)))(
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTf"NWRR#]^[^VVX]V_PaP[[T["!R^\_aTbbU^aPaRWXeTWXVW
!PbbT[TRc_PaP[[T[P"!Ua^\Zb^bZTf"P*

CPQ[TRaTPcTS

4[P_bTS))") '(%
3ETTINGTHE?0A0;;4;N5>A24N;>20;PARAMETERTO&!,3%ALLOWEDSLAVESTOBESPREADACROSSBOTH
NODES3ETTINGTHEPARALLELDEGREETOALLOWEDSLAVESTORUNONEACHOFTHETWONODESINOURQUARTER
RACKTESTSYSTEM4HISEFFECTIVELYUTILIZEDALLTHE#05RESOURCESONBOTHNODES(ERESONELASTSNAPSHOT
OFc^_OUTPUTFROMONEOFTHENODESDURINGTHELOAD4HEOTHERNODESHOWEDTHESAMEBASICPROFILE
DURINGTHELOAD
,,,BTR^]S722#ad]"!b[PeTb
c^_ ')"!)#"d_!) !dbTab[^PSPeTaPVT) '$  &#&
CPbZb)'%!c^cP[ (ad]]X]V'#"b[TT_X]Vbc^__TSi^\QXT


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

Cpu(s): 97.3%us#bh]X!!XSfPWXbXbc
<T\)&#!&&$!Zc^cP["$ # '%#ZdbTS"'''$'''ZUaTT (!$#'ZQdUUTab
BfP_) %&& '$!Zc^cP[ZdbTS %&& '$!ZUaTT"%#$!'ZRPRWTS

?83DB4A?A=8E8ACA4BB7AB2?D<4<C8<42><<0=3
! %$&^aPR[T!$  V \&!\A(( !$)! %^aPN_ NB0=31>G!
! %%"^aPR[T!$  V "\'\A(( !$)  ^aPN_#NB0=31>G!
!%#' ^aPR[T!$  V'(\$#\A((  ")&"&^aPN_'NB0=31>G!
!%#(%^aPR[T!$  V'(\$#\A((  ")%''^aPN_ $NB0=31>G!
! %%&^aPR[T!$  V \&"\A('$!$) %(^aPN_%NB0=31>G!
!%#'"^aPR[T!$  V'(\$"\A('$ ")%%"^aPN_(NB0=31>G!
!%#''^aPR[T!$  V(\$!\A('$ ")'& ^aPN_ NB0=31>G!
!%#'$^aPR[T!$  V(\$#\A(&( ")#$#^aPN_ NB0=31>G!
!%#(^aPR[T!$  V(\$#\A(&( ")##%^aPN_ !NB0=31>G!
! %$$^aPR[T!$  V $\&\A(&" $) "!!^aPN_NB0=31>G!
!%#(#^aPR[T!$  V'(\$!\A(&" ")"#!^aPN_ #NB0=31>G!
! %% ^aPR[T!$  V %\&"\A($# $) !%$^aPN_"NB0=31>G!
!%#(!^aPR[T!$  V'(\$#\A($# ")' "^aPN_ "NB0=31>G!
! %$(^aPR[T!$  V #\&(\A(#'!$) "#!^aPN_!NB0=31>G!
! %%(^aPR[T!$  V &\&!\A($ $)  (^aPN_&NB0=31>G!
! %%$^aPR[T!$  V &\%&\A'%! $) ''^aPN_$NB0=31>G!

1UERY0ERFORMANCE
/FCOURSE LOADTIMEISNOTTHEONLYPERFORMANCEMETRICOFINTEREST1UERYTIMEISMORECRITICALTHANLOAD
TIMEFORMOSTSYSTEMSSINCETHEDATAISONLYLOADEDONCEBUTQUERIEDMANYTIMES1UERYPERFORMANCEIS
AMIXEDBAGWHENITCOMESTOCOMPRESSION$EPENDINGONTHETYPEOFQUERY COMPRESSIONCANEITHER
SPEEDITUPORSLOWITDOWN$ECOMPRESSIONCERTAINLYADDSOVERHEADINTHEWAYOFADDITIONAL#05USAGE
BUTFORQUERIESTHATAREBOTTLENECKEDONDISKACCESS REDUCINGTHENUMBEROFBLOCKSTHATMUSTBEREAD
CANOFTENOFFSETANDINMANYCASESMORETHANMAKEUPFORTHEADDITIONALOVERHEAD+EEPINMINDTHAT
DEPENDINGONTHEACCESSMECHANISMUSED THEDECOMPRESSIONCANBEDONEONEITHERTHESTORAGECELLS
SMARTSCANS ORONTHEDATABASENODES(ERESANEXAMPLEOFRUNNINGA#05 INTENSIVEPROCEDURE
BHB/B0=31>G -RPcVPcWTaNcPQ[TNbcPcbb`[
QTVX]
SQ\bNbcPcbVPcWTaNcPQ[TNbcPcb
^f]TacPQ[TN]P\T
STVaTT,-"!
\TcW^SN^_c,-U^aP[[R^[d\]bbXiT 
*
T]S*


BHB/B0=31>G -/VPcWTaNcPQ[TNbcPcb
4]cTaeP[dTU^a^f]Ta)02>;E8=
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS))) ! #
BHB/B0=31>G -/VPcWTaNcPQ[TNbcPcb
4]cTaeP[dTU^a^f]Ta):B>


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

4]cTaeP[dTU^acPQ[TN]P\T)B:4F"N>;C?

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS))) !&$
BHB/B0=31>G -/VPcWTaNcPQ[TNbcPcb
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"N10B82

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS))) !%
BHB/B0=31>G -/VPcWTaNcPQ[TNbcPcb
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"N722 

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS))) #! 
BHB/B0=31>G -/VPcWTaNcPQ[TNbcPcb
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"N722!

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS))) #(#
BHB/B0=31>G -/VPcWTaNcPQ[TNbcPcb
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"N722"

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS))) #!#
BHB/B0=31>G -/VPcWTaNcPQ[TNbcPcb
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F"N722#

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS)))! ""
!NDAGAINFORCLARITY 4ABLE SHOWSTHETIMINGSINAMOREREADABLEFORMAT

Table 3-3. Statistics Gathering Timing for SKEW3

Table Name Compress For Compression Ratio Run Time Run Time Ratio
B:4F" 

B:4F"N>;C?>;C?   


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

Table Name Compress For Compression Ratio Run Time Run Time Ratio
B:4F"N10B8210B82   

B:4F"N722 @D4AH ;>F   

B:4F"N722!@D4AH 7867   

B:4F"N722"0A278E4 ;>F   

B:4F"N722#0A278E4 7867   



'ATHERINGSTATISTICSISAVERY#05 INTENSIVEOPERATION3PREADINGTHESTAT GATHERINGACROSSSLAVE
PROCESSESPERNODEALMOSTCOMPLETELYUTILIZEDTHE#05RESOURCESONTHE$"SERVERS!SYOUCANSEE THE
COMPRESSIONSLOWEDDOWNTHEPROCESSINGENOUGHTOOUTWEIGHTHEGAINSFROMTHEREDUCEDNUMBEROF
DATABLOCKSTHATNEEDEDTOBEREAD4HISISDUETOTHE#05 INTENSIVENATUREOFTHEWORKBEINGDONE
(ERESASNAPSHOTOFc^_OUTPUTTOVERIFYTHATTHESYSTEMIS#05 BOUND
c^_ #)#)$d_#SPhb%) & dbTab[^PSPeTaPVT) ' # %#$"
CPbZb)'# c^cP[! ad]]X]V'!b[TT_X]Vbc^__TSi^\QXT
Cpu(s): 96.1%us&bh]X!(XSfPWX"bXbc
<T\)&#!&&$!Zc^cP["##(##!#ZdbTS"($"""!'ZUaTT"#$##'ZQdUUTab
BfP_) %&& '$!Zc^cP[$%'&$%ZdbTS %!"(%ZUaTT!(!!%" !ZRPRWTS

?83DB4A?A=8E8ACA4BB7AB2?D<4<C8<42><<0=3
% !&^aPR[T!$#"V #%\ %\A(&%! ) ( %^aPN_ N?>2 
% $#^aPR[T!$#"V #$\ (\A(&%! ) &$^aPN_ #N?>2 
% "&^aPR[T!$#"V ##\ "\A(%(! ) #!^aPN_%N?>2 
% !$^aPR[T!$#"V "(\ '\A(%%! )!# ^aPN_N?>2 
% ""^aPR[T!$#"V #&\ (\A(%%! )!& #^aPN_#N?>2 
% #$^aPR[T!$#"V #$\ &\A(%!! )!!$^aPN_ N?>2 
% "$^aPR[T!$#"V $#\ !\A($(! ) %$ ^aPN_$N?>2 
% #"^aPR[T!$#"V "$\ %\A($(! )!!""^aPN_(N?>2 
% " ^aPR[T!$#"V $%\ (\A($%! ) %&"^aPN_"N?>2 
% # ^aPR[T!$#"V #"\ $\A($%! ) '%!^aPN_'N?>2 
% $ ^aPR[T!$#"V $$\ ! \A($%! ) $#^aPN_ "N?>2 
% #&^aPR[T!$#"V #\ "\A(#(! ) &(!^aPN_ N?>2 
% "(^aPR[T!$#"V $$\ #\A(#%! ) "!%^aPN_&N?>2 
% #(^aPR[T!$#"V $%\ !#\A("(! )! $^aPN_ !N?>2 
% !(^aPR[T!$#"V $&\ !%\A(""! )(((^aPN_!N?>2 
% $%^aPR[T!$#"V # \ \A(""! ) %&%^aPN_ $N?>2 
.OWLETSLOOKATAQUERYTHATIS)/ INTENSIVE4HISTESTUSESAQUERYWITHOUTAF74A4CLAUSETHAT
SPENDSMOSTOFITSTIMERETRIEVINGDATAFROMTHESTORAGELAYERVIACELL SMARTTABLESCANS
BHB/B0=31>G -/WRRNcTbc"
BHB/B0=31>G -bTccX\X]V^]
BHB/B0=31>G -bT[TRc_PaP[[T[P"!bd\_ZNR^[Ua^\PR^[eX]bZTf"P*



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

BD<?:N2>;

% '4 $

a^fbT[TRcTS
4[P_bTS)))%! 
BHB/B0=31>G -bT[TRc_PaP[[T[P"!bd\_ZNR^[Ua^\Zb^bZTf"N^[c_P*

BD<?:N2>;

% '4 $

a^fbT[TRcTS
4[P_bTS)))$&(
BHB/B0=31>G -bT[TRc_PaP[[T[P"!bd\_ZNR^[Ua^\Zb^bZTf"NQPbXRP*

BD<?:N2>;

% '4 $

a^fbT[TRcTS

4[P_bTS)))$!%
BHB/B0=31>G -bT[TRc_PaP[[T[P"!bd\_ZNR^[Ua^\Zb^bZTf"NWRR P*

BD<?:N2>;

% '4 $

a^fbT[TRcTS

4[P_bTS)))"$%
BHB/B0=31>G -bT[TRc_PaP[[T[P"!bd\_ZNR^[Ua^\Zb^bZTf"NWRR!P*

BD<?:N2>;

% '4 $

a^fbT[TRcTS

4[P_bTS)))""(
BHB/B0=31>G -bT[TRc_PaP[[T[P"!bd\_ZNR^[Ua^\Zb^bZTf"NWRR"P*

BD<?:N2>;

% '4 $

a^fbT[TRcTS

4[P_bTS)))""%
BHB/B0=31>G -bT[TRc_PaP[[T[P"!bd\_ZNR^[Ua^\Zb^bZTf"NWRR#P*



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

BD<?:N2>;

% '4 $

a^fbT[TRcTS

4[P_bTS)))#&'
4ABLE SHOWSTHETIMINGSFORTHEUNQUALIFIEDQUERYINATABULARFORMAT

Table 3-4. Unqualified Query Timing on SKEW3

Table Name Compress For Compression Ratio Run Time Run Time Ratio
B:4F" 

B:4F"N>;C?>;C?  

B:4F"N10B8210B82  

B:4F"N722 @D4AH ;>F  

B:4F"N722!@D4AH 7867  

B:4F"N722"0A278E4 ;>F  

B:4F"N722#0A278E4 7867  



4HEQUERYDOESNOTREQUIREALOTOF#05RESOURCESONTHE$"SERVER!SARESULT THESAVINGSIN)/
TIMEMORETHANOFFSETTHEINCREASED#05.OTETHATTHERATHERSIGNIFICANT#05REQUIREMENTSOFTHE
0A278E47867DECOMPRESSIONCAUSEDTHEELAPSEDTIMETOINCREASEFORTHISTESTOVERTHELESS#05
INTENSIVEALGORITHMS.EVERTHELESS ITWASSTILLFASTERTHANTHEUNCOMPRESSEDRUN(ERESASNAPSHOTOF
c^_OUTPUTWHILEONEOFTHESEQUERIESWASRUNNING
c^_ $)"&) "d_#SPhb&) #(dbTab[^PSPeTaPVT)$! !$
CPbZb)'%&c^cP[&ad]]X]V'%b[TT_X]Vbc^__TSi^\QXT
Cpu(s): 25.2%us(bh]X&"#XS$fPWX bXbc
<T\)&#!&&$!Zc^cP["$ ("'(%ZdbTS"''""'$%ZUaTT"#%$%'ZQdUUTab
BfP_) %&& '$!Zc^cP[$%'#''ZdbTS %!""%#ZUaTT!((&%'$%ZRPRWTS

?83DB4A?A=8E8ACA4BB7AB2?D<4<C8<42><<0=3
!$# #^aPR[T % V#\" \B"" ) "&$^aPN_ NB0=31>G 
!$#&#^aPR[T $ V"(\"\B"!# ) "$#^aPN_ !NB0=31>G 
!$#&!^aPR[T $ V"&\!(\B!'' ) "#$^aPN_ NB0=31>G 
!$#!^aPR[T % V"$\!'\A!&') "& ^aPN_#NB0=31>G 
!$# '^aPR[T $ V"(\" \A!&# ) "&'^aPN_"NB0=31>G 
!$#"$^aPR[T $ V"'\"\B!&# ) "#%^aPN_'NB0=31>G 
!$#&'^aPR[T $ V"'\"\B!&  ) "&$^aPN_ #NB0=31>G 
!$#!'^aPR[T $ V"'\" \B!#' ) "' ^aPN_$NB0=31>G 


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

!$#"&^aPR[T $ V"'\"\A!#$ ) "''^aPN_(NB0=31>G 


!$# %^aPR[T $ V"(\"!\B!#  ) "' ^aPN_!NB0=31>G 
!$#"^aPR[T $ V"(\" \A!!' ) "^aPN_%NB0=31>G 
!$#""^aPR[T % V#\"!\B!!' ) !(#^aPN_&NB0=31>G 
!$#&^aPR[T $ V"'\"\A!!' ) "&"^aPN_ NB0=31>G 
!$#'#^aPR[T $ V"'\"\B!! ) "!"^aPN_ $NB0=31>G 
!$#&%^aPR[T $ V"&\"\B '$ ) ""^aPN_ "NB0=31>G 
!$# ^aPR[T $ V"'\"\A "! ) !%&^aPN_NB0=31>G 

$-,0ERFORMANCE
'ENERALLYSPEAKING RECORDSTHATWILLBEUPDATEDSHOULDNOTBECOMPRESSED7HENYOUUPDATEARECORD
INAN(##TABLE THERECORDWILLBEMIGRATEDTOANEWABLOCKTHATISFLAGGEDASAN/,40COMPRESSED
BLOCK/FCOURSE APOINTERWILLBELEFTBEHINDSOTHATYOUCANSTILLGETTOTHERECORDVIAITSOLDROWID BUT
THERECORDWILLBEASSIGNEDANEWROWIDASWELL3INCEUPDATEDRECORDSAREDOWNGRADEDTO/,40
COMPRESSIONYOUNEEDTOUNDERSTANDHOWTHATCOMPRESSIONMECHANISMWORKSONUPDATES&IGURE 
DEMONSTRATESHOWNON DIRECTPATHLOADSINTOAN/,40BLOCKAREPROCESSED

%MPTY )NITIALLY #OMPRESSED


"LOCK 5NCOMPRESSED 0ARTIALLY
"LOCK
"LOCK #OMPRESSED #OMPRESSED
"LOCK "LOCK


Figure 3-6. The OLTP compression process for non-direct path loads

4HEPROGRESSIONOFSTATESMOVESFROMLEFTTORIGHT2OWSAREINITIALLYLOADEDINANUNCOMPRESSED
STATE!STHEBLOCKFILLSTOTHEPOINTWHERENOMOREROWSCANBEINSERTED THEROWDATAINTHEBLOCKIS
COMPRESSED4HEBLOCKISTHENPLACEDBACKONTHEFREELISTANDISCAPABLEOFACCEPTINGMORE
UNCOMPRESSEDROWS4HISMEANSTHATINAN/,40 COMPRESSEDTABLE BLOCKSCANBEINVARIOUSSTATESOF
COMPRESSION!LLROWSCANBECOMPRESSED SOMEROWSCANBECOMPRESSED ORNOROWSCANBE
COMPRESSED4HISISEXACTLYHOWRECORDSIN(##BLOCKSBEHAVEWHENTHEYAREUPDATED!COUPLEOF
EXAMPLESWILLDEMONSTRATETHISBEHAVIOR4HEFIRSTWILLSHOWHOWTHESIZEOFATABLECANBALLOONWITH
UPDATES
BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4F #%"

bd\ #%"

a^fbT[TRcTS

BHB/B0=31>G -RaTPcTcPQ[TZb^bZTfNWRR"]^[^VVX]V_PaP[[T[ %R^\_aTbbU^aPaRWXeT[^f
!PbbT[TRcUa^\Zb^bZTfP*

CPQ[TRaTPcTS

BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4FN722"

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4FN722"!"0A278E4;>F

bd\!"

a^fbT[TRcTS

BHB/B0=31>G -d_SPcT_PaP[[T[P"!Zb^bZTfNWRR"PbTcR^[ ,R^[ *

"!#a^fbd_SPcTS

BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4FN722"

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4FN722"( %0A278E4;>F

bd\( %

a^fbT[TRcTS

BHB/B0=31>G -2WTRZW^fcWXbR^\_PaTbc^SXaTRc_PcW[^PS>;C?cPQ[T
BHB/B0=31>G -
BHB/B0=31>G -RaTPcTcPQ[TZb^bZTfN^[c_]^[^VVX]V_PaP[[T[ %R^\_aTbbU^a^[c_
!PbbT[TRc_PaP[[T[P %Ua^\Zb^bZTfP*

CPQ[TRaTPcTS

BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4FN>;C?



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4FN>;C?(" >;C?

bd\(" 

a^fbT[TRcTS

BHB/B0=31>G -/R^\_NaPcX^
4]cTaeP[dTU^a^aXVX]P[NbXiT) #%"
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B2><?A4BB8>=NA0C8>

:B>B:4FC01;4 #%" 
:B>B:4FN722"C01;4( % %
:B>B:4FN>;C?C01;4("  %

bd\"!&(#

"a^fbbT[TRcTS
4HISOUTPUTSHOWSTHATUPDATINGALLTHERECORDSINAN(##0A278E4;>FTABLEEXPANDEDITTOA
SLIGHTLYLARGERFOOTPRINTTHANAN/,40 COMPRESSEDVIADIRECTPATHLOAD VERSIONOFTHESAMETABLE
)NTERESTINGLYENOUGH THEUPDATESTATEMENTSPENTMOSTOFITSTIMEWAITINGON1D554A1DBHF08CB
!PPARENTLYTHEREISNOTASPECIFICWAITEVENTFORWHENAPROCESSISWAITINGWHILEABLOCKISBEING
COMPRESSED(EREISTHECOMPLETESETOFEVENTSTHATTHEUPDATESTATEMENTWAITEDONFROMATRACE
FILEPROCESSEDWITHcZ_a^U ALONGWITHPER SECONDSESSIONSTATISTICSBOTHFROMONEOFTHEPARALLELSLAVE
PROCESSES 
4[P_bTScX\TbX]R[dSTfPXcX]V^]U^[[^fX]VTeT]cb)
4eT]cfPXcTS^]CX\Tb<PgFPXcC^cP[FPXcTS
FPXcTS
Rdab^a)_X]BfPXc^]G   
?G3T`)4gTRdcX^]<bV %%&#"%' $
RT[[\d[cXQ[^RZ_WhbXRP[aTPS #!
aTb\Va)R_d`dP]cd\(  #
buffer busy waits 2077 3.54 139.84
[PcRW)RPRWTQdUUTabRWPX]b!%'"#%&$
T]`)CGR^]cT]cX^]%%!&""
T]`)7FR^]cT]cX^] #! $$ %$%
[PcRW)aTS^P[[^RPcX^]"% !$ $ 
V[^QP[T]`dTdTTg_P]SfPXc (
VRRdaaT]c\d[cXQ[^RZaT`dTbc%&"
:92)FPXcU^a\bVbT]Sbc^R^\_[TcT %
[^VQdUUTab_PRT!"!' !##
[PcRW)T]`dTdTWPbWRWPX]b!' 
[PcRW)VTbaTb^daRTWPbW[Xbc! $
[^VUX[TbfXcRWR^\_[TcX^]$"''
T]`)51R^]cT]cX^]% " !


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

T]`)DBR^]cT]cX^]#"("(''!%#
3XbZUX[T^_TaPcX^]b8> !
R^]ca^[UX[TbT`dT]cXP[aTPS&! & %#
RT[[bX]V[TQ[^RZ_WhbXRP[aTPS " $!%
SQUX[TbX]V[TfaXcT&!%!"
:BE\PbcTafPXc#" ! $!#
0B<UX[T\TcPSPcP^_TaPcX^] ## 
ZUZ)Pbh]RSXbZ8>"%("$
RT[[b\PacUX[TRaTPcX^]#&&(' $
2BB^_TaPcX^])PRcX^] 
T]`)25R^]cT]cX^]"% (!#
R^]ca^[UX[T_PaP[[T[faXcT '(($
35B[^RZWP]S[T!$!"'"%
d]S^bTV\T]cTgcT]bX^] %" !(($
; eP[XSPcX^]!  
aT[XPQ[T\TbbPVT$$
[PcRW)a^fRPRWT^QYTRcb 
VRRaVaP]c!fPh 
VRRa\d[cXQ[^RZaT`dTbc#
[^VUX[TbfXcRWRWTRZ_^X]cX]R^\_[TcT%"!(# $
[PcRW)d]S^V[^QP[SPcP"
[PcRWUaTT&$&
[PcRW)VRT[T\T]c#
fPXc[Xbc[PcRWUaTT!
[^VUX[Tbh]R 
[PcRW)^QYTRc`dTdTWTPSTa^_TaPcX^]"


BcPc=P\T4eT]cbBTR

7B2>;C?B_PRTBPeX]V"#'$
7B2>;C?2^\_aTbbTS1[^RZb 
7B22^\_aTbbTSBTV\T]c1[^RZ2WP]VTb'" #
BC0C7B27TP_BTV\T]c1[^RZ2WP]VTb'" #
BC0C7B2>;C?=^]2^\_aTbbXQ[T1[^RZb 
BC0C7B2>;C?_^bXcXeTR^\_aTbbX^]!
7B2>;C?X][X]TR^\_aTbbX^]!
4HESECONDEXAMPLEDEMONSTRATESTHATAROWISMIGRATEDFROMAN(##BLOCKWHENITISUPDATED
"ASICALLYWELLUPDATEASINGLEROW SEETHATITSROWIDHASCHANGED VERIFYTHATWECANSTILLGETTOTHE
RECORDVIAITSORIGINALROWID ANDCHECKTOSEEIFTHEC01;454C272>=C8=D43A>FSTATISTICGETSUPDATED
WHENWEACCESSTHEROWVIAITSORIGINALROWID
BHB/B0=31>G -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4FN722"

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>B:4FN722" '%0A278E4;>F

bd\ '%


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTfNWRR"fWTaT_ZNR^[, %"%&*



2>D=C

 

BHB/B0=31>G -bT[TRca^fXS^[SNa^fXSa^fXS^[SNa^fXSNU^a\Pc
!Ua^\Zb^bZTfNWRR"fWTaT_ZNR^[, %"%&*

A>F83>;3NA>F83N5>A<0C

000C21008005'dB5R(' $$(##!!!"""

BHB/B0=31>G -B^^daa^fXbX]UX[T'Q[^RZ $$(##!a^f!!"""
BHB/B0=31>G -
BHB/B0=31>G -d_SPcTZb^bZTfNWRR"bTcR^[ ,R^[ fWTaT_ZNR^[, %"%&*

a^fd_SPcTS

BHB/B0=31>G -bT[TRca^fXS^[SNa^fXSa^fXS>;3NA>F83N5>A<0C
!Ua^\Zb^bZTfNWRR"fWTaT_ZNR^[, %"%&*

A>F83>;3NA>F83N5>A<0C

000C2100700<6<<000&" & '#

BHB/B0=31>G -7PCWTa^fXSWPbRWP]VTS~cWTa^f\^eTSc^UX[T&
BHB/B0=31>G -
BHB/B0=31>G -;TcbbTTXUfTRP]bcX[[VTcc^XceXPcWT^aXVX]P[a^fXS
BHB/B0=31>G -
BHB/B0=31>G -bT[TRc_ZNR^[Ua^\Zb^bZTfNWRR"fWTaTa^fXS,000C21008005'dB5R(*

?:N2>;

 %"%&

BHB/B0=31>G -HTbfTRP]~RP]fTdbTcWT]Tfa^fXS.
BHB/B0=31>G -
BHB/B0=31>G -bT[TRc_ZNR^[Ua^\Zb^bZTfNWRR"fWTaTa^fXS,000C2100700<6<<000*

?:N2>;

 %"%&

BHB/B0=31>G -CWPcf^aZbc^^~8czbP\XVaPcTSA^f
BHB/B0=31>G -;TczbeTaXUhfXcW{R^]cX]dTSa^f|bcPc
BHB/B0=31>G -
BHB/B0=31>G -/\hbcPcb
4]cTaeP[dTU^a]P\T)cPQ[TUTcRWR^]cX]dTSa^f



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

=0<4E0;D4

cPQ[TUTcRWR^]cX]dTSa^f!(#&

BHB/B0=31>G -bT[TRceXPcWT^aXVX]P[a^fXS
BHB/B0=31>G -
BHB/B0=31>G -bT[TRc_ZNR^[Ua^\Zb^bZTfNWRR"fWTaTa^fXS,000C21008005'dB5R(*

?:N2>;

 %"%&

BHB/B0=31>G -/\hbcPcb
4]cTaeP[dTU^a]P\T)cPQ[TUTcRWR^]cX]dTSa^f

=0<4E0;D4

cPQ[TUTcRWR^]cX]dTSa^f!(#'

BHB/B0=31>G -BcPcXbX]RaT\T]cTS~b^STUX]XcT[hP\XVaPcTSa^f
3OTHEROWHASDEFINITELYBEENMIGRATED.OWLETSVERIFYTHATTHEMIGRATEDROWISNOTCOMPRESSED
7ECANDOTHISBYDUMPINGTHEBLOCKWHERETHENEWLYMIGRATEDRECORDRESIDES"UTBEFOREWELOOKATTHE
MIGRATEDROWLETSHAVEALOOKATTHEORIGINALBLOCK
BHB/B0=31>G -RPcSd\_NQ[^RZb`[
/UX]SNcaPRT
P[cTabhbcT\Sd\_SPcPUX[TUX[T]^Q[^RZQ[^RZ]^*

BHB/B0=31>G -/Sd\_NQ[^RZ

CA02458;4N=0<4

d P__^aPR[TSXPVaSQ\bbP]SQ^gB0=31>G caPRTB0=31>G N^aPN$ ( caR

4]cTaeP[dTU^aUX[T]^)&
4]cTaeP[dTU^aQ[^RZ]^)" & '#

BhbcT\P[cTaTS
.OWLETSLOOKATTHETRACEFILEPRODUCEDINTHETRACEDIRECTORY(EREISANEXCERPTFROMTHEBLOCK
DUMP
1[^RZWTPSTaSd\_)g U%"R
>QYTRcXS^]1[^RZ.H
seg/obj:0x13081RbR)g  T$&#S#XcR)"U[V)4ch_) 30C0
Qa])QSQP)g U%"eTa)g ^_R)
X]R)TgU[V)

8c[GXSDQP5[PV;RZBR]5bR
g g!U "#gTTR"'" U!## UbRg
g!ggUbRg
g"ggUbRg


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

QSQP)g U%"R
SPcPNQ[^RZNSd\_SPcPWTPSTaPcg!Q'#(R' "&R
,,,,,,,,,,,,,,,
cbXi)g U'
WbXi)g #
_Q[)g!Q'#(R' "&R
&%$#"! 
U[PV,
]cPQ, 
nrow=1
UaaT, 
UbQ^,g #
UbT^,g U%
Peb_,g U#R
c^b_,g U#R
gT)_cXJL]a^f, ^UUb,
g !)_aXJL^UUb,g U%
Q[^RZNa^fNSd\_)
cPQa^f/g U%
c[)"!UQ)75;[Q)g RR)$
col 0: [ 4] c3 02 40 44
R^[ )J!LR !
R^[!)J L% &"%#%#&"% %#% &"%#
R^[")J&L&'%P& $ $Q"!
R^[#)J L$(
T]SN^UNQ[^RZNSd\_
4HEBLOCKISNOTCOMPRESSEDANDCONFORMSTOTHENORMAL/RACLEBLOCKFORMAT.OTICETHATTHEREIS
ONLYONEROWINTHEBLOCK]a^fb, !LSONOTICETHATcWTSPcPN^QYTRcNXSISINCLUDEDINTHEBLOCKINHEX
FORMATbTV^QY)g "' 4HETABLEHASFIVECOLUMNS4HEVALUESAREDISPLAYED ALSOINHEXFORMAT*UST
TOVERIFYTHATWEHAVETHERIGHTBLOCK WECANTRANSLATETHESPcPN^QYTRcNXSANDTHEVALUEOFTHEFIRST
COLUMNASFOLLOWS
BHB/B0=31>G -RPc^QYNQhNWTgb`[
R^[^QYTRcN]P\TU^aP"
bT[TRc^f]Ta^QYTRcN]P\T^QYTRcNch_T
Ua^\SQPN^QYTRcb
fWTaTSPcPN^QYTRcNXS,c^N]d\QTaaT_[PRTWTgNeP[dTgGGGGGG*

BHB/B0=31>G -/^QYNQhNWTg
4]cTaeP[dTU^aWTgNeP[dT)g "' 

>F=4A>1942CN=0<4>1942CNCH?4

:B>B:4FN722"C01;4


BHB/B0=31>G -STbRZb^bZTfNWRR"
=P\T=d[[.Ch_T

?:N2>;=D<14A
2>; =D<14A


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

2>;!E0A270A!"
2>;"30C4
2>;#E0A270A! 

BHB/B0=31>G -/SXb_[PhNaPf
4]cTaeP[dTU^abcaX]V)R"!###
4]cTaeP[dTU^ach_T)=D<14A

E0;D4

%"%&
!SYOUCANSEE THISISTHERECORDTHATWEUPDATEDINTHEB:4FN722"TABLE*USTASANASIDE ITIS
INTERESTINGTOSEEHOWTHECOMPRESSEDBLOCKFORMATDIFFERSFROMTHESTANDARDUNCOMPRESSEDFORMAT
(EREISASNIPPETFROMTHEORIGINALBLOCKINOUREXAMPLETHATISCOMPRESSEDFOR0A278E4;>F
,,,,,,,,,,,,,,,
cbXi)g U'
WbXi)g R
_Q[)g!Q$S&S$RTP&R
&%$#"! 
U[PV,
]cPQ, 
]a^f, 
UaaT, 
UbQ^,g R
UbT^,g"
Peb_,g #
c^b_,g #
aN(Xa!,g
\TRNZSQW(Xa!,g
&%$#"! 
bWRUNZSQW(Xa!,
&%$#"! 
U[PVN(Xa!,AArchive compression: Y
UR[bN(Xa!JL,jl
g %)_cXJL]a^f, ^UUb,
g P)_aXJL^UUb,g"
Q[^RZNa^fNSd\_)
cPQa^f/g"
c[)' %UQ)75=[Q)g!RR) 
]aXS)g! &RQS#
R^[)J'#L
Compression level: 03 (Archive Low)
;T]VcW^U2Da^f)'#
ZSiWaW)?221;:)!BcPacB[^c)
=D<?)!
?=D<)?>55)&(&#?A83)g! &RQS#
?=D<) ?>55) $((?A83)g! &RQS$
2DWTPSTa)
2DeTabX^])2D\PVXR]d\QTa)g#Q##$P"
2DRWTRZbd\)gU$!($'!


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

2Dc^cP[[T]VcW)! #%
2DU[PVb)=2D2A3>?
]R^[b)$
nrows: 32759
P[V^)
2DSTR^\_[T]VcW) &!%([T]eP[dT[T]VcW) #((&
a^f_XTRTb_Taa^f) 
num deleted rows: 1
deleted rows: 0,
BC0ACN2D)
 U## U!! U!%! &RQS#"T&%!
 &RQS$#Q##$P"'!($$!U$"(TTQ%$&UU&
.OTICETHATTHISBLOCKSHOWSTHATITISCOMPRESSEDATLEVEL0A278E4;>F !LSONOTICETHATONE
RECORDHASBEENDELETEDFROMTHISBLOCKMIGRATEDWOULDBEAMOREACCURATETERM ASTHISISTHERECORD
THATWEUPDATEDEARLIER 4HELINETHATSAYSST[TcTSa^fb)ACTUALLYSHOWSALISTOFTHEROWSTHATHAVEBEEN
MIGRATED2EMEMBERTHATWEUPDATEDTHERECORDWITHROWID MEANINGFILE BLOCK
SLOT3OTHISLINETELLSUSTHATTHEONEDELETEDROWWASINSLOT

■+EVIN3AYS)LIKETOREMINDPEOPLETOBEMINDFULOFTHEPOTENTIALPERFORMANCEIRREGULARITIESTHATMAYOCCUR
SHOULDATABLECOMPRISEDOF%(##DATAMETAMORPHOSEINTOATABLETHATISOFMIXEDCOMPRESSIONTYPESWITH
INDIRECTION4HERESHOULDBENOEXPECTEDLOSSINFUNCTIONALITYHOWEVER THEREISANEXPECTED YETUNPREDICTABLE
IMPACTTOTHEREPEATABILITYOFSCANPERFORMANCE4HEUNPREDICTABLENATUREISDUETOTHEFACTTHATITISCOMPLETELY
DATA DEPENDENT

Expected Compression Ratios


(##CANPROVIDEVERYIMPRESSIVECOMPRESSIONRATIOS4HEMARKETINGMATERIALHASCLAIMED¾
COMPRESSIONRATIOSANDBELIEVEITORNOT THISISACTUALLYAVERYACHIEVABLENUMBERFORMANYDATASETS/F
COURSETHEAMOUNTOFCOMPRESSIONDEPENDSHEAVILYONTHEDATAANDWHICHOFTHEFOURALGORITHMSIS
APPLIED4HEBESTWAYTODETERMINEWHATKINDOFCOMPRESSIONCANBEACHIEVEDONYOURDATASETISTOTEST
IT/RACLEALSOPROVIDESAUTILITYOFTENREFERREDTOASTHE#OMPRESSION!DVISOR TOCOMPRESSASAMPLEOF
DATAFROMATABLEINORDERTOCALCULATEANESTIMATEDCOMPRESSIONRATIO4HISUTILITYCANEVENBEUSEDON
NON %XADATAPLATFORMSASLONGASTHEYARERUNNINGORLATER4HISSECTIONWILLPROVIDESOME
INSIGHTINTOTHE#OMPRESSION!DVISORANDPROVIDECOMPRESSIONRATIOSONSOMESAMPLEREALWORLD
DATASETS

#OMPRESSION!DVISOR
)FYOUDONTHAVEACCESSTOAN%XADATABUTSTILLWANTTOTESTTHEEFFECTIVENESSOF(## YOUCANUSETHE
#OMPRESSION!DVISORFUNCTIONALITYTHATISPROVIDEDINTHE31<BN2><?A4BB8>=PACKAGE4HE
64CN2><?A4BB8>=NA0C8>PROCEDUREACTUALLYENABLESYOUTOCOMPRESSASAMPLEOFROWSFROMASPECIFIED
TABLE4HISISNOTANESTIMATEOFHOWMUCHCOMPRESSIONMIGHTHAPPENTHESAMPLEROWSAREINSERTED
INTOATEMPORARYTABLE4HENACOMPRESSEDVERSIONOFTHATTEMPORARYTABLEISCREATED4HERATIORETURNED
ISACOMPARISONBETWEENTHESIZESOFTHECOMPRESSEDVERSIONANDTHEUNCOMPRESSEDVERSION!SOF


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

/RACLE$ATABASEVERSION THISPROCEDUREMAYBEUSEDONANON %XADATAPLATFORMTOESTIMATE


COMPRESSIONRATIOSFORVARIOUSLEVELSOF(##ASWELLAS/,40COMPRESSION4HE!DVISORDOESNOTWORKON
NON %XADATAPLATFORMSRUNNING$ATABASEVERSIONSPRIORTO ALTHOUGHTHEREMAYBEAPATCH
AVAILABLETOENABLETHISFUNCTIONALITY
4HE#OMPRESSION!DVISORMAYALSOBEUSEFULON%XADATAPLATFORMS/FCOURSEYOUCOULDJUST
COMPRESSATABLEWITHTHEVARIOUSLEVELSTOSEEHOWWELLITCOMPRESSES BUTIFTHETABLESAREVERYLARGETHIS
MAYNOTBEPRACTICAL)NTHISCASEYOUMAYBETEMPTEDTOCREATEATEMPORARYTABLEBYSELECTINGTHE
RECORDSWHEREa^f]d\+GANDDOYOURCOMPRESSIONTESTONTHATSUBSETOFROWS!NDTHATSBASICALLYWHAT
THE!DVISORDOES ALTHOUGHITISALITTLESMARTERABOUTTHESETOFRECORDSITCHOOSES(ERESANEXAMPLEOF
ITSUSE
BHB/B0=31>G -RPcVTcNR^\_aTbbX^]NaPcX^b`[
bTcb`[Q[P]Z[X]Tb^]
bTcUTTSQPRZ^UU
PRRT_c^f]Ta
_a^\_c4]cTaEP[dTU^a^f]Ta)
PRRT_ccPQ[TN]P\T
_a^\_c4]cTaEP[dTU^acPQ[TN]P\T)
PRRT_cR^\_Nch_T
_a^\_c4]cTaEP[dTU^aR^\_aTbbX^]Nch_T>;C?)
STUPd[c>;C?

342;0A4

[NQ[ZR]cNR\_18=0AHN8=C464A*
[NQ[ZR]cNd]R\_18=0AHN8=C464A*
[Na^fNR\_18=0AHN8=C464A*
[Na^fNd]R\_18=0AHN8=C464A*
[NR\_NaPcX^=D<14A*
[NR^\_ch_TNbcaE0A270A!!*
[NR^\_ch_T]d\QTa*
1468=

RPbTR^\_Nch_T
fWT]>;C?cWT][NR^\_ch_T),31<BN2><?A4BB8>=R^\_NU^aN^[c_*
fWT]@D4AHcWT][NR^\_ch_T),31<BN2><?A4BB8>=R^\_NU^aN`dTahN[^f*
fWT]@D4AHN;>FcWT][NR^\_ch_T),31<BN2><?A4BB8>=R^\_NU^aN`dTahN[^f*
fWT]@D4AHN7867cWT][NR^\_ch_T),31<BN2><?A4BB8>=R^\_NU^aN`dTahNWXVW*
fWT]0A278E4cWT][NR^\_ch_T),31<BN2><?A4BB8>=R^\_NU^aNPaRWXeTN[^f*
fWT]0A278E4N;>FcWT][NR^\_ch_T),31<BN2><?A4BB8>=R^\_NU^aNPaRWXeTN[^f*
fWT]0A278E4N7867cWT][NR^\_ch_T),31<BN2><?A4BB8>=R^\_NU^aNPaRWXeTNWXVW*
4=320B4*

31<BN2><?A4BB8>=VTcNR^\_aTbbX^]NaPcX^
bRaPcRWcQb]P\T,-DB4AB
^f]]P\T,-^f]Ta
cPQ]P\T,-cPQ[TN]P\T
_Pac]P\T,-=D;;
R^\_ch_T,-[NR^\_ch_T
Q[ZR]cNR\_,-[NQ[ZR]cNR\_
Q[ZR]cNd]R\_,-[NQ[ZR]cNd]R\_
a^fNR\_,-[Na^fNR\_


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

a^fNd]R\_,-[Na^fNd]R\_
R\_NaPcX^,-[NR\_NaPcX^
R^\_ch_TNbca,-[NR^\_ch_TNbca
*
SQ\bN^dc_dc_dcN[X]T*
31<BN>DC?DC_dcN[X]T4bcX\PcTS2^\_aTbbX^]APcX^dbX]Vkk[NR^\_ch_TNbcakk)kk
a^d]S[NR\_NaPcX^"*
SQ\bN^dc_dc_dcN[X]T*

4=3*

d]STU^f]Ta
d]STUcPQ[TN]P\T
d]STUR^\_Nch_T
bTcUTTSQPRZ^]

BHB/B0=31>G -/VTcNR^\_aTbbX^]NaPcX^b`[
4]cTaEP[dTU^a^f]Ta):B>
4]cTaEP[dTU^acPQ[TN]P\T)B:4F"
4]cTaEP[dTU^aR^\_aTbbX^]Nch_T>;C?)

4bcX\PcTS2^\_aTbbX^]APcX^dbX]V2^\_aTbb5^a>;C?) #

4[P_bTS)))&$
BHB/B0=31>G -/VTcNR^\_aTbbX^]NaPcX^b`[
4]cTaEP[dTU^a^f]Ta):B>
4]cTaEP[dTU^acPQ[TN]P\T)B:4F"
4]cTaEP[dTU^aR^\_aTbbX^]Nch_T>;C?)@D4AH;>F
2^\_aTbbX^]0SeXb^abT[URWTRZeP[XSPcX^]bdRRTbbUd[bT[TRcR^d]c^]Q^cWD]R^\_aTbbTSP]S
47222^\_aTbbTSU^a\Pc,  a^fb

4bcX\PcTS2^\_aTbbX^]APcX^dbX]V2^\_aTbb5^a@dTah;^f)#

4[P_bTS)) )# #
BHB/B0=31>G -/VTcNR^\_aTbbX^]NaPcX^b`[
4]cTaEP[dTU^a^f]Ta):B>
4]cTaEP[dTU^acPQ[TN]P\T)B:4F"
4]cTaEP[dTU^aR^\_aTbbX^]Nch_T>;C?)@D4AH7867
2^\_aTbbX^]0SeXb^abT[URWTRZeP[XSPcX^]bdRRTbbUd[bT[TRcR^d]c^]Q^cWD]R^\_aTbbTSP]S
47222^\_aTbbTSU^a\Pc,  a^fb

4bcX\PcTS2^\_aTbbX^]APcX^dbX]V2^\_aTbb5^a@dTah7XVW)#!#

4[P_bTS)) ) #!
BHB/B0=31>G -/VTcNR^\_aTbbX^]NaPcX^b`[
4]cTaEP[dTU^a^f]Ta):B>
4]cTaEP[dTU^acPQ[TN]P\T)B:4F"
4]cTaEP[dTU^aR^\_aTbbX^]Nch_T>;C?)0A278E4;>F
2^\_aTbbX^]0SeXb^abT[URWTRZeP[XSPcX^]bdRRTbbUd[bT[TRcR^d]c^]Q^cWD]R^\_aTbbTSP]S
47222^\_aTbbTSU^a\Pc,  a^fb



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

4bcX\PcTS2^\_aTbbX^]APcX^dbX]V2^\_aTbb5^a0aRWXeT;^f)#"$

4[P_bTS)) ) &
BHB/B0=31>G -/VTcNR^\_aTbbX^]NaPcX^b`[
4]cTaEP[dTU^a^f]Ta):B>
4]cTaEP[dTU^acPQ[TN]P\T)B:4F"
4]cTaEP[dTU^aR^\_aTbbX^]Nch_T>;C?)0A278E47867
2^\_aTbbX^]0SeXb^abT[URWTRZeP[XSPcX^]bdRRTbbUd[bT[TRcR^d]c^]Q^cWD]R^\_aTbbTSP]S
47222^\_aTbbTSU^a\Pc,  a^fb

4bcX\PcTS2^\_aTbbX^]APcX^dbX]V2^\_aTbb5^a0aRWXeT7XVW)$#&

4[P_bTS)) ) '(
.OTICETHATTHEPROCEDUREPRINTSOUTAVALIDATIONMESSAGETELLINGYOUHOWMANYRECORDSWEREUSED
FORTHECOMPARISON4HISNUMBERCANBEMODIFIEDASPARTOFTHECALLTOTHEPROCEDUREIFSODESIRED4HE
GET?COMPRESSION?RATIOSQLSCRIPTPROMPTSFORATABLEANDA#OMPRESSION4YPEANDTHENEXECUTESTHE
31<BN2><?A4BB8>=64CN2><?A4BB8>=NA0C8>PROCEDURE/NCEAGAINTHEPERTINENTDATAISALITTLEHARDTO
PICKOUTOFTHELISTING SO4ABLE COMPARESTHEACTUALCOMPRESSIONRATIOSTOTHEESTIMATESPROVIDEDBY
THE#OMPRESSION!DVISOR

Table 3-5. Compression Advisor Accuracy

Actual Estimated
Table Name Compress For Compression Compression Error Percentage
Ratio Ratio
B:4F"N>;C?>;C?  

B:4F"N722 @D4AH ;>F  

B:4F"N722!@D4AH 7867  

B:4F"N722"0A278E4 ;>F  

B:4F"N722#0A278E4 7867  



4HEESTIMATESAREFAIRLYCLOSETOTHEACTUALVALUESANDWHILETHEYARENOTPERCENTACCURATE THE
TRADEOFFISPROBABLYWORTHITINCASESWHERETHEOBJECTSAREVERYLARGEANDAFULLTESTWOULDBETOOTIME
CONSUMINGORTAKEUPTOOMUCHDISKSPACE4HEABILITYTORUNTHE#OMPRESSION!DVISORONNON %XADATA
PLATFORMSISALSOAREALPLUS)TSHOULDBEABLETOPROVIDEYOUWITHENOUGHINFORMATIONTOMAKE
REASONABLEDECISIONSPRIORTOACTUALLYMIGRATINGDATATO%XADATA

2EAL7ORLD%XAMPLES
!S9OGI"ERRAONCESAID YOUCANLEARNALOTJUSTBYWATCHING-ARKETINGSLIDESANDBOOKAUTHORCLAIMS
AREONETHING BUTREALDATAISOFTENMOREUSEFUL*USTTOGIVEYOUANIDEAOFWHATKINDOFCOMPRESSIONIS
REASONABLETOEXPECT HEREAREAFEWCOMPARISONSOFDATAFROMDIFFERENTINDUSTRIES4HEDATASHOULD


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

PROVIDEYOUWITHANIDEAOFTHEPOTENTIALCOMPRESSIONRATIOSTHATCANBEACHIEVEDBY(YBRID#OLUMNAR
#OMPRESSION

Custom Application Data


4HISDATASETCAMEFROMACUSTOMAPPLICATIONTHATTRACKSTHEMOVEMENTOFASSETS4HETABLEISVERY
NARROW CONSISTINGOFONLYCOLUMNS4HETABLEHASCLOSETOBILLIONROWS BUTMANYOFTHECOLUMNS
HAVEAVERYLOWNUMBEROFDISTINCTVALUES.$6 4HATMEANSTHATTHESAMEVALUESAREREPEATEDMANY
TIMES4HISTABLEISAPRIMECANDIDATEFORCOMPRESSION(EREARETHEBASICTABLESTATISTICSANDTHE
COMPRESSIONRATIOSACHIEVED
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
CPQ[TBcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
C01;4N=0<4)2?N308;H
;0BCN0=0;HI43)!(342! !")$$) %
346A44) 
?0AC8C8>=43)H4B
=D<NA>FB)(!$!# !#
2708=N2=C)
1;>2:B) $"%%' 
4<?CHN1;>2:B)
0E6NB?024)
0E6NA>FN;4=) #
<>=8C>A8=6)H4B
B0<?;4NB8I4)(!$!# !#
TOTALSIZE_MEGS : 118019
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
2^[d\]BcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
=P\T0]P[hiTS=d[[.=3E3T]bXch=d[[b1dRZTcb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
?:N02C8E8CHN3C;N83 !!(! =>C=D;;(!$!# !# 
5:N02C8E8CHN83 !!(! =>C=D;;#""''(!' 
5:N34=><8=0C8>=N83 !!(! "'''&(&#("'
0<>D=C !!(!  !&"('#  
5:N1A0=27N83 !!(! =>C=D;; "  !'
;>68=N83 !!(! =>C=D;;"""""" 
30C4C8<4NBC0<? !!(! =>C=D;;& !&!  
;0BCN<>385HN;>68=N83 !!(! =>C=D;;"""""" 
<>385HN30C4C8<4NBC0<? !!(! =>C=D;;#%!!#! 
02C8E4N5;06 !!(! =>C=D;;!!
5:N106N83 !!(! !'($"%'"%%("$"$ 
2A438CN30C4 !!(! $#( '! '"%%("$"$ 
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

BHB/?>2 -/cPQ[TNbXiT!
4]cTaeP[dTU^a^f]Ta)
4]cTaeP[dTU^acPQ[TN]P\T)2?N308;HN8=EN02C8E8CHN3C;



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

>F=4AB46<4=CN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>2?N308;HN8=EN02C8E8CHN3C; ' ''

bd\ ' ''

BHB/?>2 -/R^\_NaPcX^
4]cTaeP[dTU^a^aXVX]P[NbXiT) ' ''
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)2?N308;H
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B2><?A4BB8>=NA0C8>

:B>2?N308;HN722 C01;4&#''  $'
:B>2?N308;HN722"C01;4!##!"#'"
:B>2?N308;HN722!C01;4! '#&$#
:B>2?N308;HN722#C01;4 '&'%$"

bd\ "(!!'
!SEXPECTED THISTABLEISEXTREMELYCOMPRESSIBLE3IMPLEQUERIESAGAINSTTHESETABLESALSORUNMUCH
FASTERAGAINSTTHECOMPRESSEDTABLES ASYOUCANSEEINTHISLISTING
BHB/?>2 -bT[TRcbd\P\^d]cUa^\Zb^2?N308;HN722"fWTaTRaTSXcNSPcT, ^Rc! *

BD<0<>D=C

#!&&(% #(

a^fbT[TRcTS

4[P_bTS)))!"&
BHB/?>2 -bT[TRcbd\P\^d]cUa^\Zb^2?N308;HfWTaTRaTSXcNSPcT, ^Rc! *

BD<0<>D=C

#!&&(% #(

a^fbT[TRcTS

4[P_bTS)))#!$'
4HISSIMPLEQUERYRANROUGHLYTIMESFASTERUSINGTHE0A278E4;>FCOMPRESSEDTABLETHANWHENIT
WASRUNAGAINSTTHEUNCOMPRESSEDTABLE

Telecom Call Detail Data


4HISTABLECONTAINSCALLDETAILRECORDSFORATELECOMCOMPANY4HEREAREAPPROXIMATELYBILLION
RECORDSINTHETABLE-ANYOFTHECOLUMNSINTHISTABLEAREUNIQUEORNEARLYSO)NADDITION MANYOFTHE
COLUMNSCONTAINLARGENUMBERSOFNULLS.ULLSARENOTCOMPRESSIBLESINCETHEYARENOTSTOREDINTHE


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

NORMAL/RACLEBLOCKFORMAT4HISISNOTATABLEWEWOULDEXPECTTOBEHIGHLYCOMPRESSIBLE(EREARETHE
BASICTABLESTATISTICSANDTHECOMPRESSIONRATIOS
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
CPQ[TBcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
C01;4N=0<4)B44
;0BCN0=0;HI43)!(B4?! )!) $
346A44)'
?0AC8C8>=43)H4B
=D<NA>FB) #&#&&%'&#
2708=N2=C)
1;>2:B)$&$"!&" 
4<?CHN1;>2:B)
0E6NB?024)
0E6NA>FN;4=)!'!
<>=8C>A8=6)H4B
B0<?;4NB8I4) #&#&&%'&#
TOTALSIZE_MEGS : 455821
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,


BHB/?>2 -/R^\_NaPcX^
4]cTaeP[dTU^a^aXVX]P[NbXiT)#$$'! 
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B44N722
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B2><?A4BB8>=NA0C8>

:B>B44N722 C01;4 %'%( !&
:B>B44N722!C01;4(% #! #&
:B>B44N722"C01;4'&#$'$!
:B>B44N722#C01;4&!" ( %"

bd\#!#%! 

Financial Data
4HENEXTTABLEISMADEUPOFFINANCIALDATA REVENUEACCRUALDATAFROMANORDERENTRYSYSTEMTOBEEXACT
(EREARETHEBASICTABLESTATISTICS
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
CPQ[TBcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
C01;4N=0<4)A4EN022AD0;
;0BCN0=0;HI43)&90=! )#!)#&
346A44) 
?0AC8C8>=43)H4B
=D<NA>FB) #&"%%'%
2708=N2=C)


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

1;>2:B) $!!$( 
4<?CHN1;>2:B)
0E6NB?024)
0E6NA>FN;4=)( &
<>=8C>A8=6)H4B
B0<?;4NB8I4) #&"%%'%
TOTALSIZE_MEGS : 120019
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
3OTHENUMBEROFROWSISNOTTHATGREAT ONLYABOUTMILLION BUTTHETABLEISWIDE)THAS
COLUMNSANDTHEAVERAGEROWLENGTHISBYTES)TISABITOFAMIXEDBAGWITHREGARDSTOCOMPRESSIBILITY
THOUGH-ANYOFTHECOLUMNSCONTAINAHIGHPERCENTAGEOFNULLS/NTHEOTHERHAND MANYOFTHE
COLUMNSHAVEAVERYLOWNUMBEROFDISTINCTVALUES4HISTABLEMAYBEACANDIDATEFORREORDERINGTHEDATA
ONDISKASASTRATEGYTOIMPROVETHECOMPRESSIONRATIO!TANYRATE HEREARETHECOMPRESSIONRATES
ACHIEVEDONTHISTABLEATTHEVARIOUS(##LEVELS
BHB/?>2 -/R^\_NaPcX^
4]cTaeP[dTU^a^aXVX]P[NbXiT) ! (
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)A4EN022AD0;N722
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B2><?A4BB8>=NA0C8>

:B>A4EN022AD0;N722 C01;4" (&!%"'
:B>A4EN022AD0;N722!C01;4 &'!(&
:B>A4EN022AD0;N722"C01;4 #"#"'#
:B>A4EN022AD0;N722#C01;4 !$# %(%

bd\&$( #

Retail Sales Data


4HEFINALTABLEISMADEUPOFSALESFIGURESFROMARETAILER4HETABLECONTAINSABOUTBILLIONRECORDSAND
OCCUPIESWELLOVERHALFA4ERABYTE4HEREAREVERYFEWCOLUMNS ANDTHEDATAISHIGHLYREPETITIVE)NFACT
THEREARENOUNIQUEFIELDSINTHISTABLE4HISISAVERYGOODCANDIDATEFORCOMPRESSION(EREARETHEBASIC
TABLESTATISTICS
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
CPQ[TBcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
C01;4N=0<4)B0;4B
;0BCN0=0;HI43)!"342! ") ")##
346A44) 
?0AC8C8>=43)=>
=D<NA>FB)$'$"&'#"%$
2708=N2=C)
1;>2:B)&( '"'%!
4<?CHN1;>2:B)
0E6NB?024)
0E6NA>FN;4=)("
<>=8C>A8=6)H4B


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

B0<?;4NB8I4)$'$"&'#"%$
TOTALSIZE_MEGS : 618667
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
2^[d\]BcPcXbcXRb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
=P\T0]P[hiTS=d[[.=3E3T]bXch=d[[b1dRZTcbBP\_[T
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
CA0=BN83 !!"! "'('' !' $'$"&'#"%$
CA0=BN;8=4N=> !!"!  !%&("& $'$"&'#"%$
D=8CN83 !!"!  !'%' $'$"&'#"%$
30H !!"! """"""" $'$"&'#"%$
CA0=BNB4@ !!"! !!("!## $'$"&'#"%$
1468=N30C4 !!"! #!$ $'$"&'#"%$
4=3N30C4 !!"! #!$ $'$"&'#"%$
D=8CNCH?4 !!"!    $'$"&'#"%$
B:DNCH?4 !!"! $#''# ' $'$"&'#"%$
@CH !!"!  #(% $ $'$"&'#"%$
?A824 !!"! %!! %' $'$"&'#"%$
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
(EREARETHECOMPRESSIONRATIOSACHIEVEDFORTHISTABLE!SEXPECTEDTHEYAREVERYGOOD
BHB/34<> -/R^\_NaPcX^
4]cTaeP[dTU^a^aXVX]P[NbXiT)% '%%&
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B0;4BN722
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B2><?A4BB8>=NA0C8>

:B>B0;4BN722 C01;4# %$#% #(
:B>B0;4BN722!C01;4!%$#!!""
:B>B0;4BN722"C01;4!%$"'$!""
:B>B0;4BN722#C01;4 (%""" $

bd\ #"%' 

Summary of the Real World Examples


4HEEXAMPLESINTHISSECTIONCAMEFROMREALAPPLICATIONS4HEYSHOWAFAIRLYEXTREMEVARIATIONINDATA
COMPRESSIBILITY4HISISTOBEEXPECTED ASTHESUCCESSOFCOMPRESSIONALGORITHMSISVERYDEPENDENTON
THEDATABEINGCOMPRESSED4ABLE PRESENTSTHEDATAFROMALLFOUREXAMPLES

Table 3-6. Real-World Examples Compared

Data Type Base Table Name Characteristics Compression Ratios


!SSET4RACKING 2?N308;H 3KINNY4ABLE -ANY,OW.$6#OLUMNS ¾ ¾

#ALL$ETAIL2ECORDS B44 -ANY.5,,S -ANY5NIQUE#OLUMNS ¾ ¾


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

Data Type Base Table Name Characteristics Compression Ratios


&INANCIAL$ATA A4EN022AD0; 7IDE4ABLE -ANY.5,,S -ANY,OW.$6 ¾ ¾
#OLUMNS

2ETAIL3ALES$ATA B0;4B 3KINNY4ABLE -OSTLY,OW.$6#OLUMNS ¾ ¾



(OPEFULLYTHISDATAGIVESYOUSOMEFEELFORTHERANGEOFCOMPRESSIONRATIOSTHATYOUCANEXPECTFROM
(##ANDTHETYPESOFDATASETSTHATWILLBENEFITMOST/FCOURSETHEBESTWAYTOPREDICTHOWCOMPRESSIBLE
APARTICULARTABLEMAYBEISTOACTUALLYTESTIT4HISFACTCANNOTBEOVEREMPHASIZED

Restrictions/Challenges
4HEREAREAFEWCHALLENGESWITHUSING(##-ANYOFTHEMHAVETODOWITHTHEFACTTHAT(##ISNOT
AVAILABLEONNON %XADATAPLATFORMS4HISFACTPOSESCHALLENGESFORRECOVERYANDHIGHAVAILABILITY
SOLUTIONS4HEOTHERMAJORCHALLENGEISTHAT(##DOESNTPLAYWELLWITHDATATHATISBEINGACTIVELY
UPDATED)NPARTICULAR SYSTEMSCHARACTERIZEDBYLOTSOFSINGLE ROWUPDATES WHICHWEOFTENDESCRIBEAS
/,40WORKLOADS WILLPROBABLYNOTWORKWELLWITH(##

-OVING$ATATOANON %XADATA0LATFORM
0ROBABLYTHELARGESTHURDLEWITHUSING(##HASBEENMOVINGTHEDATATONON %XADATAPLATFORMS&OR
EXAMPLE WHILE2-!.AND$ATAGUARDBOTHSUPPORTTHE(##BLOCKFORMAT ANDWILLHAPPILYRESTOREDATA
TOANON %XADATAENVIRONMENT ADATABASERUNNINGONSUCHANENVIRONMENTWILLNOTBEABLETODO
ANYTHINGWITHTHEDATAUNTILITISDECOMPRESSED4HISCANMEANALENGTHYDELAYBEFOREBEINGABLETO
ACCESSTHEDATAINACASEWHEREAFAILOVERTOASTANDBYONANON %XADATAPLATFORMOCCURS4HESAMEISSUE
HOLDSTRUEFORDOINGAN2-!.RESTORETOANON %XADATAPLATFORM4HERESTOREWILLWORKBUTTHEDATAIN
(##FORMATTEDBLOCKSWILLNOTBEACCESSIBLEUNTILTHEDATAHASBEENMOVEDINTOANON (##FORMAT4HIS
CANBEDONEWITHTHE0;C4AC01;4<>E4=>2><?A4BBCOMMAND BYTHEWAY

■.OTE4HEABILITYTODECOMPRESS(##DATAONNON %XADATAPLATFORMSONLYBECAMEAVAILABLEIN/RACLEDATABASE
VERSION!TTEMPTINGTHISONVERSIONWOULDRESULTINANERROR#HECKWITH/RACLE3UPPORTFORA
PATCHTHATMAYENABLETHISBEHAVIORON

)NADDITIONTOTHELENGTHYDELAYASSOCIATEDWITHDECOMPRESSINGDATABEFOREBEINGABLETOACCESSIT
THEREISALSOTHEISSUEOFSPACE)F(##ISPROVIDINGA¾COMPRESSIONFACTOR YOUWILLNEEDTOHAVE
TIMESTHESPACEYOUARECURRENTLYUSINGAVAILABLEONTHETARGETENVIRONMENTTOHANDLETHEINCREASEDSIZE
OFTHEDATA&ORTHESEREASONS $ATAGUARDISRARELYSETUPWITHASTANDBYONANON %XADATAPLATFORM

$ISABLING3ERIAL$IRECT0ATH2EADS
!SWEDISCUSSEDIN#HAPTER 3ERIAL$IRECT0ATH2EADSALLOWNONPARALLELIZEDSCANOPERATIONSTOUSETHE
DIRECTPATHREADMECHANISM WHICHISAPREREQUISITEFORENABLINGTHE3MART3CANFEATURESOF%XADATA


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

3ERIAL$IRECT0ATH2EADSAREENABLEDBASEDONACALCULATIONTHATDEPENDSONTHESIZEOFTHEOBJECTBEING
SCANNEDRELATIVETOTHEAVAILABLEBUFFERCACHE)NSIMPLISTICTERMS ONLYLARGEOBJECTSWILLBECONSIDERED
FOR3ERIAL$IRECT0ATH2EADS(##SEFFECTIVENESSCANACTUALLYWORKAGAINSTITHERE3INCETHECOMPRESSION
REDUCESTHESIZEOFTHEOBJECTSSODRASTICALLY ITCANCAUSESTATEMENTSTHATWOULDNORMALLYBENEFITFROMA
3MART3CANTOUSETHESTANDARDREADMECHANISM DISABLINGMANYOF%XADATASOPTIMIZATIONS4HISIS
GENERALLYNOTAHUGEPROBLEM BECAUSETHENUMBEROFBLOCKSISCONSIDERABLYREDUCEDBY(##ANDTHE
DATABASEISMAKINGTHISDECISIONATRUNTIME4HEPROBLEMCOMESIN THOUGH WHENANOBJECTIS
PARTITIONED4HECALCULATIONISBASEDONTHESIZEOFTHEOBJECTBEINGSCANNEDINTHECASEOFAPARTITIONED
OBJECTTHISMEANSTHESIZEOFTHEPARTITION3OINCASESWHEREPARTITIONINGISUSEDWITH(## WEOFTENSEE
SOMEPARTITIONSUSING3MART3CANSANDSOMEUNABLETOUSE3MART3CANS+EEPINMINDTHATTHISALSO
MEANSDECOMPRESSIONCANNOTBEDONEATTHESTORAGELAYER ASTHISCAPABILITYISENABLEDONLYWHEN
PERFORMING3MART3CANS

■+EVIN3AYS#OMPRESSIONALSOHASALOTTODOWITHTHEOFTEN OVERLOOKED)N -EMORY0ARALLEL1UERYFEATUREOF


/RACLE$ATABASEG6ERYEFFECTIVECOMPRESSIONCOMBINEDWITHMODERNLARGEMEMORYSERVERSMAKES)N -EMORY
0ARALLEL1UERYAUSABLEFEATUREFORPRODUCTIONPURPOSES#USTOMERSWOULDDOWELLTOCONSIDERTHEBEST
COMPRESSIONTECHNOLOGYTHATSUITSTHEIR$-,PROCESSINGREQUIREMENTSWHILEPOTENTIALLYEXPLOITINGTHEPOWEROF)N
-EMORY0ARALLEL1UERY

,OCKING)SSUES
4HE%XADATADOCUMENTATIONSAYSTHATUPDATINGASINGLEROWOFATABLECOMPRESSEDWITH(##LOCKSTHE
ENTIRECOMPRESSIONUNITCONTAININGTHEROW4HISCANCAUSEEXTREMECONTENTIONISSUESFOR/,40 TYPE
SYSTEMS4HISISTHEMAINREASONTHAT(##ISNOTRECOMMENDEDFORTABLESORPARTITIONS WHERETHEDATA
WILLBEUPDATED(ERESADEMONSTRATIONOFTHELOCKINGBEHAVIOR
:B>/B0=31>G -bT[TRca^fXS^[SNa^fXSa^fXS^[SNa^fXS_ZNR^[Ua^\Zb^bZTfNWRR"
!fWTaTa^f]d\+ *

A>F83>;3NA>F83?:N2>;

000C2100700<ZhG000&"!(%#&!&(((#(
000C2100700<ZhG001&"!(%#& !&(((#'
000C2100700<ZhG002&"!(%#&!!&(((#&
000C2100700<ZhG003&"!(%#&"!&(((#%
000C2100700<ZhG004&"!(%#&#!&(((#$
000C2100700<ZhG005&"!(%#&$!&(((##
000C2100700<ZhG006&"!(%#&%!&(((#"
000C2100700<ZhG007&"!(%#&&!&(((#!
000C2100700<ZhG008&"!(%#&'!&(((# 

(a^fbbT[TRcTS
:B>/B0=31>G -d_SPcTZb^bZTfbTcR^[ ,R^[ fWTaT_ZNR^[,!&(((#(*

a^fd_SPcTS



#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

BHB/B0=31>G -bT[TRcR^[ Ua^\Zb^bZTfNWRR"fWTaT_ZNR^[,!&(((#(U^ad_SPcT]^fPXc*


bT[TRcR^[ Ua^\Zb^bZTffWTaT_ZNR^[, %'$'#"&U^ad_SPcT]^fPXc

4AA>APc[X]T )
>A0$#)aTb^daRTQdbhP]SPR`dXaTfXcW=>F08Cb_TRXUXTS^acX\T^dcTg_XaTS


BHB/B0=31>G -4g_TRcTSQTRPdbTcWXba^fWPbQTT]d_SPcTSQhP]^cWTa_a^RTbb
BHB/B0=31>G -
BHB/B0=31>G -bT[TRcR^[ Ua^\Zb^bZTfNWRR"fWTaT_ZNR^[,!&(((# U^ad_SPcT]^fPXc*
bT[TRcR^[ Ua^\Zb^bZTffWTaT_ZNR^[, %'$'#!(U^ad_SPcT]^fPXc

4AA>APc[X]T )
>A0$#)aTb^daRTQdbhP]SPR`dXaTfXcW=>F08Cb_TRXUXTS^acX\T^dcTg_XaTS

BHB/B0=31>G -=^c]^a\P[>aPR[T[^RZX]VQTWPeX^a
#LEARLYTHISBEHAVIORWOULDBEDISASTROUSTOMANY/,40SYSTEMS%SPECIALLYWHENYOUCONSIDERTHE
LARGENUMBEROFRECORDSTHATCANBESTOREDINAN(##BLOCK)NTHISCASETHATNUMBERISAPPROXIMATELY
 ROWSPERBLOCK4HISMEANSTHATASINGLEUPDATECOULDLOCKWELLOVER ROWS

3INGLE2OW!CCESS
(##ISBUILTFORFULLTABLESCANACCESS$ECOMPRESSIONISA#05 INTENSIVETASK3MART3CANSCAN
DISTRIBUTETHEDECOMPRESSIONWORKTOTHE#05SONTHESTORAGECELLS4HISMAKESTHE#05 INTENSIVETASK
MUCHMOREPALATABLE(OWEVER 3MART3CANSONLYOCCURWHEN&ULL3CANSAREPERFORMED4HISMEANS
THATOTHERACCESSMECHANISMS INDEXACCESSFOREXAMPLE MUSTUSETHE$"SERVER#05STOPERFORM
DECOMPRESSION4HISCANPUTANENORMOUS#05LOADON$"SERVERSINHIGHVOLUME/,40 TYPESYSTEMS
)NADDITION SINCEDATAFORASINGLEROWISSPREADACROSSMULTIPLEBLOCKSINA#5 RETRIEVINGACOMPLETE
ROWCAUSESTHEENTIRE#5TOBEREAD4HISCANHAVEADETRIMENTALEFFECTONTHEOVERALLDATABASEEFFICIENCY
FORSYSTEMSTHATTENDTOACCESSDATAUSINGINDEXES EVENIFTHEACCESSISREAD ONLY

Common Usage Scenarios


(##PROVIDESSUCHHIGHLEVELSOFCOMPRESSIONTHATITHASBEENUSEDASANALTERNATIVETOTRADITIONAL),-
STRATEGIES WHICHGENERALLYINVOLVEMOVINGOLDERHISTORICALDATAOFFTHEDATABASEENTIRELY4HESE),-
STRATEGIESUSUALLYENTAILSOMETYPEOFDATERANGEPARTITIONINGANDAPURGEPROCESS4HISISDONETOFREE
STORAGEANDINSOMECASESTOIMPROVEPERFORMANCE/FTENTHEDATAMUSTBERETAINEDINSOMEBACKUP
FORMATSOTHATITCANBEACCESSEDIFREQUIREDATSOMELATERDATE7ITH(## ITISPOSSIBLEINMANYCASESTO
RETAINDATAINDEFINITELYBYCOMPRESSINGTHEOLDESTPARTITIONS4HISAPPROACHHASMANYADVANTAGESOVER
THETRADITIONALAPPROACHOFMOVINGTHEDATA
&IRSTANDFOREMOST THEDATAREMAINSAVAILABLEVIATHESTANDARDAPPLICATIONINTERFACES.OADDITIONAL
WORKWILLNEEDTOBEDONETORESTOREABACKUPOFOLDDATABEFOREITCANBEACCESSED4HISADVANTAGEALONE
ISOFTENENOUGHTOJUSTIFYTHISAPPROACH4HISAPPROACHTYPICALLYENTAILSLEAVINGACTIVEPARTITIONS
UNCOMPRESSEDWHILECOMPRESSINGOLDPARTITIONSMOREAGGRESSIVELY(ERESASHORTEXAMPLEOFCREATINGA
PARTITIONEDTABLEWITHMIXEDCOMPRESSIONMODES
BHB/34<> -2A40C4C01;4:B>2;0BBNB0;4BN?
!CA0=BN83E0A270A!"
"D=8CN83=D<14A"
#30H=D<14A"


#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

$CA0=BNB4@E0A270A!"
%4=3N30C430C4
&1468=N30C430C4
'D=8CNCH?4E0A270A!"
(2DBCNCH?4E0A270A! 
 ;>03N30C430C4
 2DAA4=2HNCH?4270A 
 !?2C5A44 ?2CDB43#8=8CA0=B <0GCA0=B!$$=>;>668=6
 "BC>A064
 #1D554AN?>>;3450D;C5;0B7N202743450D;C24;;N5;0B7N202743450D;C
 $C01;4B?0242;0BBN30C0
 %?0AC8C8>=1HA0=641468=N30C4
 &?0AC8C8>=? E0;D4B;4BBC70=C>N30C4
 '!'(%))BHHHH<<3377!#)<8)BB=;BN20;4=30A,6A46>A80=
 (B46<4=C2A40C8>=8<<4380C4
!?2C5A44 ?2CDB43#8=8CA0=B <0GCA0=B!$$NOCOMPRESS=>;>668=6
! BC>A0648=8C80;'"''%'=4GC #'$&%<8=4GC4=CB <0G4GC4=CB! #&#'"%#$
!!?2C8=2A40B45A44;8BCB 5A44;8BC6A>D?B 1D554AN?>>;3450D;C
!"5;0B7N202743450D;C24;;N5;0B7N202743450D;C
!#C01;4B?0242;0BBN30C0
!$?0AC8C8>=?!E0;D4B;4BBC70=C>N30C4
!%!'(&))BHHHH<<3377!#)<8)BB=;BN20;4=30A,6A46>A80=
!&B46<4=C2A40C8>=8<<4380C4
!'?2C5A44?2CDB43#8=8CA0=B <0GCA0=B!$$COMPRESS FOR QUERY HIGH=>;>668=6
!(BC>A0648=8C80;'"''%'=4GC #'$&%<8=4GC4=CB <0G4GC4=CB! #&#'"%#$
"?2C8=2A40B45A44;8BCB 5A44;8BC6A>D?B 1D554AN?>>;3450D;C
" 5;0B7N202743450D;C24;;N5;0B7N202743450D;C
"!C01;4B?0242;0BBN30C0
""?0AC8C8>=?"E0;D4B;4BBC70=C>N30C4
"#!'('))BHHHH<<3377!#)<8)BB=;BN20;4=30A,6A46>A80=
"$B46<4=C2A40C8>=8<<4380C4
"%?2C5A44?2CDB43#8=8CA0=B <0GCA0=B!$$COMPRESS FOR ARCHIVE LOW=>;>668=6
"&BC>A0648=8C80;'"''%'=4GC #'$&%<8=4GC4=CB <0G4GC4=CB! #&#'"%#$
"'?2C8=2A40B45A44;8BCB 5A44;8BC6A>D?B 1D554AN?>>;3450D;C
"(5;0B7N202743450D;C24;;N5;0B7N202743450D;C
#C01;4B?0242;0BBN30C0*

CPQ[TRaTPcTS

BHB/34<> -/_PacNbXiT!b`[
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)




#(!04%2 (9"2)$#/,5-.!2#/-02%33)/.

>F=4AB46<4=CN=0<4?0ACN=0<4C>C0;B8I4N<46B2><?A4BBN5>A

:B>2;0BBNB0;4BN?? !#
?!!#@D4AH7867
?"!#0A278E4;>F

bd\&!

Summary
)NTRODUCEDIN/RACLEG2 (YBRID#OLUMNAR#OMPRESSIONPROVIDESEXCEPTIONALCOMPRESSION
CAPABILITIESTHATAREFARBEYONDANYTHINGAVAILABLEINPRIORRELEASES4HISISTHANKSINLARGEPARTTOTHE
ADOPTIONOFINDUSTRY STANDARDCOMPRESSIONALGORITHMSANDANINCREASEINTHESIZEOFTHECOMPRESSION
UNITFROMASINGLEDATABASEBLOCKTYPICALLY+ TOALARGERUNITOF+OR+4HEFEATUREISONLY
APPROPRIATEFORDATATHATISNOLONGERBEINGMODIFIED THOUGH BECAUSEOFLOCKINGISSUESANDTHEFACTTHAT
UPDATEDROWSAREMOVEDINTOAMUCHLESSCOMPRESSEDFORMAT/,40COMPRESSIONFORMAT &ORTHIS
REASON (##SHOULDONLYBEUSEDWITHDATATHATISNOLONGERBEINGMODIFIEDORONLYOCCASIONALLY
MODIFIED 3INCECOMPRESSIONCANBEDEFINEDATTHEPARTITIONLEVEL ITISCOMMONTOSEETABLESTHATHAVEA
MIXTUREOFCOMPRESSEDANDUNCOMPRESSEDPARTITIONS4HISTECHNIQUECANINMANYCASESREPLACE),-
APPROACHESTHATREQUIREMOVINGDATATOALTERNATESTORAGEMEDIAANDTHENPURGINGITFROMTHEDATABASE


CHAPTER 4



Storage Indexes

3TORAGE)NDEXESARETHEMOSTUSEFUL%XADATAFEATURETHATYOUNEVERHEARABOUT4HEYARENOTINDEXESTHAT
ARESTOREDINTHEDATABASELIKE/RACLESTRADITIONAL" 4REEORBITMAPPEDINDEXES)NFACT THEYARENOT
INDEXESATALLINTHETRADITIONALSENSE4HEYARENOTCAPABLEOFIDENTIFYINGASETOFRECORDSTHATHASA
CERTAINVALUEINAGIVENCOLUMN2ATHER THEYAREAFEATUREOFTHESTORAGESERVERSOFTWARETHATISDESIGNED
TOELIMINATEDISK)/4HEYARESOMETIMESDESCRIBEDAShREVERSEINDEXESv4HATSBECAUSETHEYIDENTIFY
LOCATIONSWHERETHEREQUESTEDRECORDSARENOT INSTEADOFTHEOTHERWAYAROUND4HEYWORKBYSTORING
MINIMUMANDMAXIMUMCOLUMNVALUESFORDISKSTORAGEUNITS WHICHARE-EGABYTE-" BYDEFAULT
"ECAUSE31,PREDICATESAREPASSEDTOTHESTORAGESERVERSWHEN3MART3CANSAREPERFORMED THESTORAGE
SOFTWARECANCHECKTHEPREDICATESAGAINSTTHE3TORAGE)NDEXMETADATAMAXIMUMANDMINIMUMVALUES
BEFOREDOINGTHEREQUESTED)/!NYSTORAGEREGIONTHATCANNOTPOSSIBLYHAVEAMATCHINGROWISSKIPPED
)NMANYCASES THISCANRESULTINASIGNIFICANTREDUCTIONINTHEAMOUNTOF)/THATMUSTBEPERFORMED
+EEPINMINDTHATSINCETHESTORAGESOFTWARENEEDSTHEPREDICATESTOCOMPARETOTHEMAXIMUMAND
MINIMUMVALUESINTHE3TORAGE)NDEXES THISOPTIMIZATIONISONLYAVAILABLEFOR3MART3CANS
4HESTORAGESOFTWAREPROVIDESNODOCUMENTEDMECHANISMFORALTERINGORTUNING3TORAGE)NDEXES
ALTHOUGHTHEREAREAFEWUNDOCUMENTEDPARAMETERSTHATCANBESETPRIORTOSTARTINGRT[[baeONTHE
STORAGESERVERS )NFACT THEREISNOTEVENMUCHAVAILABLEINTHEWAYOFMONITORING&OREXAMPLE THEREIS
NOWAITEVENTTHATRECORDSTHEAMOUNTOFTIMESPENTWHENA3TORAGE)NDEXISACCESSEDORUPDATED%VEN
THOUGHTHEREARENOCOMMANDSTOMANIPULATE3TORAGE)NDEXES THEYAREANEXTREMELYPOWERFULFEATURE
ANDCANPROVIDEDRAMATICPERFORMANCEIMPROVEMENTS&ORTHATREASONITISIMPORTANTTOUNDERSTAND
HOWTHEYWORK

■+EVIN3AYS4OKEEPTHEROLEOF3TORAGE)NDEXESSTRAIGHTINMYMIND )GENERALLYPICTUREANOPTIMIZATIONTHAT
DRAMATICALLYIMPROVESSEARCHINGFORANEEDLEINAHAYSTACKASOPPOSEDTOFINDINGWHERECERTAINPIECESOFSTRAW
EXISTINAHAYSTACK

Structure
3TORAGE)NDEXESCONSISTOFAMINIMUMANDAMAXIMUMVALUEFORUPTOEIGHTCOLUMNS4HISSTRUCTUREIS
MAINTAINEDFOR-"CHUNKSOFSTORAGESTORAGEREGIONS 3TORAGE)NDEXESARESTOREDINMEMORYONLYAND
ARENEVERWRITTENTODISK


#(!04%2 34/2!'%).$%8%3

■+EVIN3AYS3TORAGE)NDEXESARESTOREDINTHEHEAPOFRT[[bae SOTECHNICALLYSPEAKINGTHEYCOULDENDUPON
DISKSWAP UNDERINSANECONDITIONSxSO NOTNEVERx

&IGURE SHOWSACONCEPTUALVIEWOFTHEDATACONTAINEDINA3TORAGE)NDEX
Based on the
predicate, the
storage index
SELECT cust_state on this column
FROM customers will be used
WHERE cust_age > 35

Because only this 1MB


region of data satisfies 1MB
the predicate, only this Range
data will be scanned

1MB
Range


Figure 4-1. Conceptual diagram of a Storage Index

!SYOUCANSEEINTHEDIAGRAM THEFIRSTSTORAGEREGIONINTHE#USTOMERTABLEHASAMAXIMUMVALUEOF
 INDICATINGTHATITSPOSSIBLEFORITTOCONTAINROWSTHATWILLSATISFYTHEQUERYPREDICATERdbcNPVT-"$ 
4HEOTHERSTORAGEREGIONSINTHEDIAGRAMDONOTHAVEMAXIMUMVALUESTHATAREHIGHENOUGHTOCONTAIN
ANYRECORDSTHATWILLSATISFYTHEQUERYPREDICATE4HEREFORE THOSESTORAGEREGIONSWILLNOTBEREADFROM
DISK
)NADDITIONTOTHEMINIMUMANDMAXIMUMVALUES THEREISAFLAGTOINDICATEWHETHERANYOFTHE
RECORDSINASTORAGEREGIONCONTAINNULLS4HEFACTTHATNULLSAREREPRESENTEDATALLISSOMEWHATSURPRISING
GIVENTHATNULLSARENOTSTOREDINTRADITIONAL/RACLEINDEXES4HISABILITYOF3TORAGE)NDEXESTOTRACKNULLS
MAYACTUALLYHAVEREPERCUSSIONSFORDESIGNANDIMPLEMENTATIONDECISIONS4HEREARESYSTEMSTHATDONT
USENULLSATALL3!0 FOREXAMPLE USESASINGLESPACECHARACTERINSTEADOFNULLS3!0DOESTHISSIMPLYTO
INSURETHATRECORDSCANBEACCESSEDVIA" 4REEINDEXESWHICHDONOTSTORENULLS !TANYRATE 3TORAGE
)NDEXESPROVIDETHEEQUIVALENTOFABIT MAPPEDINDEXONNULLS WHICHMAKESFINDINGNULLSAVERYEFFICIENT
PROCESSASSUMINGTHEYREPRESENTALOWPERCENTAGEOFTHEVALUES 


#(!04%2 34/2!'%).$%8%3

Monitoring Storage Indexes


4HEABILITYTOMONITOR3TORAGE)NDEXESISVERYLIMITED4HEOPTIMIZERDOESNTKNOWWHETHERA3TORAGE
)NDEXWILLBEUSEDFORAPARTICULAR31,STATEMENT.ORDO!72OR!3(CAPTUREANYINFORMATIONABOUT
WHETHER3TORAGE)NDEXESWEREUSEDBYPARTICULAR31,STATEMENTS4HEREISASINGLESTATISTICTHATTRACKS
3TORAGE)NDEXUSAGEATTHEDATABASELEVELANDANUNDOCUMENTEDTRACINGMECHANISM

$ATABASE3TATISTICS
4HEREISONLYONEDATABASESTATISTICRELATEDTOSTORAGEINDEXES4HESTATISTIC RT[[_WhbXRP[8>QhcTb
bPeTSQhbc^aPVTX]STg KEEPSTRACKOFTHEACCUMULATED)/THATHASBEENAVOIDEDBYTHEUSEOF3TORAGE
)NDEXES4HISSTATISTICISEXPOSEDINebTbbcPcANDebhbbcPcANDRELATEDVIEWS)TSASTRANGESTATISTIC
THATCALCULATESAPRECISEVALUEFORSOMETHINGITDIDNTDO.EVERTHELESS ITISTHEONLYEASILYACCESSIBLE
INDICATORASTOWHETHER3TORAGE)NDEXESHAVEBEENUSED5NFORTUNATELY SINCETHESTATISTICISCUMULATIVE
LIKEALLSTATISTICSINebTbbcPc ITMUSTBECHECKEDBEFOREANDAFTERAGIVEN31,STATEMENTINORDERTO
DETERMINEWHETHER3TORAGE)NDEXESWEREUSEDONTHATPARTICULARSTATEMENT(EREISANEXAMPLE
BHB/4G31 -bTcTRW^^]
BHB/4G31 -/bX
BHB/4G31 -R^[]P\TU^aP&
BHB/4G31 -R^[eP[dTU^a((((((((((((((
BHB/4G31 -bT[TRc]P\TeP[dT
!Ua^\e\hbcPcbebcPc]P\T]
"fWTaT]bcPcXbcXR,bbcPcXbcXR
#P]S]P\T[XZTbc^aPVT*


=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg

BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTf!fWTaTR^[ Xb]d[[*

0E6?:N2>;

"! 

BHB/4G31 -bTcTRW^^UU
BHB/4G31 -/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg"('#(#(!#'

BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTf!fWTaTR^[ Xb]d[[*

0E6?:N2>;

"! 



#(!04%2 34/2!'%).$%8%3

BHB/4G31 -/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg&(%('('#(%
!SYOUCANSEE THEbXb`[SCRIPTQUERIESe\hbcPcFORASTATISTICTHATCONTAINSTHEWORDhSTORAGEv
4HEVALUEFORTHISSTATISTICWILLBEUNTILA31,STATEMENTTHATUSESA3TORAGE)NDEXHASBEENEXECUTEDIN
THECURRENTSESSION)NOUREXAMPLE THEQUERYUSEDA3TORAGE)NDEXTHATELIMINATEDABOUTBILLIONBYTES
OFDISK)/4HISISTHEAMOUNTOFADDITIONAL)/THATWOULDHAVEBEENNECESSARYWITHOUT3TORAGE
)NDEXES.OTETHATe\hbcPcISAVIEWTHATEXPOSESCUMULATIVESTATISTICSFORYOURCURRENTSESSION3OIFYOU
RUNTHESTATEMENTASECONDTIME THEVALUESHOULDINCREASETOTWICETHEVALUEITHADAFTERTHEFIRST
EXECUTION/FCOURSE DISCONNECTINGFROMTHESESSIONBYEXITING31,
0LUSFOREXAMPLE RESETSMOST
STATISTICSEXPOSEDBYe\hbcPc INCLUDINGTHISONE TO

4RACING
4HEREISANOTHERWAYTOMONITORWHATISGOINGONWITH3TORAGE)NDEXESATTHEINDIVIDUALSTORAGECELL
LEVEL4HERT[[baePROGRAMHASTHEABILITYTOCREATETRACEFILESWHENEVER3TORAGE)NDEXESAREACCESSED
4HISTRACINGCANBEENABLEDBYSETTINGTHEN24;;NBC>A064N8=34GN3806N<>34PARAMETERTO425%INTHE
RT[[X]Xc^aPFILEONONEOFTHESTORAGECELLS9OUWILLNEEDTORESTARTTHERT[[baePROGRAMONCETHIS
PARAMETERISSET)NGENERALTHISSHOULDNOTCAUSEANYINTERRUPTIONTOTHECLUSTERWAREORDATABASES
RUNNINGONTHEDATABASEMACHINES THANKSTOTHEREDUNDANCYPROVIDEDBY!3-(OWEVER YOUSHOULDBE
AWARETHATIFYOUHAVEISSUESONOTHERSTORAGECELLS ITSPOSSIBLETHATRESTARTINGART[[baePROCESSCOULD
CAUSEANOUTAGE4RACINGCANALSOBEENABLEDONALLSTORAGESERVERSBYSETTINGTHEHIDDENDATABASE
PARAMETER N:258BNBC>A06483GN3806N<>34TOAVALUEOF3INCETHISTRACINGMECHANISMISCOMPLETELY
UNDOCUMENTED ITSHOULDNOTBEUSEDWITHOUTAPPROVALFROM/RACLESUPPORT"ETTERSAFETHANSORRY
"ECAUSETHERT[[baePROCESSISMULTITHREADED THETRACINGFACILITYCREATESMANYTRACEFILES4HERESULT
ISSIMILARTOTRACINGASELECTSTATEMENTTHATISEXECUTEDINPARALLELONADATABASESERVER INTHATTHEREARE
MULTIPLETRACEFILESTHATNEEDTOBECOMBINEDTOSHOWTHEWHOLEPICTURE4HENAMINGCONVENTIONFORTHE
TRACEFILESISSVTRC? FOLLOWEDBYAPROCESS)$ FOLLOWEDBYATHREADIDENTIFIER4HEPROCESS)$MATCHESTHE
OPERATINGSYSTEMPROCESS)$OFTHERT[[baePROCESS3INCERT[[baeENABLESONLYTHREADSBYDEFAULT
THEFILENAMESAREREUSEDRAPIDLYASREQUESTSCOMEINTOTHESTORAGECELLS"ECAUSEOFTHISRAPIDREUSE ITS
QUITEEASYTOWRAPAROUNDTHETHREADNUMBERPORTIONOFTHEFILENAME3UCHWRAPPINGAROUNDDOESNT
WIPEOUTTHEPREVIOUSTRACEFILE BUTRATHERAPPENDSNEWDATATOTHEEXISTINGFILE!PPENDINGHAPPENS
WITHTRACEFILESON/RACLEDATABASESERVERSASWELL BUTISMUCHLESSCOMMONBECAUSETHEPROCESS)$
PORTIONOFTHEDEFAULTFILENAMECOMESFROMTHEUSERSSHADOWPROCESS3OBASICALLYEACHSESSIONGETSITS
OWNNUMBER
4HEREISANOTHERRELATEDCELLSRVPARAMETER N24;;NB8N<0GN=D<N3806N<>34N3D<?B THATSETSA
MAXIMUMNUMBEROFTRACEFILESTHATWILLBECREATEDBEFORETHETRACINGFUNCTIONALITYISTURNEDOFF4HE
PARAMETERDEFAULTSTOAVALUEOF0RESUMABLYTHEPARAMETERISASAFETYMECHANISMTOKEEPTHEDISK
FROMGETTINGFILLEDBYTRACEFILES SINCEASINGLEQUERYCANCREATEALARGENUMBEROFFILES
(EREISASNIPPETFROMATRACEFILEGENERATEDONOURTESTSYSTEM
CaPRTUX[T
^_c^aPR[TRT[[ !!!N;8=DGG%#N  !%![^VSXPVPb\RT[[T]ZRT["caPRTbecaRN "!$"N 
caR
>A02;4N7><4,^_c^aPR[TRT[[ !!!N;8=DGG%#N  !%!
BhbcT\]P\T);X]dg
=^ST]P\T)T]ZRT["T]ZXcTRR^\
AT[TPbT)!% ' (#" "T[$


#(!04%2 34/2!'%).$%8%3

ETabX^]) B<?CdT0dV" !!)# ) "43C! 


<PRWX]T)g'%N%#
24;;BFETabX^])>BBN !"N;8=DGG%#N  !%!

!  ! & )#)#  !&
DbTaCWaTPS);F?83) "'"#dbTa8S) ZTa]T[8S) _cWaTPS83)g!PPT%Q%'((#
!  ! & !) )!%#( (& )5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbRP[[TSW^bc
T]ZSQ!T]ZXcTRR^\J_XS)'$ (L]d\QTa^UUT]RX]VX]_a^VaTbb aTXS
RXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\],![]XS, & (("((VXS,!"VX], V\], d\
T\XS, ^_XS,#'^_b], [,_a^RTbbWSa,gUTRT 
!  ! & !) )!%#(&!&&)5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbbTc]d\QTa^UUT]RX]VX]
_a^VaTbbaTXS
RXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\],![]XS, & (("((VXS,!"VX], V\], d\
T\XS, ^_XS,#'^_b], [,_a^RTbbWSa,gUTRT 
!  ! & !)#$)!$( #!' )5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbRP[[TSW^bc
T]ZSQ T]ZXcTRR^\J_XS)("!%L]d\QTa^UUT]RX]VX]_a^VaTbb aTXS
RXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\], []XS, & (("((VXS,
! #&#'"%#!VX], V\],"d\T\XS,"^_XS,#!^_b],"[,_a^RTbbWSa,gUTRT 
!  ! & !)#$)!$( $$(!)5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbbTc]d\QTa^UUT]RX]VX]
_a^VaTbbaTXSRXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\], []XS, & (("((VXS,
! #&#'"%#!VX], V\],"d\T\XS,"^_XS,#!^_b],"[,_a^RTbbWSa,gUTRT 
!  ! & !)#$)#  '&&')5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbRP[[TSW^bc
T]ZSQ T]ZXcTRR^\J_XS)("!%L]d\QTa^UUT]RX]VX]_a^VaTbb aTXS
RXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\], []XS, & (("((VXS,
! #&#'"%#!VX], V\],"d\T\XS,"^_XS,^_b],[,\T\QTaWSa,gUTRT 
!  ! & !)#$)#  !!!$%)5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbbTc]d\QTa^UUT]RX]VX]
_a^VaTbbaTXSRXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\], []XS, & (("((VXS,
! #&#'"%#!VX], V\],"d\T\XS,"^_XS,^_b],[,\T\QTaWSa,gUTRT 
!  !!  !) !)"##%$"(')5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbRP[[TSW^bc
T]ZSQ!T]ZXcTRR^\J_XS)'$ (L]d\QTa^UUT]RX]VX]_a^VaTbb aTXS
RXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\],![]XS, & (("((VXS,
! #&#'"%#"VX], V\], d\T\XS, ^_XS,"(^_b], [,_a^RTbbWSa,gUTRT 
!  !!  !) !)"##& #')5T]RT<PbcTa)>BBN8>2C;N54=24N4=C8CHXbbTc]d\QTa^UUT]RX]VX]
_a^VaTbbaTXSRXS,"RQS "RSQ(RUU$TUU'Q'QUQ( R%UT(XRX], & (("((]\],![]XS, & (("((VXS,
! #&#'"%#"VX], V\], d\T\XS, ^_XS,"(^_b], [,_a^RTbbWSa,gUTRT 
!  !!"() &)"'!&&'!!)A83Gg!PPT!U!(UTTRU^aB@;83%Sg!#&aehZa&!UX[cTa 
!  !!"() &)"'!&&'!!)A83Gg!PPT!U!(UTTR)bc!eP[XS1Xc<P_&UUUUUUUUUUUUUUUcPQ]
XSj&$&$(#"" #&& "('l
!  !!"() &)"'!&&'!!)A83G)bcac"!T]S!#'^UUbTc$""%$!'#'%#bXiT "! (!aV]8Sg
$'(" AV]>UUbTc %"'#bR])g&"US P&WXbc)g(
!  !!"() &)"'!&&'!!)A83GeP[XSPcX^]WXbc^ah))?PacXP[ATPS )?PacXP[ATPS!)D]STU
")D]STU#)D]STU$)D]STU%)D]STU&)D]STU')D]STU()D]STU
!  !!"() &)"'!&&'!!)2^[XSJ!L]d\5X[c!U[V!)
!  !!"() &)"'!&&'!!)[^)R !
!  !!"() &)"'!&&'!!)WX)R"%#$ #Q
!  !!"() &)"'!&&'!!)2^[XSJ"L]d\5X[cU[V!)
!  !!"() &)"'!&&'!!)[^)% &"%#%#&"% %#% 
!  !!"() &)"'!&&'!!)WX)% &"%#%#&"% %#% 
!  !!"() &)"'!&&'!!)2^[XSJ$L]d\5X[cU[V!)
!  !!"() &)"'!&&'!!)[^)#T
!  !!"() &)"'!&&'!!)WX)$(



#(!04%2 34/2!'%).$%8%3

!  !!"() &)"'!( $")A83Gg!PPSUTP"S!SU^aB@;83%Sg!#&aehZa&!UX[cTa 


!  !!"() &)"'!( $")A83Gg!PPSUTP"S!S)bc!eP[XS1Xc<P_UUUUUUUUUUUUUUUUcPQ]
XSj&$&$(#"" #&& "('l
!  !!"() &)"'!( $")A83G)bcacT]S!#'^UUbTc$#%""( %(%bXiT #'$&%aV]8Sg
$!((%AV]>UUbTcbR])g&"US"#QWXbc)g P
!  !!"() &)"'!( $")A83GeP[XSPcX^]WXbc^ah))5d[[ATPS )?PacXP[FaXcT!)D]STU
")D]STU#)D]STU$)D]STU%)D]STU&)D]STU')D]STU()D]STU
!  !!"() &)"'!( $")2^[XSJ!L]d\5X[c!U[V!)
!  !!"() &)"'!( $")[^)R !
!  !!"() &)"'!( $")WX)R"%#$R'
!  !!"() &)"'!( $")2^[XSJ"L]d\5X[cU[V!)
!  !!"() &)"'!( $")[^)% &"%#%#&"% %#% 
!  !!"() &)"'!( $")WX)% &"%#%#&"% %#% 
!  !!"() &)"'!( $")2^[XSJ$L]d\5X[cU[V!)
!  !!"() &)"'!( $")[^)$(
!  !!"() &)"'!( $")WX)$(
!  !!"() &)"'!(!#$()A83Gg!PPSUTP"S"SRU^aB@;83%Sg!#&aehZa&!UX[cTa 
!  !!"() &)"'!(!#$()A83Gg!PPSUTP"S"SR)bc!eP[XS1Xc<P_UUUUUUUUUUUUUUUUcPQ]
XSj&$&$(#"" #&& "('l
!  !!"() &)"'!(!#$()A83G)bcacT]S!#'^UUbTc$#%"#($!&!bXiT #'$&%aV]8Sg
$!((&AV]>UUbTcbR])g&"US"#QWXbc)g P
!  !!"() &)"'!(!#$()A83GeP[XSPcX^]WXbc^ah))5d[[ATPS )?PacXP[FaXcT!)D]STU
")D]STU#)D]STU$)D]STU%)D]STU&)D]STU')D]STU()D]STU
!  !!"() &)"'!(!#$()2^[XSJ!L]d\5X[c!U[V!)
!  !!"() &)"'!(!#$()[^)R !
!  !!"() &)"'!(!#$()WX)R"%#!&#U
!  !!"() &)"'!(!#$()2^[XSJ"L]d\5X[cU[V!)
!  !!"() &)"'!(!#$()[^)% &"%#%#&"% %#% 
!  !!"() &)"'!(!#$()WX)% &"%#%#&"% %#% 
!  !!"() &)"'!(!#$()2^[XSJ$L]d\5X[cU[V!)
!  !!"() &)"'!(!#$()[^)$(
!  !!"() &)"'!(!#$()WX)$(
3EVERALTHINGSAREWORTHPOINTINGOUTINTHISTRACEFILE
v 4HEFIRSTSEVERALLINESARETHESTANDARDTRACEFILEHEADERWITHFILENAMEAND
SOFTWAREVERSION
v 4HELINESTHATBEGINWITHTIMESTAMPSAREEACHASSOCIATEDWITHASINGLESTORAGE
REGION
v 4HEB@;83OFTHESTATEMENTTHATGENERATEDTHETRACEFILEISIDENTIFIEDFOREACH
STORAGEREGION
v %ACHLINECONTAININGTHEB@;83KEYWORDBEGINSDATAFORANEWSTORAGEREGION
v 4HELINEBELOWTHEB@;83LINECONTAINSAN)$WHICHCONTAINSTHESPcPN^QYTRcNXS
FROM310N>1942CBFORTHETABLEBEINGSCANNED
v 4HEaTVX^]BXiTFIELDSSHOWTHATTHESTORAGEREGIONSREALLYARE-"
v )TLOOKSLIKEEACH3TORAGE)NDEXENTRYOCCUPIES+OFMEMORYBASEDONTHEbcac
ANDT]SFIELDVALUES


#(!04%2 34/2!'%).$%8%3

v &OREACHCOLUMNEVALUATEDTHEREISANXSFIELDTHATCORRELATESTOITSPOSITIONINTHE
TABLE
v &OREACHCOLUMNEVALUATEDTHEREISAU[VFIELD)TAPPEARSTHATITISTHEDECIMAL
REPRESENTATIONOFABITMASK)TALSOAPPEARSTHATTHEFIRSTBITINDICATESWHETHER
NULLSARECONTAINEDINTHECURRENTCOLUMNOFTHESTORAGEREGION4HATIS AND
BOTHINDICATETHATNULLSAREPRESENT
v &OREACHCOLUMNEVALUATEDTHEREISA[^ ANDA WX VALUESTOREDASHEX 
v 4HE[^ANDWXVALUESAREONLYBYTES INDICATINGTHATTHE3TORAGE)NDEXESWILLBE
INEFFECTIVEONCOLUMNSWHERETHELEADINGPORTIONOFTHEVALUESARENOTDISTINCT
EMPIRICALEVIDENCEBEARSTHISOUT BYTHEWAY 
7HILEGENERATINGANDREADINGTRACEFILESISVERYINFORMATIVE ITISNOTVERYEASYTODOANDREQUIRES
DIRECTACCESSTOTHESTORAGESERVERS/NTOPOFTHAT THEAPPROACHISCOMPLETELYUNDOCUMENTED)TIS
PROBABLYBESTUSEDFORINVESTIGATIONSINNONPRODUCTIONENVIRONMENTS

-ONITORING7RAP5P
.EITHERTHEDATABASESTATISTICNORTHETRACINGISAPARTICULARLYSATISFYINGWAYOFMONITORING3TORAGE)NDEX
USAGE)TWOULDBENICETOBEABLETOTRACK3TORAGE)NDEXUSAGEATTHESTATEMENTLEVEL VIAACOLUMNIN
631,FOREXAMPLE)NTHEMEANTIME THERT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STgSTATISTICIS
THEBESTOPTIONWEHAVE

Controlling Storage Indexes


4HEREISNOTMUCHYOUCANDOTOCONTROL3TORAGE)NDEXBEHAVIOR(OWEVER THEDEVELOPERSHAVEBUILTINA
FEWHIDDENPARAMETERSTHATPROVIDESOMEFLEXIBILITY
4HEREARETHREEDATABASEPARAMETERSTHATDEALWITH3TORAGE)NDEXESTHATWEREAWAREOF 
v NZRUXbNbc^aPVTXSgNSXbPQ[TSDEFAULTIS&!,3%
v NZRUXbNbc^aPVTXSgNSXPVN\^STDEFAULTIS
v NRT[[Nbc^aXSgN\^STDEFAULTIS%6!
.ONEOFTHESEPARAMETERSAREDOCUMENTED SOYOUNEEDTOBECAREFULWITHTHEMETHODSWEDISCUSS
INTHISSECTION.EVERTHELESS WELLTELLYOUALITTLEBITABOUTSOMEOFTHESEPARAMETERSANDWHATTHEYCAN
DO

?KCFIS?STORAGEIDX?DISABLED
4HENZRUXbNbc^aPVTXSgNSXbPQ[TSPARAMETERALLOWS3TORAGE)NDEXESTOBEDISABLED!SWITHALLHIDDEN
PARAMETERS ITSBESTTOCHECKWITH/RACLESUPPORTBEFORESETTINGIT BUTASHIDDENPARAMETERSGO THISONE
ISRELATIVELYINNOCUOUS7EHAVEUSEDITEXTENSIVELYINTESTINGANDHAVENOTEXPERIENCEDANYNEGATIVE
CONSEQUENCES
9OUCANSETTHEPARAMETERATTHESESSIONLEVELWITHTHEP[cTabTbbX^]STATEMENT
P[cTabTbbX^]bTcNZRUXbNbc^aPVTXSgNSXbPQ[TS,cadT*
.OTETHATALTHOUGHSETTINGNZRUXbNbc^aPVTXSgNSXbPQ[TSTO425%DISABLES3TORAGE)NDEXESFORREADS
THESETTINGDOESNOTDISABLETHEMAINTENANCEOFEXISTING3TORAGE)NDEXES4HATISTOSAYTHATEXISTING


#(!04%2 34/2!'%).$%8%3

3TORAGE)NDEXESWILLSTILLBEUPDATEDWHENVALUESINATABLEARECHANGED EVENIFTHISPARAMETERISSETTO
425%

?KCFIS?STORAGEIDX?DIAG?MODE
4HESECONDPARAMETER NN:258BNBC>A06483GN3806N<>34 LOOKSEERILYLIKETHERT[[X]Xc^aPPARAMETER
N24;;NBC>A064N8=34GN3806N<>34 WHICHWASDISCUSSEDEARLIER!SYOUMIGHTEXPECT SETTINGTHIS
PARAMETERATTHEDATABASELAYERCAUSESTRACEFILESTOBEGENERATEDACROSSALLTHEAFFECTEDSTORAGECELLS
3ETTINGITTOAVALUEOFENABLESTRACING/DDLY SETTINGITTOAVALUEOFDISABLES3TORAGE)NDEXES
5NFORTUNATELY THETRACEFILESARECREATEDONTHESTORAGECELLS"UTTHISMETHODOFGENERATINGTHEMIS
MUCHLESSINTRUSIVETHANRESTARTINGTHERT[[baePROCESSONASTORAGESERVER
9OUCANSETTHEPARAMETERATTHESESSIONLEVELWITHTHEP[cTabTbbX^]STATEMENT
P[cTabTbbX^]bTcNZRUXbNbc^aPVTXSgNSXPVN\^ST,!*
4HEREMAYBEOTHERVALIDVALUESFORTHEPARAMETERTHATENABLEDIFFERENTLEVELSOFTRACING+EEPIN
MINDTHATTHISWILLPRODUCEALARGENUMBEROFTRACEFILESONEVERYSTORAGECELLTHATISINVOLVEDINAQUERY
THATUSES3TORAGE)NDEXES

?CELL?STORIDX?MODE
4HEN24;;NBC>A83GN<>34PARAMETERWASADDEDINTHESECONDPOINTRELEASEOF/RACLE$ATABASEG2
 7HILETHISPARAMETERISUNDOCUMENTED ITAPPEARSTHATITCONTROLSWHERE3TORAGE)NDEXESWILL
BEAPPLIED4HEREARETHREEVALIDVALUESFORTHISPARAMETER4E0:3BC0;; 4E0AND:3BCARE/RACLEKERNEL
FUNCTIONNAMES
9OUCANSETTHEPARAMETERATTHESESSIONLEVELWITHTHEP[cTabTbbX^]STATEMENT
P[cTabTbbX^]bTcNRT[[Nbc^aXSgN\^ST,0;;*
4HEEFFECTSOFTHISPARAMETERHAVEVARIEDACROSSRELEASES!SOFCELLSRVVERSION %6!THE
DEFAULT SUPPORTSALLTHEVALIDCOMPARISONOPERATORS9OUSHOULDNOTETHATINOLDERVERSIONS THE%6!
SETTINGDIDNOTSUPPORTTHE)3.5,,COMPARISONOPERATOR)TSALSOIMPORTANTTOKEEPINMINDTHATTHE
DATABASEPATCHINGISTIEDTOTHESTORAGESOFTWAREPATCHING5PGRADINGTHEVERSIONOFCELLSRVWITHOUT
PATCHINGTHEDATABASESOFTWARECANRESULTINUNPREDICATABLEBEHAVIORDISABLINGSTORAGEINDEXESFOR
EXAMPLE 

3TORAGE3OFTWARE0ARAMETERS
)NADDITIONTOTHEDATABASEPARAMETERS THEREAREALSOANUMBEROFUNDOCUMENTEDSTORAGESOFTWARE
PARAMETERSTHATARERELATEDTO3TORAGE)NDEXBEHAVIOR4HESEPARAMETERSCANBEMODIFIEDBYADDING
THEMTOTHERT[[X]Xc^aPFILEANDTHENRESTARTINGRT[[bae.OTETHATCELLINITORAWILLBEDISCUSSEDINMORE
DETAILIN#HAPTER(EREISALISTOFTHECELLINITORA3TORAGE)NDEXPARAMETERSALONGWITHTHEIRDEFAULT
VALUES
v NRT[[NT]PQ[TNbc^aPVTNX]STgNU^aN[^PSb,CAD4
v NRT[[NT]PQ[TNbc^aPVTNX]STgNU^aNfaXcTb,CAD4
v NRT[[NbXN\PgN]d\NSXPVN\^STNSd\_b,!
v NRT[[Nbc^aPVTNX]STgNR^[d\]b,
v NRT[[Nbc^aPVTNX]STgNSXPVN\^ST,50;B4


#(!04%2 34/2!'%).$%8%3

v NRT[[Nbc^aPVTNX]STgN_PacXP[NaSNbTRc^ab,$ !
v NRT[[Nbc^aPVTNX]STgN_PacXP[NaTPSbNcWaTbW^[SN_TaRT]c,'$
v NRT[[Nbc^aPVTNX]STgNbXiX]VNUPRc^a,!
9OUVEALREADYSEENTHETRACINGPARAMETERSN24;;NBC>A064N8=34GN3806N<>34AND
N24;;NB8N<0GN=D<N3806N<>34N3D<?BINTHESECTIONh-ONITORING3TORAGE)NDEXESv4HESETWOPARAMETERS
ARETHEMOSTUSEFULINOUROPINION ALTHOUGHYOUSHOULDGETTHEIDEAFROMTHELISTTHATTHEREISALSOSOME
BUILTINABILITYTOMODIFYBEHAVIORSSUCHASTHEAMOUNTOFMEMORYTOALLOCATEFORSTORAGEINDEXESANDTHE
NUMBEROFCOLUMNSTHATCANBEINDEXEDPERTABLE

Behavior
4HEREISNOTALOTYOUCANDOTOCONTROLWHEN3TORAGE)NDEXESAREUSEDANDWHENTHEYARENOT/THER
THANTHEPARAMETERFORDISABLINGTHEM THEREISLITTLEYOUCANDO4HEREISNOSPECIFICHINTTOENABLEOR
DISABLETHEIRUSE!NDUNFORTUNATELY THE>?CN?0A0<HINTDOESNOTWORKWITHTHE
N:258BNBC>A06483GN38B01;43PARAMETER EITHER4HEFACTTHATTHEREISNOWAYTOFORCETHEUSEOFA3TORAGE
)NDEXMAKESITEVENMOREIMPORTANTTOUNDERSTANDWHENTHISPOWERFULOPTIMIZATIONWILLANDWILLNOTBE
USED
)NORDERFORASTORAGEINDEXTOBEUSED AQUERYMUSTINCLUDEORMAKEUSEOFALLTHEFOLLOWING
Smart Scan:3TORAGE)NDEXESCANONLYBEUSEDWITHSTATEMENTSTHATDO3MART
3CANS4HISCOMESWITHAWHOLESETOFREQUIREMENTS ASDETAILEDIN#HAPTER
4HEMAINREQUIREMENTSARETHATTHEOPTIMIZERMUSTCHOOSEAFULLSCANANDTHAT
THE)/MUSTBEDONEVIATHEDIRECTPATHREADMECHANISM
At Least One Predicate: )NORDERFORASTATEMENTTOUSEA3TORAGE)NDEX THERE
MUSTBEAF74A4CLAUSEWITHATLEASTONEPREDICATE
Simple Comparison Operators: 3TORAGE)NDEXESCANBEUSEDWITHTHEFOLLOWING
SETOFOPERATORS
,+-14CF44=-,+,8=8B=D;;8B=>C=D;;
)FAQUERYMEETSTHEREQUIREMENTSOFHAVINGATLEASTONEPREDICATEINVOLVINGSIMPLECOMPARISON
OPERATORS ANDIFTHATQUERYSEXECUTIONMAKESUSEOF3MART3CAN THENTHESTORAGESOFTWARECANMAKE
USEOFSTORAGEINDEXES4HEYCANBEAPPLIEDTOANYOFTHEFOLLOWINGASPECTSOFTHEQUERY
Multi-Column Predicates3TORAGE)NDEXESCANBEUSEDWITHMULTIPLE
PREDICATESONTHESAMETABLE
Joins: 3TORAGE)NDEXESCANBEUSEDONSTATEMENTSACCESSINGMULTIPLETABLESTO
MINIMIZEDISK)/BEFORETHE*OINOPERATIONSARECARRIEDOUT
Parallel Query: 3TORAGE)NDEXESCANBEUSEDBYPARALLELQUERYSLAVES)NFACT
SINCEDIRECTPATHREADSAREREQUIREDTOENABLE3TORAGE)NDEXES PARALLELQUERIES
AREVERYUSEFULFORENSURINGTHAT3TORAGE)NDEXESCANBEUSED
HCC: 3TORAGE)NDEXESWORKWITH(##COMPRESSEDTABLES
Bind Variables: 3TORAGE)NDEXESWORKWITHBINDVARIABLES4HEVALUESOFTHE
BINDVARIABLESAPPEARTOBEPASSEDTOTHESTORAGECELLSWITHEACHEXECUTION


#(!04%2 34/2!'%).$%8%3

Partitions –3TORAGE)NDEXESWORKWITHPARTITIONEDOBJECTS)NDIVIDUAL
STATEMENTSCANBENEFITFROMPARTITIONELIMINATEANDSTORAGEINDEXESDURINGTHE
SAMEEXECUTION
Sub-queries: 3TORAGE)NDEXESWORKWITHPREDICATESTHATCOMPAREACOLUMNTOA
VALUERETURNEDBYASUB QUERY
Encryption: 3TORAGE)NDEXESWORKONENCRYPTEDTABLES
4HEREAREOFCOURSELIMITATIONS&OLLOWINGARESOMEFEATURESANDSYNTAXTHATPREVENTTHEUSEOF
STORAGEINDEXES
CLOBs3TORAGE)NDEXESARENOTCREATEDON#,/"S
,3TORAGE)NDEXESDONOTWORKWITHPREDICATESTHATUSETHE,COMPARISON
OPERATOR
Wildcards3TORAGE)NDEXESDONOTWORKONPREDICATESTHATUSETHEWILDCARD
!FURTHERLIMITATIONISTHATSTORAGEINDEXESMAYCONTAINONLYEIGHTCOLUMNS4HEYARECREATEDAND
MAINTAINEDFOREIGHT COLUMNSPERTABLE4HISDOESNOTMEANTHATQUERIESWITHMORETHANPREDICATES
CANNOTMAKEUSEOF3TORAGE)NDEXES)NSUCHCASES THESTORAGESOFTWARECANUSETHEINDEXESTHATEXIST
BUTBYDEFAULTTHEREWILLBEAMAXIMUMOFEIGHTCOLUMNSTHATCANBEINDEXED)TDOESAPPEARTHATTHE
DEVELOPERSHAVEPARAMETERIZEDTHISSETTING SOITMAYBEPOSSIBLETOCHANGETHISVALUEWITHHELPFROM
/RACLESUPPORT
&INALLY BEARINMINDTHATSTORAGEINDEXESARENOTPERSISTEDTODISK4HESTORAGECELLMUSTREBUILD
THEMWHENEVERTHERT[[baePROGRAMISRESTARTED4HEYAREGENERALLYCREATEDDURINGTHEFIRSTSMARTSCAN
THATREFERENCESAGIVENCOLUMNAFTERASTORAGESERVERHASBEENRESTARTED4HEYCANALSOBECREATEDWHENA
TABLEISCREATEDVIAA2A40C4C01;40BB4;42CSTATEMENT ORDURINGOTHERDIRECT PATHLOADS!NDOF
COURSE THESTORAGECELLWILLUPDATESTORAGEINDEXESINRESPONSETOCHANGESTHATAPPLICATIONSMAKETOTHE
DATAINTHETABLES

Performance
3TORAGE)NDEXESPROVIDESOMEOFTHEMOSTDRAMATICPERFORMANCEBENEFITSAVAILABLEONTHE%XADATA
PLATFORM$EPENDINGONTHECLUSTERINGFACTOROFAPARTICULARCOLUMNTHATIS HOWWELLTHECOLUMNSDATA
ISSORTEDONDISK THERESULTSCANBESPECTACULAR(ERESATYPICALEXAMPLESHOWINGTHEPERFORMANCEOFA
QUERYWITHANDWITHOUTTHEBENEFITOF3TORAGE)NDEXES
BHB/4G31 -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,UP[bT*

BTbbX^]P[cTaTS

BHB/4G31 -P[cTabTbbX^]bTcNZRUXbNbc^aPVTXSgNSXbPQ[TS,cadT*

BTbbX^]P[cTaTS



#(!04%2 34/2!'%).$%8%3

BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"*


2>D=C

"'##'

a^fbT[TRcTS

4[P_bTS)) )#$"(

BHB/4G31 -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,cadT*

BTbbX^]P[cTaTS

4[P_bTS)))
BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"*

2>D=C

"'##'

a^fbT[TRcTS

4[P_bTS)))!"&

BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"fWTaT_ZNR^[,&*

2>D=C

 !

4[P_bTS))) "&#

BHB/4G31 -P[cTabTbbX^]bTcNZRUXbNbc^aPVTXSgNSXbPQ[TS,UP[bT*

BTbbX^]P[cTaTS

4[P_bTS)))

BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"fWTaT_ZNR^[,&*

2>D=C

 !

4[P_bTS))) %
!TTHESTARTOFTHISDEMONSTRATION ALLOFFLOADINGWASDISABLEDVIATHEDATABASEINITIALIZATION
PARAMETER 24;;N>55;>03N?A>24BB8=63TORAGE)NDEXESWEREALSODISABLED VIATHEHIDDENPARAMETER
N:258BNBC>A06483GN38B01;43!QUERYWITHOUTAF74A4CLAUSEWASRUNANDWASCOMPLETEDUSINGDIRECT
PATHREADS BUTWITHOUTOFFLOADING4HATQUERYTOOKMINUTEANDSECONDSTODOTHEFULLTABLESCANAND


#(!04%2 34/2!'%).$%8%3

RETURNEDENTIREBLOCKSTOTHEDATABASEGRID JUSTASITWOULDONNON %XADATASTORAGEENVIRONMENTS


/FFLOADINGWASTHENRE ENABLEDANDTHEQUERYWASREPEATED4HISTIMEITCOMPLETEDINABOUTSECONDS
4HEIMPROVEMENTINELAPSEDTIMEWASPRIMARILYDUETOCOLUMNPROJECTIONSINCETHESTORAGELAYERONLY
HADTORETURNACOUNTEROFROWS INSTEADOFRETURNINGANYOFTHECOLUMNVALUES
!VERYSELECTIVEF74A4CLAUSEWASTHENADDEDTOTHEQUERYITREDUCEDTHETIMETOABOUTSECONDS
4HISIMPROVEMENTWASTHANKSTOPREDICATEFILTERING2EMEMBERTHAT3TORAGE)NDEXESWERESTILLTURNED
OFF!COUNTERFORONLYROWSHADTOBERETURNEDTOTHEDATABASEMACHINE BUTTHESTORAGECELLSSTILLHAD
TOREADALLTHEDATATODETERMINEWHICHROWSTORETURN&INALLYTHE3TORAGE)NDEXESWERERE ENABLED BY
SETTINGN:258BNBC>A06483GN38B01;43TO&!,3% ANDTHEQUERYWITHTHEF74A4CLAUSEWASEXECUTEDAGAIN
4HISTIMETHEELAPSEDTIMEWASONLYABOUTSECOND7HILETHISPERFORMANCEIMPROVEMENTSEEMS
EXTREME ITISRELATIVELYCOMMONWHEN3TORAGE)NDEXESAREUSED

3PECIAL/PTIMIZATIONFOR.ULLS
.ULLSAREASPECIALCASEFOR3TORAGE)NDEXES4HEREISASEPARATEFLAGINTHE3TORAGE)NDEXSTRUCTURETHATIS
USEDTOINDICATEWHETHERASTORAGEREGIONCONTAINSNULLSORNOT4HISSEPARATEFLAGMAKESQUERIESLOOKING
FORNULLSORTHEABSENCEOFNULLS EVENMOREEFFICIENTTHANTHENORMALMINIMUMANDMAXIMUM
COMPARISONSTHATARETYPICALLYDONE(ERESANEXAMPLECOMPARINGTYPICALPERFORMANCEWITHAND
WITHOUTTHESPECIALNULLOPTIMIZATION
BHB/4G31 -bTccX\X]V^]
BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[ , *

2>D=C



4[P_bTS))) ##&
BHB/4G31 -/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg"( $&&%

4[P_bTS)))
BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[ Xb]d[[*

2>D=C

#

4[P_bTS))) !
BHB/4G31 -/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg $($#& #%!#

4[P_bTS)))
)NTHISEXAMPLEYOUCANSEETHATRETRIEVALOFAFEWNULLSWASEXTREMELYFAST4HISISBECAUSETHEREIS
NOPOSSIBILITYTHATANYSTORAGEREGIONTHATDOESNTCONTAINANULLWILLHAVETOBEREAD SONOFALSE


#(!04%2 34/2!'%).$%8%3

POSITIVESWILLSLOWDOWNTHISQUERY7ITHANYOTHERVALUEEXCEPTTHEMINIMUMORMAXIMUMVALUEFORA
COLUMN THEREWILLMOSTLIKELYBESTORAGEREGIONSTHATCANTBEELIMINATED EVENTHOUGHTHEYDONT
ACTUALLYCONTAINAVALUETHATMATCHESTHEPREDICATES4HISISEXACTLYTHECASEINTHEPREVIOUSEXAMPLE
WHERENORECORDSWERERETURNEDFORTHEFIRSTQUERY EVENTHOUGHITTOOKSECONDSTOREADALLTHEDATA
FROMDISK.OTICEALSOTHATTHEAMOUNTOF)/SAVEDBYTHENULLQUERYISALMOSTGIGABYTES'" WHILE
THEAMOUNTSAVEDBYTHEFIRSTQUERYWASONLYABOUT-"4HATMEANSTHATTHEFIRSTQUERYFOUNDALMOST
NOSTORAGEREGIONSTHATITCOULDELIMINATE

0HYSICAL$ISTRIBUTIONOF6ALUES
3TORAGE)NDEXESBEHAVEVERYDIFFERENTLYFROMNORMALINDEXES4HEYMAINTAINAFAIRLYCOARSEPICTUREOFTHE
VALUESTHATARESTOREDONDISK(OWEVER THEIRMECHANISMCANBEVERYEFFECTIVEATELIMINATINGLARGE
AMOUNTSOFDISK)/INCERTAINSITUATIONSWHILESTILLKEEPINGTHECOSTOFMAINTAININGTHEMRELATIVELYLOW
)TSIMPORTANTTOKEEPINMINDTHATTHEPHYSICALDISTRIBUTIONOFDATAONDISKWILLHAVEALARGEIMPACTON
HOWEFFECTIVETHE3TORAGE)NDEXESARE!NILLUSTRATIONWILLMAKETHISCLEARER
3UPPOSEYOUHAVEATABLETHATHASACOLUMNWITHUNIQUEVALUESTHATIS NOVALUEISREPEATED )FTHE
DATAISSTOREDONDISKINSUCHAMANNERTHATTHEROWSAREORDEREDBYTHATCOLUMN THENTHEREWILLBEONE
ANDONLYONESTORAGEREGIONFORANYGIVENVALUEOFTHATCOLUMN!NYQUERYWITHANEQUALITYPREDICATEON
THATCOLUMNWILLHAVETOREADATMOSTONESTORAGEREGION&IGURE SHOWSACONCEPTUALPICTUREOFA
3TORAGE)NDEXFORASORTEDCOLUMN


Figure 4-2. A Storage Index on a sorted column

!SYOUCANSEEFROMTHEDIAGRAM IFYOUWANTEDTORETRIEVETHERECORDWHERETHEVALUEWAS YOU


WOULDONLYHAVEONESTORAGEREGIONTHATCOULDPOSSIBLYCONTAINTHATVALUE
3UPPOSENOWTHATTHESAMEDATASETISSTOREDONDISKINARANDOMORDER(OWMANYSTORAGEREGIONS
WOULDYOUEXPECTTOHAVETOREADTOLOCATEASINGLEROWVIAANEQUALITYPREDICATE)TDEPENDSONTHE
NUMBEROFROWSTHATFITINTOASTORAGEREGION BUTTHEANSWERISCERTAINLYMUCHLARGERTHANTHESTORAGE
REGIONTHATWOULDBEREQUIREDWITHTHESORTEDDATASET


#(!04%2 34/2!'%).$%8%3

■+EVIN3AYS#HOOSINGTOSORTDATAATLOADTIMEISAhPAYNOWORPAYLATERvPROPOSITION)FSORTINGDATAFITSWITHIN
THEOPPORTUNITYWINDOWFORLOADINGDATA THEEXTRAEFFORTWILLPAYDIVIDENDSININCREASED3TORAGE)NDEX
EFFECTIVENESSAND QUITEOFTEN IMPROVED(YBRID#OLUMNAR#OMPRESSIONRATIOS

)TSJUSTTHATSIMPLE3TORAGEINDEXESWILLBEMOREEFFECTIVEONSORTEDDATA&ROMAPERFORMANCE
PERSPECTIVE THEBETTERSORTEDTHEDATAISONDISK THEFASTERTHEAVERAGEACCESSTIMEWILLBEWHENUSING
3TORAGE)NDEXES&ORACOLUMNTHATISCOMPLETELYSORTED THEACCESSTIMESHOULDBEVERYFASTANDTHERE
SHOULDBELITTLEVARIATIONINTHEACCESSTIME REGARDLESSOFWHATVALUESAREREQUESTED&ORUNSORTEDDATA
THEACCESSTIMESWILLBEFASTERTOWARDTHEENDSOFTHERANGEOFVALUESBECAUSETHEREARENOTMANYSTORAGE
REGIONSTHATWILLHAVERANGESOFVALUESCONTAININGTHEQUERIEDVALUE 4HEAVERAGEACCESSTIMESFORVALUES
INTHEMIDDLEOFTHEDISTRIBUTIONWILLVARYWIDELY&IGURE ISACHARTCOMPARINGACCESSTIMESUSING
3TORAGE)NDEXESFORSORTEDANDUNSORTEDDATA
8

4 Unsorted Values

3 Sorted Values

0
0 5 10 15 20 25
Figure 4-3. Storage Index access times – sorted vs. unsorted

!SYOUCANSEE SORTEDDATAWILLPROVIDEBETTERANDMORECONSISTENTRESULTS7HILEWEREONTHE
SUBJECT )SHOULDPOINTOUTTHATTHEREAREMANYCASESWHERESEVERALCOLUMNSWILLBENEFITFROMTHIS
BEHAVIORALCHARACTERISTICOF3TORAGE)NDEXES)TSCOMMONINDATAWAREHOUSEENVIRONMENTSTOHAVEDATA
THATISPARTITIONEDONADATECOLUMN!NDTHEREAREOFTENMANYOTHERCOLUMNSTHATTRACKTHEPARTITION
KEYSUCHASASSOCIATEDDATESORDERDATE SHIPDATE INSERTDATE RETURNDATEFOREXAMPLE ORSEQUENTIALLY
GENERATEDNUMBERSLIKEORDERNUMBERS1UERIESAGAINSTTHESECOLUMNAREOFTENPROBLEMATICDUETHEFACT
THATPARTITIONELIMINATECANNOTHELPTHEM3TORAGE)NDEXESWILLPROVIDEASIMILARBENEFITTOPARTITION
ELIMINATIONASLONGASCAREISTAKENTOENSURETHATTHEDATAISPRE SORTEDPRIORTOLOADING

Potential Issues
4HERESNOSUCHTHINGASAFREEPUPPY!SWITHEVERYTHINGINLIFE THEREAREAFEWISSUESWITH3TORAGE
)NDEXESTHATYOUSHOULDBEAWAREOF


#(!04%2 34/2!'%).$%8%3

)NCORRECT2ESULTS
"YFARTHEBIGGESTISSUEWITH3TORAGE)NDEXESHASBEENTHATINEARLYRELEASESOFTHE%XADATA3TORAGE
3OFTWARETHEREWEREAHANDFULOFBUGSREGARDINGINCORRECTRESULTS4HATISTOSAYTHATINCERTAINSITUATIONS
USAGEOF3TORAGE)NDEXESCOULDELIMINATESTORAGEREGIONSFROMCONSIDERATIONTHATACTUALLYCONTAINED
RECORDSOFINTEREST4HISINCORRECTELIMINATIONCOULDOCCURDUETOTIMINGISSUESWITHCONCURRENT$-,
WHILEA3MART3CANWASBEINGDONEUSING3TORAGE)NDEXES4HESEBUGSHAVEBEENADDRESSEDIN
ANDTHELATESTPATCHESONTHESTORAGESERVERS)FYOURUNINTOTHISISSUE DISABLING3TORAGE)NDEXUSEVIA
THEHIDDENPARAMETER N:258BNBC>A06483GN38B01;43 MAYBETHEONLYOPTIONAVAILABLEUNTILTHEPROPER
PATCHESAREAPPLIED4HISPARAMETERCANBESETWITHANP[cTabTbbX^]COMMAND SOTHATONLY
PROBLEMATICQUERIESAREAFFECTED/FCOURSEYOUSHOULDCHECKWITH/RACLE3UPPORTBEFOREENABLINGANY
HIDDENPARAMETERS

-OVING4ARGET
3TORAGE)NDEXESCANBEALITTLEFRUSTRATINGBECAUSETHEYDONTALWAYSKICKINWHENYOUEXPECTTHEMTO
!NDWITHOUTANYHINTSTOTELL/RACLETHATYOUREALLYWANTA3TORAGE)NDEXTOBEUSED THEREISLITTLEYOUCAN
DOOTHERTHANTRYTOUNDERSTANDWHYTHEYARENOTUSEDINCERTAINCIRCUMSTANCESSOYOUCANAVOIDTHOSE
CONDITIONSINTHEFUTURE
)NEARLYVERSIONSOFTHESTORAGESERVERSOFTWARE ONEOFTHEMAINREASONSTHAT3TORAGE)NDEXESWERE
DISABLEDWASDUETOIMPLICITDATATYPECONVERSIONS/VERTHEYEARS /RACLEHASGOTTENBETTERANDBETTERAT
DOINGhSMARTvDATATYPECONVERSIONSTHATDONTHAVENEGATIVEPERFORMANCECONSEQUENCES&OREXAMPLE
IFYOUWRITEA31,STATEMENTWITHAF74A4CLAUSETHATCOMPARESADATEFIELDTOACHARACTERSTRING /RACLE
WILLUSUALLYAPPLYAc^NSPcTFUNCTIONTOTHECHARACTERSTRINGINSTEADOFMODIFYINGTHEDATECOLUMNWHICH
COULDHAVETHEUNPLEASANTSIDEEFFECTOFDISABLINGANINDEX 5NFORTUNATELY WHENTHE%XADATASTORAGE
SOFTWAREWASRELATIVELYNEW ALLTHENUANCESHADNOTBEENWORKEDOUT ATLEASTTOTHEDEGREEWEREUSEDTO
FROMTHEDATABASESIDE$ATESHAVEBEENPARTICULARLYPERSNICKETY(EREISANEXAMPLEUSINGCELLSRV

BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[",!>2C$*

2>D=C



4[P_bTS))) #
BHB/4G31 -/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg



#(!04%2 34/2!'%).$%8%3

4[P_bTS))) 
BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[",!>2C!$*

2>D=C



4[P_bTS)))&
BHB/4G31 -/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg $($#""&&(!

4[P_bTS))) 
)NTHISVERYSIMPLEEXAMPLETHEREISAQUERYWITHAPREDICATECOMPARINGADATECOLUMNCOL TOA
STRINGCONTAININGADATE)NONECASE THESTRINGCONTAINEDAFOUR DIGITYEAR)NTHEOTHER ONLYTWODIGITS
WEREUSED/NLYTHEQUERYWITHTHEFOUR DIGITYEARFORMATUSEDTHE3TORAGE)NDEX,ETSLOOKATTHEPLANS
FORTHESTATEMENTSTOSEEWHYTHETWOQUERIESWERETREATEDDIFFERENTLY
BHB/4G31 -/Ubg!
4]cTaeP[dTU^ab`[NcTgc)bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[",
4]cTaeP[dTU^ab`[NXS)
4]cTaeP[dTU^aX]bcNXS)


B@;N830E6N4C8<4?G>55;>038>NB0E43B@;NC4GC

!b$']%S"\iZ\]&HTb bT[TRcR^d]cUa^\Zb^bZTf"fWTaT
R^[",!>2C!$

UdW\V(W`SQS'# #HTb((((bT[TRcR^d]cUa^\Zb^bZTf"fWTaT
R^[",!>2C$

!a^fbbT[TRcTS

BHB/4G31 -bT[TRcUa^\cPQ[TSQ\bNg_[P]SXb_[PhNRdab^ab`[NXSRWX[SN]^ch_XRP[*
4]cTaeP[dTU^ab`[NXS)UdW\V(W`SQS'#
4]cTaeP[dTU^aRWX[SN]^)

?;0=NC01;4N>DC?DC

B@;N83UdW\V(W`SQS'#RWX[S]d\QTa

bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[",!>2C$

?[P]WPbWeP[dT)!%'#!#('"$



#(!04%2 34/2!'%).$%8%3


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\Tk

kkB4;42CBC0C4<4=Ckkkk$"$: kk
k kB>AC066A460C4kk k'kkk
k!kC01;40224BBBC>A0645D;;kB:4F"k"'#k"&!k$"$:!k )#&)#k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!bc^aPVT2>;",!>2C$
UX[cTa2>;",!>2C$


!a^fbbT[TRcTS

BHB/4G31 -
4]cTaeP[dTU^ab`[NXS)!b$']%S"\iZ\]
4]cTaeP[dTU^aRWX[SN]^)

?;0=NC01;4N>DC?DC

B@;N83!b$']%S"\iZ\]RWX[S]d\QTa

bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[",!>2C!$

?[P]WPbWeP[dT)!%'#!#('"$


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\Tk

kkB4;42CBC0C4<4=Ckkkk$" : kk
k kB>AC066A460C4kk k'kkk
k!kC01;40224BBBC>A0645D;;kB:4F"k"'#k"&!k$" : k )#%)!#k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!bc^aPVT2>;",C>N30C4!$ !))bhhhh\\SS
WW!#)\X)bb
UX[cTa2>;",C>N30C4!$ !))bhhhh\\SS
WW!#)\X)bb


!!a^fbbT[TRcTS
)TAPPEARSTHATTHEOPTIMIZERDIDNTRECOGNIZETHETWO DIGITDATEASADATE!TTHEVERYLEAST THE
OPTIMIZERFAILEDTOAPPLYTHEc^NSPcTFUNCTIONTOTHELITERALANDSOTHE3TORAGE)NDEXWASNOTUSED
&ORTUNATELYMOSTOFTHESETYPESOFDATACONVERSIONISSUESHAVEBEENRESOLVEDWITHTHELATERRELEASES
(ERESTHESAMETESTUSINGCELLSRV


#(!04%2 34/2!'%).$%8%3

BHB/B0=31>G-/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg

BHB/B0=31>G-bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[",!>2C$*

2>D=C



BHB/B0=31>G-/bX

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg %!#$!%'#'
3OASYOUCANSEE THISCONVERSIONISSUEHASBEENRESOLVED3OWHYBRINGITUP7ELLTHEPOINTISTHAT
THEBEHAVIOROF3TORAGE)NDEXESHAVEUNDERGONENUMEROUSCHANGESASTHEPRODUCTHASMATURED!SA
RESULT WEHAVEBUILTASETOFTESTCASESTHATWEUSETOVERIFYBEHAVIORAFTEREACHPATCHINOURLAB/URTEST
CASESPRIMARILYVERIFYCOMPARISONOPERATORS  LIKE )3.5,, ETCx ANDAFEWOTHERSPECIALCASESSUCH
AS,/"S COMPRESSIONANDENCRYPTION/FCOURSEITSALWAYSAGOODPRACTICETOTESTAPPLICATIONBEHAVIOR
AFTERANYPATCHING BUTIFYOUHAVESPECIFICCASESWHERE3TORAGE)NDEXESARECRITICALTOYOURAPPLICATION
YOUMAYWANTTAKESPECIALCARETOTESTTHOSEPARTSOFYOUAPPLICATION

0ARTITION3IZE
3TORAGE)NDEXESDEPENDON3MART3CANS WHICHDEPENDONDIRECTPATHREADS!SWEDISCUSSEDIN#HAPTER
 /RACLEWILLGENERALLYUSESERIALDIRECTPATHREADSFORLARGEOBJECTS(OWEVER WHENANOBJECTIS
PARTITIONED /RACLEMAYFAILTORECOGNIZETHATTHEOBJECTIShLARGE vBECAUSE/RACLELOOKSATTHESIZEOF
EACHINDIVIDUALSEGMENT4HISMAYRESULTINSOMEPARTITIONSNOTBEINGREADVIATHE3MART3CAN
MECHANISMANDTHUSDISABLINGANY3TORAGE)NDEXESFORTHATPARTITION7HENHISTORICALPARTITIONSARE
COMPRESSED THEPROBLEMBECOMESEVENMORENOTICEABLE ASTHEREDUCEDSIZEOFTHECOMPRESSED
PARTITIONSWILLBEEVENLESSLIKELYTOTRIGGERTHESERIALDIRECTPATHREADS4HISISSUECANBEWORKEDAROUND
BYNOTRELYINGONTHESERIALDIRECTPATHREADALGORITHMANDINSTEADSPECIFYINGADEGREEOFPARALLELISMFOR
THEOBJECTORUSINGAHINTTOFORCETHEDESIREDBEHAVIOR

)NCOMPATIBLE#ODING4ECHNIQUES
&INALLY THEREARESOMECODINGTECHNIQUESTHATCANDISABLE3TORAGE)NDEXES(ERESANEXAMPLESHOWING
THEEFFECTOFTHEcad]RFUNCTIONONDATECOLUMNS
BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTcad]RR^[",!>2C!$*

2>D=C

#



#(!04%2 34/2!'%).$%8%3

a^fbT[TRcTS

4[P_bTS)))$&$ 
BHB/4G31 -/Ubg!
4]cTaeP[dTU^ab`[NcTgc)bT[TRcR^d]cUa^\Zb^bZTf"fWTaTcad]RR^["
4]cTaeP[dTU^ab`[NXS)

B@;N830E6N4C8<4?G>55;>038>NB0E43B@;NC4GC

"R f(%RPhWdc($%(#HTb((((bT[TRcR^d]cUa^\Zb^bZTf"fWTaT
cad]RR^[",!>2C!$

"R f(%RPhWdc($&$HTb((((bT[TRcR^d]cUa^\Zb^bZTf"fWTaT
cad]RR^[",!>2C!$


!a^fbbT[TRcTS

4[P_bTS))) 
BHB/4G31 -bT[TRcUa^\cPQ[TSQ\bNg_[P]SXb_[PhNRdab^ab`[NXSRWX[SN]^ch_XRP[*
4]cTaeP[dTU^ab`[NXS)"R f(%RPhWdc(
4]cTaeP[dTU^aRWX[SN]^)

?;0=NC01;4N>DC?DC

B@;N83"R f(%RPhWdc(RWX[S]d\QTa 

bT[TRcR^d]cUa^\Zb^bZTf"fWTaTcad]RR^[",!>2C!$

?[P]WPbWeP[dT)!%'#!#('"$


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\Tk

kkB4;42CBC0C4<4=Ckkkk$# : kk
k kB>AC066A460C4kk k'kkk
k!kC01;40224BBBC>A0645D;;kB:4F"k#k"!k$# :"k )#')!#k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!bc^aPVTCAD=28=C4A=0;N5D=2C8>=2>;",C>N30C4!$ !
))bhhhh\\SSWW!#)\X)bb
UX[cTaCAD=28=C4A=0;N5D=2C8>=2>;",C>N30C4!$ !
))bhhhh\\SSWW!#)\X)bb

=^cT

RPaSX]P[XchUTTSQPRZdbTSU^acWXbbcPcT\T]c


#(!04%2 34/2!'%).$%8%3

)NTHISEXAMPLE AFUNCTIONWASAPPLIEDTOADATECOLUMN WHICHASYOUMIGHTEXPECT DISABLESTHE


3TORAGE)NDEX4HEFACTTHATAPPLYINGAFUNCTIONTOACOLUMNDISABLESTHE3TORAGE)NDEXISNOTTOO
SURPRISING BUTAPPLICATIONOFTHEcad]RFUNCTIONISACOMMONLYSEENCODINGTECHNIQUE-ANYDATESHAVE
ATIMECOMPONENTANDMANYQUERIESWANTDATAFORASPECIFICDAY)TISWELLKNOWNTHATTRUNCATINGADATE
INTHISMANNERWILLDISABLENORMAL" 4REEINDEXUSAGE)NTHEPAST THATGENERALLYDIDNTMATTER1UERIES
INMANYDATAWAREHOUSEENVIRONMENTSWEREDESIGNEDTODOFULLSCANSANYWAY SOTHEREWASREALLYNO
NEEDTOWORRYABOUTDISABLINGANINDEX3TORAGE)NDEXESCHANGETHEGAMEFROMTHISPERSPECTIVEANDMAY
FORCEUSTORE THINKSOMEOFOURAPPROACHES7ELLDISCUSSTHISISSUEINMOREDETAILIN#HAPTER

Summary
3TORAGE)NDEXESAREANOPTIMIZATIONTECHNIQUETHATISAVAILABLEWHENTHEDATABASEISABLETOUTILIZE
3MART4ABLE3CANS4HEYCANPROVIDEDRAMATICPERFORMANCEIMPROVEMENTS3TORAGEINDEXESCANBE
THOUGHTOFASANALTERNATEPARTITIONINGSTRATEGY BUTWITHOUTTHENORMALRESTRICTIONSASSOCIATEDWITH
PARTITIONING4HEYAREESPECIALLYEFFECTIVEWITHQUERIESTHATACCESSDATAVIAANALTERNATEKEYTHATTRACKS
THEPRIMARYPARTITIONKEY
(OWTHEDATAISPHYSICALLYSTOREDISANIMPORTANTCONSIDERATIONANDHASADRAMATICIMPACTONTHE
EFFECTIVENESSOF3TORAGE)NDEXES#ARESHOULDBETAKENWHENMIGRATINGDATATOTHE%XADATAPLATFORMTO
ENSURETHATTHEDATAISCLUSTEREDONDISKINAMANNERTHATWILLALLOW3TORAGE)NDEXESTOBEUSED
EFFECTIVELY


CHAPTER 5



Exadata Smart Flash Cache

4HEMARKETINGGUYSAT/RACLEMUSTLIKETHETERMhSMARTv4HEYHAVEAPPLIEDITTOADOZENORSODIFFERENT
FEATURESONTHE%XADATAPLATFORM4HEYALSOSEEMTOLIKETHETERMhFLASH vWHICHISASSOCIATEDWITHAT
LEASTAHALFDOZENFEATURESASWELL4OADDTOTHECONFUSION THEREARETWOFEATURESIN/RACLE$ATABASEG
2ELEASETHATHAVEALMOSTEXACTLYTHESAMENAMES $ATABASE3MART&LASH#ACHE$"&# AND%XADATA
3MART&LASH#ACHE%3&# 7HILEBOTHFEATURESMAKEUSEOFFLASH BASEDMEMORYDEVICES THEYAREVERY
DIFFERENT4HISCHAPTERISFOCUSEDON%3&#SOWELLONLYMENTION$"&#INPASSING
#LEARY ONEOFTHEGOALSWITH%XADATA6ANDNOW8 WASTOEXPAND%XADATACAPABILITIESTO
IMPROVEITSPERFORMANCEWITH/,40WORKLOADS%3&#WASTHEKEYCOMPONENTTHATWASADDEDTOTHE6
CONFIGURATIONTOACCOMPLISHTHISGOAL4HEADDITIONPROVIDESOVER4"OFCACHEINAFULLRACK)TS
IMPORTANTTOUNDERSTANDTHATTHISCACHEISMANAGEDBY/RACLESOFTWARETHATISAWAREOFHOWTHEDATAIS
BEINGUSEDBYTHEDATABASESTHATTHESTORAGEISSUPPORTING/RACLEHASBEENWORKINGONSOFTWAREFOR
EFFECTIVELYMANAGINGDATABASECACHESFOROVERYEARS3INCETHESTORAGESOFTWAREKNOWSWHATTHE
DATABASEISASKINGFOR ITHASAMUCHBETTERIDEAOFWHATSHOULDANDSHOULDNTBECACHEDTHANA
CONVENTIONALSTORAGEARRAY

DBFC VS. ESFC

$"&#AND%3&#ARETWOCOMPLETELYDIFFERENTTHINGS$"&#ISANEXTENSIONOFTHEBUFFERCACHEONTHE
DATABASESERVER)TISASTANDARDPARTOFGANDISIMPLEMENTEDASATIERBUFFERCACHEFORANINSTANCE)T
ISONLYSUPPORTEDON3OLARISAND/RACLE%NTERPRISE,INUX)TISENABLEDBYADDINGAFLASHCARDTOADATABASE
SERVERANDTELLINGASINGLEINSTANCETOUSEIT)FAUSERNEEDSABLOCKTHATISNOTINTHEBUFFERCACHE ITWILL
LOOKINTHE$"&#TOSEEIFITISTHEREBEFOREREQUESTINGAN)/7HENBLOCKSAREAGEDOUTOFTHEBUFFERPOOL
THEYAREMOVEDTOTHE$"&#INSTEADOFBEINGSIMPLYFLUSHED%3&#IS OFCOURSE THEDISKCACHEONTHE
%XADATASTORAGESERVERS)TCACHESDATAFORALLINSTANCESTHATACCESSTHESTORAGECELL

Hardware
%ACH%XADATASTORAGESERVERHAS3UN&LASH!CCELERATOR&0#)ECARDS%ACHCARDHOLDS'FORATOTAL
OF'ONEACHSTORAGESERVER4HESEARETHENUMBERSTHATYOUNORMALLYSEEQUOTEDINTHE
SPECIFICATIONSALTHOUGHTHEAMOUNTTHATSAVAILABLEFORUSEISSLIGHTLYLESS4HECARDSAREACTUALLYMADE
UPOFSOLID STATEFLASHMODULES&-ODS SOMETIMESCALLEDDISKONMODULES$/-S %ACHOFTHE
MODULESCONTAINEIGHT'"3,#.!.$COMPONENTS3OEACHOFTHE&-ODSHAS'"OFSTORAGE OF
WHICH'"ISADDRESSABLE7ITH&-ODSONEACHOFTHECARDSYOUHAVEOFTHESEMODULESINEACH
STORAGESERVER4HEMODULESAREPRESENTEDTOTHE/3SEPARATELY%ACHMODULERESERVESANADDITIONAL


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

'OFITSADDRESSABLESPACEFORITSOWNPURPOSES YIELDINGAUSABLESPACEOF'PERMODULE4HIS
YIELDSATOTALOF'OFUSABLEFLASHSTORAGEPERSTORAGECELL4HATSOVERATERABYTE4" ONTHESMALLEST
QUARTERRACKCONFIGURATIONANDOVER4"ONAFULLRACK
4HE&CARDSALSOINCLUDEANENERGYSTORAGEMODULE%3- SOMETIMESALSOREFERREDTOASA3UPER
#APACITOR9OUCANTHINKOFITASABATTERY ALTHOUGHITACTUALLYUSESACAPACITOR WHEREASATRADITIONAL
BATTERYRELIESONCHEMICALREACTIONS!TANYRATE THEPURPOSEOFTHE%3-ISTOPROVIDEENOUGHPOWERTO
FLUSHANYDATAINITSVOLATILEMEMORYTOTHENONVOLATILEFLASHMEMORYINTHECASEOFASUDDENPOWERLOSS
4HEVOLATILEMEMORYCONSISTSOF-OF$2!-PER&-ODANDISUSEDTOBUFFERWRITESTOTHENONVOLATILE
FLASHMEMORY9OUSHOULDNOTETHATIFTHE%3-FAILS WRITESWILLBY PASSTHE$2!-ANDBESENTDIRECTLYTO
THEFLASHMEMORY!SARESULT WRITESPEEDSWILLBESIGNIFICANTLYDECREASEDINTHECASEOF%3-FAILURE4HIS
DOESNTPRESENTAMAJORISSUEWHENTHECARDSARECONFIGUREDAS%3&# SINCETHE/RACLESTORAGESOFTWARE
TREATSTHE%3&#ASAWRITE THROUGHCACHEANDTHEREFOREWRITESDIRECTLYTODISK BYPASSINGTHECACHE)TCAN
BEANISSUETHOUGHIFTHECARDSAREUSEDAS&LASH$ISKS3UNRECOMMENDSTHATTHE%3-MODULESBE
REPLACEDEVERYTWOYEARSASTHESTOREDENERGYDEGRADESOVERTIMELIKEABATTERY 4HE),/-SYSTEM
MANAGEMENTFIRMWAREMONITORS%3-USAGEANDISSUESWARNINGSASTHE%3-APPROACHESTHEENDOFITS
LIFESPAN3EETHE3UN&LASH!CCELERATOR&0#)E#ARD5SERS'UIDEFORFURTHERDETAILS
!CCORDINGTOTHE3UNDOCUMENTATION THESTORAGESERVERSALLOW0#)ECARDSTOBEREPLACEDWHILETHE
SYSTEMISRUNNING(OWEVER THE/RACLE%XADATA3TORAGE3OFTWARE5SERS'UIDERECOMMENDSPOWERING
DOWNTHESTORAGESERVERSBEFOREREPLACINGONEOFTHESECARDS&ORTUNATELY YOUCANACCOMPLISHTHIS
WITHOUTEXPERIENCINGANOUTAGE AS!3-REDUNDANCYALLOWSENTIRESTORAGECELLSTOBEOFFLINEWITHOUT
AFFECTINGTHEDATABASESTHEYARESUPPORTING.OTETHATREPLACINGONEOFTHE&CARDSSHOULDNOTREQUIRE
ANYRECONFIGURATION&IGURE SHOWSACONCEPTUALDIAGRAMOFONEOFTHE&LASH!CCELERATORCARDS


#(!04%2 %8!$!4!3-!24&,!3(#!#(%


Figure 5-1. Conceptual diagram of the Sun F20 PCIe Flash Card

Cache vs. Flash Disk


4HEFLASHMEMORYONTHESTORAGESERVERSCANBEUSEDINTWOWAYS)TCANBECONFIGUREDASALARGEDISK
CACHE%3&# ORITCANBECARVEDUPANDPRESENTEDASSOLID STATEDISKSWHICHCANBEUSEDBY!3-FOR
DATABASESTORAGE 4HESETWOMODESARENOTMUTUALLYEXCLUSIVE4HEFLASHMEMORYCANBEALLOCATEDTO
EITHERFORMATINWHATEVERPERCENTAGESAREDESIRED4HERECOMMENDEDCONFIGURATIONISTOUSEALLTHEFLASH
MEMORYASCACHE4HISCONFIGURATIONSIGNIFICANTLYSPEEDSUPRANDOMACCESSREADS(OWEVER ITPROVIDES
NODIRECTBENEFITTOWRITESPEEDS
)NMANYSYSTEMSTHEAPPROACHOFALLOCATINGALLFLASHMEMORYASCACHEWORKSVERYWELL(OWEVER FOR
SYSTEMSTHATAREVERYWRITE INTENSIVE ITMAYBEBENEFICIALTOUSESOMEOFTHEFLASHMEMORYASADISK
+EEPINMINDTHATDEPENDINGONTHE!3-REDUNDANCYLEVELUSED.ORMALOR(IGH CHOOSINGTHISOPTION
WILLCONSUMEORTIMESTHEAMOUNTOFFLASHSTORAGETHATTHEOBJECTSACTUALLYOCCUPY4HISFACTALONE


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

MAKESTHEOPTIONLESSPALATABLE!LSOKEEPINMINDTHATWRITESTODATAFILESAREDONEINTHEBACKGROUNDBY
THE$"72PROCESSES3OCHOOSINGTOUSEPARTOFTHEFLASHBASEDSTORAGEASADISKMAYNOTPROVIDEAS
MUCHBENEFITASYOUMIGHTHOPE&ORTUNATELYITSPRETTYEASYTOREALLOCATEFLASHSTORAGE SOTESTINGYOUR
SPECIFICSITUATIONSHOULDNOTPROVETOODIFFICULT(OWEVER SINCETHISCHAPTERFOCUSESONTHE%XADATA
3MART&LASH#ACHEFEATURE WEWILLONLYBRIEFLYCOVERUSINGTHE&SASFLASHDISKS

■.OTE!COMMONMISCONCEPTIONISTHATPUTTINGONLINEREDOLOGSONFLASHSTORAGEWILLSIGNIFICANTLYSPEEDUP
WRITESTOREDOLOGSANDTHUSINCREASETHETHROUGHPUTOFHIGH TRANSACTIONSYSTEMS7HILEITSTRUETHATSMALLRANDOM
WRITESAREFASTERON33$ BASEDSTORAGETHANONTRADITIONALDISKS WRITESTOREDOLOGSONHIGH TRANSACTIONSYSTEMS
GENERALLYDONOTFALLINTOTHATBUCKETANDACTUALLYDONOTBENEFITTHATMUCHFROMBEINGSTOREDON33$STORAGE)N
ADDITION 33$WRITEMECHANICSCAUSEALOTOFVARIABILITYININDIVIDUALWRITETIMES4HEREMAYBEINDIVIDUALWRITES
THATTAKEORDERSOFMAGNITUDELONGERTHANTHEAVERAGE4HISCANCAUSEPROBLEMSONVERYBUSYSYSTEMSASWELL3O
BEFOREYOUPUTYOURONLINEREDOLOGSONTOYOURVALUABLE%XADATA&LASHSTORAGE YOUSHOULDTESTTOMAKESURETHAT
THEBENEFITSOUTWEIGHTHECOSTS

5SING&LASH-EMORYAS#ACHE
!VERYSIMPLIFIEDDESCRIPTIONOFHOWADISKCACHEWORKSGOESSOMETHINGLIKETHIS7HENAREADREQUEST
COMESIN THE)/SUBSYSTEMCHECKSTHECACHETOSEEIFTHEREQUESTEDDATAEXISTSINCACHE)FTHEDATAISIN
THECACHE ITISRETURNEDTOTHEREQUESTINGPROCESS)FTHEREQUESTEDDATADOESNTRESIDEINTHECACHE ITIS
READFROMDISKANDRETURNEDTOTHEREQUESTINGPROCESS)NTHECASEOFUNCACHEDDATA THEDATAISLATER
COPIEDTOTHECACHEAFTERITISRETURNEDTOTHEREQUESTINGPROCESS 4HISISDONETOENSURETHATTHECACHE
DOESNTSLOWDOWNTHE)/FORTHEREQUESTINGPROCESS
7ITH%XADATA DISKCACHINGISNOTQUITEASSIMPLEASTHEGENERALCASEWEJUSTDESCRIBED)NANEFFORT
TOMAXIMIZETHEPOTENTIALTHROUGHPUT THERT[[baePROGRAMMAYACTUALLYFIREOFFASYNC)/REQUESTSTO
BOTHTHEDISKANDTHEFLASHCACHE'ENERALLYSPEAKING IFTHEREQUESTEDDATAISINTHECACHE THEREQUESTS
WILLBEFULFILLEDBYTHEFLASHCACHEBEFORETHEDISKREADSWILLBEABLETOCOMPLETE(OWEVER WHENTHE
SYSTEMISHEAVILYLOADED ITISPOSSIBLEFORSOMEREQUESTSTOBEFULFILLEDBYTHEFLASHCACHEWHILEOTHERSARE
FULFILLEDBYTHEDISKS4HISTWO PRONGEDATTACKEFFECTIVELYINCREASESTHEAMOUNTOFTHROUGHPUTTHATTHE
SYSTEMCANDELIVER

■+EVIN3AYSh4HEHARDWAREUPONWHICH%XADATA3TORAGE3ERVERISBASEDOFFERSFIVEHIGH BANDWIDTH0#)SLOTS
FORSTORAGEATTACHMENT7ITHOUTATTACKINGBOTH&LASHAND(ARD$ISKASSETSINPARALLEL EACHCELLWOULDBELIMITEDTO
ROUGHLY'"SSCANTHROUGHPUT7ITHRT[[baeSCANNINGBOTH&LASHAND(ARD$ISKCONCURRENTLY THESCAN
THROUGHPUTINCREASESTOROUGHLY'"S

&IGURE SHOWSTHE)/PATHOFREADSUSING/RACLES%3&#


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

Flash Cache Reads - I / O Path Architecture

Read Operation Read Operation


on cached data on uncached data

DB DB

1 1
Read Request

Read Request
3 3

cellsrv cellsrv

2 2 2 4

DB DB

Cache Cache
Step 2 is a Race Condition.
The fastest read wins.


Figure 5-2. Conceptual model of read operation I/O path

3INCE%3&#ISAWRITE THROUGHCACHE WRITESBYPASSTHECACHEANDGODIRECTLYTODISK(OWEVER AFTER


SENDINGANACKNOWLEDGEMENTBACKTOTHEDATABASESERVER /RACLESSTORAGESOFTWARETHENCOPIESTHEDATA
INTOTHECACHE ASSUMINGITISSUITABLEFORCACHING4HISISAKEYPOINT4HEMETADATATHATISSENTWITHTHE
WRITEREQUESTLETSTHESTORAGESOFTWAREKNOWIFTHEDATAISLIKELYTOBEUSEDAGAINANDIFSO THEDATAISALSO
WRITTENTOTHECACHE4HISSTEPISDONEAFTERSENDINGANACKNOWLEDGEMENTTOTHEDATABASETIERINORDERTO
ENSURETHATTHEWRITEOPERATIONCANCOMPLETEASQUICKLYASPOSSIBLE
&IGURE SHOWSTHE)/PATHOFWRITESUSING/RACLES%3&#


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

Flash Cache Writes - I / O Path Architecture

Write Operation

3 DB
Acknowledgement

cellsrv

2 4

DB

Cache

Figure 5-3. Conceptual model of write operation I/O path

!SYOUMIGHTGUESS 3MART3CANSGENERALLYIGNORETHE%3&#ANDREADDIRECTLYFROMDISK(OWEVER IF


THEOBJECTBEINGSCANNEDHASBEENDESIGNATEDFORPREFERENTIALCACHINGBYSETTINGTHESTORAGECLAUSE
ATTRIBUTE24;;N5;0B7N20274TO:44? THENEVEN3MART3CANSWILLATTEMPTTOREADFROMFLASHCACHE4HE
FOLLOWINGEXAMPLEDEMONSTRATESTHISBEHAVIOR
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb"$&

4[P_bTS))) 
BHB/4G31 -P[cTacPQ[TZb^bZTf"bc^aPVTRT[[NU[PbWNRPRWTZTT_*

CPQ[TP[cTaTS

4[P_bTS))) 
BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTf"fWTaTR^[ - *

0E6?:N2>;

 %$"" '$


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

4[P_bTS)))"#"$
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb"$& 

4[P_bTS))) 
BHB/4G31 -]^cWX]VX]cWTU[PbWRPRWTcWTUXabccX\TcahPVPX]
BHB/4G31 -
BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTf"fWTaTR^[ - *

0E6?:N2>;

 %$"" '$

4[P_bTS)))!&'!]^cXRTcWPccWTT[P_bTScX\TXbb^\TfWPcUPbcTa
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb!## 

4[P_bTS))) 
BHB/4G31 -P[cTacPQ[TZb^bZTf"bc^aPVTRT[[NU[PbWNRPRWTSTUPd[c*

CPQ[TP[cTaTS

4[P_bTS)))$
BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTf"fWTaTR^[ - *

0E6?:N2>;

 %$"" '$

4[P_bTS)))" $#
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb!## 

4[P_bTS)))
BHB/4G31 -
BHB/4G31 -P[cTacPQ[TZb^bZTf"bc^aPVTRT[[NU[PbWNRPRWTZTT_*

CPQ[TP[cTaTS

4[P_bTS))) 


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTf"fWTaTR^[ - *



0E6?:N2>;

 %$"" '$

4[P_bTS)))!&(
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb#$!!$

4[P_bTS))) 
)NTHEPRECEDINGEXAMPLEYOUCANSEETHATTHE3MART3CANISFASTERWHENTHE24;;N5;0B7N20274
STORAGECLAUSEATTRIBUTEISSETTO:44?ANDMOREIMPORTANTLY THATALARGENUMBEROFhCELLFLASHCACHEREAD
HITSvAREGENERATEDINTHATCASE7HENTHE24;;N5;0B7N20274ATTRIBUTEISSETTO3450D;C THEQUERYIS
SLOWERANDNOhCELLFLASHCACHEREADHITSvAREGENERATED

(OW%3&#IS#REATED
3TORAGECONFIGURATIONISCOVEREDINDETAILIN#HAPTER BUTTHEBASICCOMMANDSFORCREATINGAND
MANAGINGFLASHCACHEWILLBECOVEREDBRIEFLYINTHISSECTIONASWELL4HECACHEISCREATEDANDMANAGED
USINGTHERT[[R[XUTILITYONEACHSTORAGESERVERTHERT[[R[XCOMMANDSYNTAXISCOVEREDINDETAILIN
!PPENDIX! !LTERNATIVELY THESR[XUTILITY WHICHREPLICATESCOMMANDSACROSSMULTIPLESTORAGECELLS CAN
BEUSED4HECOMMANDTOCREATETHECACHEIS2A40C45;0B720274(ERESANEXAMPLE
2T[[2;8-RaTPcTU[PbWRPRWTP[[bXiT,"V

5[PbWRPRWTRT[["N5;0B720274bdRRTbbUd[[hRaTPcTS
4HISFORMOFTHECOMMANDTELLSTHESTORAGESOFTWARETOSPREADTHECACHEACROSSALLTHE&-ODSONALL
THEFLASHCARDS)NTHISCASE THESIZEPARAMETERWASUSEDTOSPECIFYTHATTHEENTIRECACHESHOULDOCCUPY
ONLY' LEAVINGROUGHLY'AVAILABLEFORUSEASAFLASHDISK4OUSEALLAVAILABLESPACEFORFLASHCACHE
SIMPLYLEAVEOFFTHESIZEPARAMETER
2T[[2;8-RaTPcTU[PbWRPRWTP[[

5[PbWRPRWTRT[["N5;0B720274bdRRTbbUd[[hRaTPcTS
4HISCOMMANDUSESALLAVAILABLESTORAGEONALLAVAILABLEFLASHCARDS.OTETHATTHEFLASHCACHEIS
AUTOMATICALLYASSIGNEDANAMETHATINCLUDESTHENAMEOFTHESTORAGECELL4OSEETHESIZEOFTHE
FLASHCACHEYOUCANISSUETHE;8BC5;0B72027434C08;COMMAND
2T[[2;8-[XbcU[PbWRPRWTSTcPX[
]P\T)RT[["N5;0B720274
RT[[3XbZ)53N $NRT[["53N!NRT[["53N #NRT[["53N NRT[["53N NRT[["
53N "NRT[["53N !NRT[["53N'NRT[["53N&NRT[["53N NRT[["53N(NRT[["53N$NRT[["
53N%NRT[["53N#NRT[["53N"NRT[["53NNRT[["
RaTPcX^]CX\T)!  &C ()#$)"!%)
STVaPSTS2T[[SXbZb)


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

TUUTRcXeT2PRWTBXiT)"6
XS)'P#RR("& R#R(U'$QUUUQT$'(&%R 
bXiT)"6
bcPcdb)]^a\P[
.OTICETHATTHEFLASHCACHEISSPREADACROSSCELLDISKS4HEREISONECELLDISKFOREACH&-ODON
EACHFLASHCARD4OGETMOREINFORMATIONABOUTTHECELLDISKSTHATMAKEUPTHEFLASHCACHE YOUCANUSE
THE;8BC24;;38B:COMMAND SHOWNHERE
2T[[2;8-[XbcRT[[SXbZPccaXQdcTb]P\TSXbZCh_TbXiTfWTaT]P\T[XZT53
53NNRT[["5[PbW3XbZ!!'&$6
53N NRT[["5[PbW3XbZ!!'&$6
53N!NRT[["5[PbW3XbZ!!'&$6
53N"NRT[["5[PbW3XbZ!!'&$6
53N#NRT[["5[PbW3XbZ!!'&$6
53N$NRT[["5[PbW3XbZ!!'&$6
53N%NRT[["5[PbW3XbZ!!'&$6
53N&NRT[["5[PbW3XbZ!!'&$6
53N'NRT[["5[PbW3XbZ!!'&$6
53N(NRT[["5[PbW3XbZ!!'&$6
53N NRT[["5[PbW3XbZ!!'&$6
53N NRT[["5[PbW3XbZ!!'&$6
53N !NRT[["5[PbW3XbZ!!'&$6
53N "NRT[["5[PbW3XbZ!!'&$6
53N #NRT[["5[PbW3XbZ!!'&$6
53N $NRT[["5[PbW3XbZ!!'&$6
3INCETHEFLASHCACHESITSONTOPOFCELLDISKS THECELLDISKSMUSTBECREATEDBEFORETHEFLASHCACHE
4HISCANBEDONEWITHTHE2A40C424;;38B:COMMAND
2T[[2;8-RaTPcTRT[[SXbZP[[U[PbWSXbZ
2T[[3XbZ53NNRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N!NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N"NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N#NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N$NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N%NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N&NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N'NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N(NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N !NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N "NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N #NRT[["bdRRTbbUd[[hRaTPcTS
2T[[3XbZ53N $NRT[["bdRRTbbUd[[hRaTPcTS
9OUCANALSOCREATEAFLASHCACHEONALIMITEDSETOF&-ODSBYSPECIFYINGASPECIFICLISTOFCELLDISKS
)NMOSTCASESTHISISNOTDONE BUTITISPOSSIBLE(ERESANEXAMPLE
2T[[2;8-RaTPcTU[PbWRPRWTRT[[SXbZ,53NNRT[["53N NRT[["bXiT,#6
5[PbWRPRWTRT[["N5;0B720274bdRRTbbUd[[hRaTPcTS



#(!04%2 %8!$!4!3-!24&,!3(#!#(%

2T[[2;8-[XbcU[PbWRPRWTSTcPX[
]P\T)RT[["N5;0B720274
RT[[3XbZ)53N NRT[["53NNRT[["
RaTPcX^]CX\T)!  (C $)!()!'%)
STVaPSTS2T[[SXbZb)
TUUTRcXeT2PRWTBXiT)#6
XS)PS$%PP(SST##& "'$U! (& "#$!"TQQ
bXiT)#6
bcPcdb)]^a\P[
/NCEAGAIN USINGRT[[R[XTOMANAGESTORAGEINCLUDINGFLASHCACHEISCOVEREDINMOREDETAILIN
#HAPTER BUTTHISSECTIONSHOULDGIVEYOUABASICUNDERSTANDINGOFHOWTHEFLASHCACHEISCREATED

#ONTROLLING%3&#5SAGE
'ENERALLYSPEAKING OBJECTSWILLBECACHEDINTHE%3&#BASEDONTHESTORAGESOFTWARESAUTOMATIC
CACHINGPOLICY(OWEVER YOUCANOVERRIDETHEAUTOMATICPOLICYFORINDIVIDUALDATABASEOBJECTSBYUSING
THE24;;N5;0B7N20274STORAGECLAUSEATTRIBUTE4HEATTRIBUTEHASTHREEVALIDVALUES
=>=4.EVERCACHETHISOBJECT
3450D;C4HE!UTOMATICCACHINGMECHANISMISINEFFECT4HISISTHEDEFAULT
VALUE
:44?4HEOBJECTSHOULDBEGIVENPREFERENTIALSTATUS.OTETHATTHISDESIGNATION
ALSOCHANGESTHEDEFAULTBEHAVIOROF3MART3CANS ALLOWINGTHEMTOREADFROM
BOTHTHECACHEANDDISK
9OUCANSPECIFYTHESTORAGECLAUSEWHENANOBJECTISCREATED3OMEOPTIONSOFTHESTORAGECLAUSECAN
BEMODIFIEDUSINGTHE0;C4ACOMMANDASWELL(ERESANEXAMPLEOFCHANGINGTHE24;;N5;0B7N20274
STORAGECLAUSEUSINGTHE0;C4ACOMMAND
P[cTacPQ[TZb^bZTfbc^aPVTRT[[NU[PbWNRPRWTZTT_*
9OUCANALSOSEEWHETHEROBJECTSHAVEBEENDESIGNATEDFORMOREAGGRESSIVECACHINGBYLOOKINGAT
THERT[[NU[PbWNRPRWTCOLUMNOFSQPNcPQ[TbORSQPNX]STgTb
BHB/4G31 -/TbURNZTT_NcPQ[Tb
BHB/4G31 -bT[TRc^f]TacPQ[TN]P\TbcPcdb[PbcNP]P[hiTS
!]d\Na^fbQ[^RZbSTVaTTRT[[NU[PbWNRPRWT
"Ua^\SQPNcPQ[Tb
#fWTaTRT[[NU[PbWNRPRWT[XZT]e[RT[[NU[PbWNRPRWT:44?
$
4]cTaeP[dTU^aRT[[NU[PbWNRPRWT)

>F=4AC01;4N=0<4BC0CDB;0BCN0=0;=D<NA>FB1;>2:B346A4424;;N5;0B7N20274

:B>B:4FE0;83 'B4? "!# %!!(# :44?
:B>B:4F"E0;83 #>2C "'##' (#(&!& :44?


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

Monitoring
9OUROPTIONSFORMONITORING%3&#ARELIMITEDONTHEDATABASESERVERS4HEREISONLYONESTATISTICRELATED
TO%3&#INebhbbcPcANDRELATEDVIEWSRT[[U[PbWRPRWTaTPSWXcb 4HESTORAGESERVERS HOWEVER
PROVIDEAMUCHLARGERARRAYOFDIAGNOSTICINFORMATIONVIATHERT[[R[XUTILITY5NFORTUNATELY SINCETHESE
METRICSAREPROVIDEDBYRT[[R[XONINDIVIDUALSTORAGECELLS THEYARELIMITEDTOTHATSINGLESTORAGESERVER
4HEREISNOCOMPREHENSIVESETOFDIAGNOSTICINFORMATIONTHATCOVERSTHEENTIRESTORAGEGRIDATTHISPOINT

!TTHE3TORAGE,AYER
4HEREAREANUMBEROFSTATISTICSTHATARECAPTUREDFOR%3&#USAGEATTHESTORAGECELLLAYER4HERT[[R[X
UTILITYALLOWSUSTOVIEWTHOSEMETRICS4HE;8BC<4CA823458=8C8>=COMMANDPROVIDESADESCRIPTIONOF
THEVARIOUSSTATISTICSTHATARECOLLECTED&OREXAMPLE
2T[[2;8-;8BC<4CA823458=8C8>=PccaXQdcTb]P\TSTbRaX_cX^]F74A4^QYTRcCh_T,5;0B720274
4ABLE SHOWSTHEOUTPUTOFTHECOMMAND4HETABLEPROVIDESABRIEFDESCRIPTIONFOREACHSTATISTIC
TRACKEDATTHESTORAGELAYERTHATYOUCANREPORTON

Table 5-1. Flash Cache Metric Definitions

Metric Description
52N1H:44?N>E4AFA .UMBEROFMEGABYTESPUSHEDOUTOFTHEFLASHCACHEBECAUSEOFSPACELIMITFOR
gKEEPgOBJECTS

52N1H:44?N>E4AFANB42 .UMBEROFMEGABYTESPERSECONDPUSHEDOUTOFTHEFLASHCACHEBECAUSEOF
SPACELIMITFORgKEEPgOBJECTS

52N1H:44?NDB43 .UMBEROFMEGABYTESUSEDFORgKEEPgOBJECTSONFLASHCACHE

52N1HNDB43 .UMBEROFMEGABYTESUSEDONFLASHCACHE

52N8>N1H:44?NA .UMBEROFMEGABYTESREADFROMFLASHCACHEFORgKEEPgOBJECTS

52N8>N1H:44?NANB42 .UMBEROFMEGABYTESREADPERSECONDFROMFLASHCACHEFORgKEEPgOBJECTS

52N8>N1H:44?NF .UMBEROFMEGABYTESWRITTENTOFLASHCACHEFORgKEEPgOBJECTS

52N8>N1H:44?NFNB42 .UMBEROFMEGABYTESPERSECONDWRITTENTOFLASHCACHEFORgKEEPgOBJECTS

52N8>N1HNA .UMBEROFMEGABYTESREADFROMFLASHCACHE

52N8>N1HNAN<8BB .UMBEROFMEGABYTESREADFROMDISKSBECAUSENOTALLREQUESTEDDATAWASIN
FLASHCACHE

52N8>N1HNAN<8BBNB42 .UMBEROFMEGABYTESREADFROMDISKSPERSECONDBECAUSENOTALLREQUESTED
DATAWASINFLASHCACHE


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

Metric Description
52N8>N1HNANB42 .UMBEROFMEGABYTESREADPERSECONDFROMFLASHCACHE

52N8>N1HNANB:8? .UMBEROFMEGABYTESREADFROMDISKSFOR)/REQUESTSWITHAHINTTOBYPASS
FLASHCACHE

52N8>N1HNANB:8?NB42 .UMBEROFMEGABYTESREADFROMDISKSPERSECONDFOR)/REQUESTSWITHAHINT
TOBYPASSFLASHCACHE

52N8>N1HNF .UMBEROFMEGABYTESWRITTENTOFLASHCACHE

52N8>N1HNFNB42 .UMBEROFMEGABYTESPERSECONDWRITTENTOFLASHCACHE

52N8>N4AAB .UMBEROF)/ERRORSONFLASHCACHE

52N8>NA@:44?NA .UMBEROFREAD)/REQUESTSFORgKEEPgOBJECTSSATISFIEDFROMFLASHCACHE

52N8>NA@:44?NAN<8BB .UMBEROFREAD)/REQUESTSFORgKEEPgOBJECTSTHATDIDNOTFINDALLDATAINFLASH
CACHE

52N8>NA@:44?NAN<8BBNB42.UMBEROFREAD)/REQUESTSPERSECONDFORgKEEPgOBJECTSTHATDIDNOTFINDALL
DATAINFLASHCACHE

52N8>NA@:44?NANB42 .UMBEROFREAD)/REQUESTSFORgKEEPgOBJECTSPERSECONDSATISFIEDFROMFLASH
CACHE

52N8>NA@:44?NANB:8? .UMBEROFREAD)/REQUESTSFORgKEEPgOBJECTSWITHAHINTTOBYPASSFLASH
CACHE

52N8>NA@:44?NANB:8?NB42.UMBEROFREAD)/REQUESTSPERSECONDFORgKEEPgOBJECTSWITHAHINTTO
BYPASSFLASHCACHE

52N8>NA@:44?NF .UMBEROF)/REQUESTSFORgKEEPgOBJECTSTHATRESULTEDINFLASHCACHEBEING
POPULATEDWITHDATA

52N8>NA@:44?NFNB42 .UMBEROF)/REQUESTSPERSECONDFORgKEEPgOBJECTSTHATRESULTEDINFLASH
CACHEBEINGPOPULATEDWITHDATA

52N8>NA@NA .UMBEROFREAD)/REQUESTSSATISFIEDFROMFLASHCACHE

52N8>NA@NAN<8BB .UMBEROFREAD)/REQUESTSTHATDIDNOTFINDALLDATAINFLASHCACHE

52N8>NA@NAN<8BBNB42 .UMBEROFREAD)/REQUESTSPERSECONDTHATDIDNOTFINDALLDATAINFLASH
CACHE

52N8>NA@NANB42 .UMBEROFREAD)/REQUESTSSATISFIEDPERSECONDFROMFLASHCACHE


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

Metric Description
52N8>NA@NANB:8? .UMBEROFREAD)/REQUESTSWITHAHINTTOBYPASSFLASHCACHE

52N8>NA@NANB:8?NB42 .UMBEROFREAD)/REQUESTSPERSECONDWITHAHINTTOBYPASSFLASHCACHE

52N8>NA@NF .UMBEROF)/REQUESTSTHATRESULTEDINFLASHCACHEBEINGPOPULATEDWITHDATA

52N8>NA@NFNB42 .UMBEROF)/REQUESTSPERSECONDTHATRESULTEDINFLASHCACHEBEING
POPULATEDWITHDATA

4HEMETRICSIN4ABLE ARECUMULATIVESINCECT[[baeWASSTARTED4HE;8BC<4CA822DAA4=C
COMMANDSHOWSTHECURRENTVALUESOFTHEMETRICSFORASINGLESTORAGECELL&OLLOWINGAREEXAMPLESOFA
COUPLEOFRT[[R[XCOMMANDSSHOWINGFIRSTALLFLASHCACHE RELATEDMETRICSANDTHENONLYTHEFLASHCACHE
METRICSTHATARERELATEDTOOBJECTSDESIGNATEDFORAGGRESSIVECACHINGTHATIS OBJECTSWHOSESTORAGE
CLAUSESPECIFIES24;;N5;0B7N20274,:44? 
2T[[2;8-;8BC<4CA822DAA4=CF74A4^QYTRcCh_T,5;0B720274
52N1H:44?N>E4AFA5;0B720274<1
52N1H:44?N>E4AFANB425;0B720274<1bTR
52N1H:44?NDB435;0B720274$&!<1
52N1HNDB435;0B720274$#"#<1
52N8>N1H:44?NA5;0B720274'!''<1
52N8>N1H:44?NANB425;0B720274<1bTR
52N8>N1H:44?NF5;0B720274  "#<1
52N8>N1H:44?NFNB425;0B720274<1bTR
52N8>N1HNA5;0B720274"$ !('<1
52N8>N1HNAN<8BB5;0B720274(##(#!<1
52N8>N1HNAN<8BBNB425;0B720274<1bTR
52N8>N1HNANB425;0B720274<1bTR
52N8>N1HNANB:8?5;0B720274 !!#&' <1
52N8>N1HNANB:8?NB425;0B720274"<1bTR
52N8>N1HNF5;0B720274"$#&#"<1
52N8>N1HNFNB425;0B720274#<1bTR
52N8>N4AAB5;0B720274
52N8>NA@:44?NA5;0B720274( !" 8>aT`dTbcb
52N8>NA@:44?NAN<8BB5;0B720274  $$8>aT`dTbcb
52N8>NA@:44?NAN<8BBNB425;0B7202748>bTR
52N8>NA@:44?NANB425;0B7202748>bTR
52N8>NA@:44?NANB:8?5;0B720274 $"!8>aT`dTbcb
52N8>NA@:44?NANB:8?NB425;0B7202748>bTR
52N8>NA@:44?NF5;0B720274 &&(#8>aT`dTbcb
52N8>NA@:44?NFNB425;0B7202748>bTR
52N8>NA@NA5;0B720274#!$#%((8>aT`dTbcb
52N8>NA@NAN<8BB5;0B720274!'($((&8>aT`dTbcb
52N8>NA@NAN<8BBNB425;0B7202748>bTR
52N8>NA@NANB425;0B7202748>bTR
52N8>NA@NANB:8?5;0B720274'(& !!8>aT`dTbcb
52N8>NA@NANB:8?NB425;0B720274!$#8>bTR


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

52N8>NA@NF5;0B720274"#!'% $'8>aT`dTbcb
52N8>NA@NFNB425;0B720274!!#8>bTR

2T[[2;8-;8BC<4CA822DAA4=CF74A4^QYTRcCh_T,5;0B7202740=3]P\T;8:4:44?
52N1H:44?N>E4AFA5;0B720274<1
52N1H:44?N>E4AFANB425;0B720274<1bTR
52N1H:44?NDB435;0B720274$&!<1
52N8>N1H:44?NA5;0B720274'!''<1
52N8>N1H:44?NANB425;0B720274<1bTR
52N8>N1H:44?NF5;0B720274  "#<1
52N8>N1H:44?NFNB425;0B720274<1bTR
52N8>NA@:44?NA5;0B720274( !" 8>aT`dTbcb
52N8>NA@:44?NAN<8BB5;0B720274  $$8>aT`dTbcb
52N8>NA@:44?NAN<8BBNB425;0B7202748>bTR
52N8>NA@:44?NANB425;0B7202748>bTR
52N8>NA@:44?NANB:8?5;0B720274 $"!8>aT`dTbcb
52N8>NA@:44?NANB:8?NB425;0B7202748>bTR
52N8>NA@:44?NF5;0B720274 &&(#8>aT`dTbcb
52N8>NA@:44?NFNB425;0B7202748>bTR
)NADDITIONTOTHEPERFORMANCEMETRICS YOUCANALSOSEEWHATOBJECTSAREINTHECACHE4HE;8BC
5;0B7202742DAA4=CCOMMANDDISPLAYSWHATSINTHECACHE4HISCOMMANDSHOWSASINGLEENTRYFOREACH
CACHEDOBJECT THEAMOUNTOFSPACEITISOCCUPYING ANDVARIOUSOTHERSTATISTICS(ERESANEXAMPLEOF
LOOKINGATTHEFLASHCACHECONTENT
2T[[2;8-STbRaXQTU[PbWRPRWTR^]cT]c
RPRWTS:TT_BXiT
RPRWTSBXiT
SQ83
SQD]X`dT=P\T
WXc2^d]c
W^dabC^4g_XaPcX^]
\Xbb2^d]c
^QYTRc=d\QTa
cPQ[TB_PRT=d\QTa
2T[[2;8-[XbcU[PbWRPRWTR^]cT]cfWTaTSQD]X`dT=P\T[XZT4G31
-P]SWXcR^d]c- 
-PccaXQdcTbSQD]X`dT=P\T^QYTRc=d\QTaRPRWTS:TT_BXiT
-RPRWTSBXiTWXc2^d]c\Xbb2^d]c
4G31!# (#"#$'&!'
4G31#!#!#'"!"&%%
4G31"'"! #%"# &!&
4G31#& #& #!#!&#'$
4G31#&$$'' '$%$" !"
4G31$"$"'# %%%(#$$
4G31%"&"!$"($! !!"(
4G31%%'#(#"'&%"$!#"'&%"$!#!""!!


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

4G31& #(& !!%'!$$ $


4G31& &&$%$ &'(% !%"!'%'
5NFORTUNATELY THEOBJECTNAMEISNOTINCLUDEDINTHELISTOFATTRIBUTES4HISMEANSYOUMUSTGOBACK
TOTHEDATABASETODETERMINEWHICHOBJECTISWHICHBYQUERYINGSQPN^QYTRcbFOREXAMPLE .OTETHATTHE
>QYTRc=d\QTaATTRIBUTEINRT[[R[XISEQUIVALENTTOTHESPcP?^QYTRcNXSINTHEDATABASEVIEWSSUCHAS
SQPN^QYTRcb
BHB/4G31 -bT[TRc^f]Ta^QYTRcN]P\T^QYTRcNch_T
!Ua^\SQPN^QYTRcbfWTaTSPcPN^QYTRcNXS,%%'#(*

>F=4A>1942CN=0<4>1942CNCH?4

:B>B:4FC01;4

!TTHE$ATABASE,AYER
4HEDATABASEREALLYDOESNTPROVIDEMUCHVISIBILITYINTOHOW%3&#ISUSED4HEREISONLYONESTATISTIC
AVAILABLEINebhbbcPcANDRELATEDVIEWSREGARDINGITSUSE
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb! ''
!SWITHALLSUCHSTATISTICS hCELLFLASHCACHEREADHITSvISCUMULATIVE)NebhbbcPcTHESTATISTICREFLECTS
THESYSTEMTOTALSINCETHEINSTANCEWASSTARTED)Ne\hbcPcTHESTATISTICREFLECTSTHESESSIONTOTALSINCE
THESESSIONWASSTARTED3OTHEONLYREALWAYTOMAKEUSEOFTHEINFORMATIONISTOLOOKATTHEVALUEBEFORE
ANDAFTERTHEEXECUTIONOFA31,STATEMENTOFINTEREST
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb&%(

BHB/4G31 -bTcTRW^^]
BHB/4G31 -/PeVbZTf
BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTfPfWTaTR^[ -
!

0E6?:N2>;

 %("&$'

BHB/4G31 -bTcTRW^^UU
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbW



#(!04%2 %8!$!4!3-!24&,!3(#!#(%

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb!$$

Performance
3OHOWMUCHBENEFITDOESTHE%XADATA3MART&LASH#ACHEACTUALLYPROVIDE0ROBABLYONEOFTHEMOST
EFFECTIVEMEASURESOFTHEEFFECTIVENESSOFTHECACHEISTHESINGLEBLOCKREADTIMES(ERESASNIPPETFROM
AN!72REPORTFORAFAIRLYREPRESENTATIVEMIXEDWORKLOADPRODUCTIONENVIRONMENT
4eT]cFPXcb+ \b+!\b+#\b+'\b+ %\b+"!\b+, b- b

RT[[bX]V[TQ[^RZ_WhbXRP[!(#:(%& $!##"#
4HISOUTPUTWASTAKENFROMAONE HOURSNAPSHOTANDASYOUCANSEE THEREWEREALMOST 
SINGLEBLOCKREADS OFWHICHABOUTTOOKLESSTHANMS4HISISFAIRLYREPRESENTATIVEOFTHEPRODUCTION
SYSTEMSWEVEOBSERVEDANDCOMPARESFAVORABLYWITH33$ BASEDSYSTEMS3YSTEMSTHATRUNENTIRELYON
33$STORAGEGENERALLYHAVEAVERAGESINGLEBLOCKACCESSTIMESINTHEMSRANGE WHICHISMARGINALLY
FASTERTHANWHATWEGENERALLYSEEON%XADATA(OWEVER THE33$SYSTEMSAREUSUALLYNOTCAPABLEOF
SCALINGTHE)/THEWAY%XADATACAN%XADATAENJOYSTHISADVANTAGEPRIMARILYBECAUSEITISDESIGNEDTOBE
ABALANCEDCONFIGURATION MEANINGTHATTHECOMPONENTSINTHE)/PATHAREMORECLOSELYMATCHEDTHAN
INMOSTCONVENTIONALSTORAGEARRAYS.OTHINGISWITHOUTLIMITATIONS OFCOURSE BUTMOSTSTORAGESYSTEMS
AREBOTTLENECKEDATVARIOUSPOINTSINTHE)/PATHATTHEDISKCONTROLLERS FOREXAMPLE 
!NEXAMPLEMAYBEUSEFULINILLUSTRATINGTHISPOINT7ERECENTLYDIDABENCHMARKINGEXERCISEPITTING
AN%XADATA6(IGH#APACITY3!4!QUARTERRACKSYSTEMAGAINSTA3UN-WITHCORESUSING33$FOR
ALLDATABASESTORAGE4HETESTWASABATCHPROGRAMTHATSPENTMOSTOFITSTIMEDOINGWHATWEWOULD
TYPICALLYCALL/,40 TYPEPROCESSING4HEREWASALARGETABLEWITHABILLIONPLUSROWS BUTITWASACCESSED
VIA" 4REEINDEXESAROWATATIME/NTHE- THEPROCESSTOOKABOUTHOURSANDONTHE%XADATAIT
TOOKALITTLELESSTHANANHOUR7EHAVEHADSIMILAREXPERIENCESWITHOTHER/,40 TYPEWORKLOADSASWELL
7EGENERALLYDONTSEETHEENORMOUSPERFORMANCEBENEFITSOVEROTHERSYSTEMSTHATWESEEONDATA
WAREHOUSEORIENTEDWORKLOADS BUTWEHAVESEENTHEPLATFORMTURNINIMPROVEDPERFORMANCENUMBERS
ONEVERYSYSTEMWEVECOMPAREDTODATE
3OHOWELSECOULDWEMEASURETHEEFFECTIVENESSOF%3&#)TSTEMPTINGTOTRYTOCALCULATEAHITRATIO
FORTHEFLASHCACHE.ODOUBTITWOULDBEINTERESTINGTOKNOWWHATPERCENTAGEOFREQUESTED)/SARE
SATISFIEDBYTHE%3&#"UTTHISCALCULATIONISNOTSTRAIGHTFORWARD3INCE%3&#CACHESMORETHANJUSTTABLE
ANDINDEXBLOCKS ITSDIFFICULTTOGETAREASONABLEESTIMATE9OUCOULDARGUETHATOTHERACCESSES%3&#
BUFFERSCONTROLFILESACCESSASWELL ARENOTSIGNIFICANTENOUGHTOMAKEANYDIFFERENCE ANDTHATMAYBE
TRUE"UTTHEFACTOFTHEMATTERISTHEREISNOEASYWAYTODOANYTHINGOTHERTHANMAKEASOMEWHAT
EDUCATEDGUESS KNOWINGFULLWELLTHATITWONTBECOMPLETELYACCURATE.EVERTHELESS HEREISASCRIPT
TbURNWXcNaPcX^b`[ THATMAKESANATTEMPT4HESCRIPTADDSTHESINGLEBLOCKANDMULTIBLOCKPHYSICAL
READSANDCOMPARESTHOSEWITHTHECELLFLASHCACHEHITS)NMANYSYSTEMSTHISWILLBEREASONABLYCLOSE
9OUSHOULDBEAWARETHOUGHTHAT3MART3CANSCANALSOACCESSTHE%3&#FOROBJECTSTHATHAVEBEEN
DESIGNATEDFORAGGRESSIVECACHINGVIATHE24;;N5;0B7N20274STORAGEPARAMETER
BHB/4G31 -/TbURNWXcNaPcX^
BHB/4G31 -R^[d\]R WTPSX]V4eT]ck=P\TU^a\PcP"cad]R
BHB/4G31 -R^[d\]R!WTPSX]VC^cP[kFPXcbU^a\Pc((((((((
BHB/4G31 -R^[d\]R"WTPSX]VBTR^]SbkFPXcX]VU^a\Pc(((((((
BHB/4G31 -R^[d\]R$WTPSX]V0eVkFPXck\bU^a\Pc(((((
BHB/4G31 -R^[d\]R%WTPSX]V5[PbW2PRWT7XcbU^a((((((((((((
BHB/4G31 -R^[WXcNaPcX^WTPSX]V7XcAPcX^U^a((((((


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

BHB/4G31 -
BHB/4G31 -bT[TRc
!RT[[bX]V[T\d[cXQ[^RZaTPSbR 
"R!R"R$R%
#R%STR^ST]e[R! R!WXcNaPcX^
$Ua^\
%bT[TRc
&bd\c^cP[NfPXcbR!
'PeVeP[dTR%
(bd\cX\TNfPXcTS R"
 PeVPeTaPVTNfPXc  R$
 Ua^\
 !bhbeNbhbcT\NTeT]cebhbbcPcbb
 "fWTaT
 #TeT]cX]
 $RT[[bX]V[TQ[^RZ_WhbXRP[aTPS
 %RT[[\d[cXQ[^RZ_WhbXRP[aTPS
 &P]S
 ']P\T[XZTRT[[U[PbWRPRWTaTPSWXcb
 (P]S
!TeT]c]^c[XZT8S[T
! ^aSTaQh
!!R"
!"*

0eV
4eT]cC^cP[BTR^]SbFPXc7Xc
=P\TFPXcbFPXcX]V\b5[PbW2PRWT7XcbAPcX^

RT[[bX]V[T\d[cXQ[^RZaTPSb %%#!"&#"$!#&($ !"!$
!SYOUCANSEE THESCRIPTVASTLYOVERESTIMATESTHEHITRATIOONTHISPARTICULARSYSTEM COMINGUPWITH
AHITRATIOOFOVER4HISHAPPENSBECAUSETHISSYSTEMHASSEVERALOBJECTSTHATAREDESIGNATEDFOR
AGGRESSIVECACHING RESULTINGINMANYCACHEHITSFOR3MART3CANEVENTSWHICHARENOTINCLUDEDINTHE
SINGLEBLOCKANDMULTI BLOCKREADSTATISTICS&ORSYSTEMSTHATDONTUSETHE:44?ATTRIBUTE THENUMBERS
SHOULDBECLOSERTOREALITY(OWEVER CALCULATEDHITRATIOSAREPROBABLYNOTTHEBESTAPPROACH)TIS
GENERALLYMOREENLIGHTENINGTOLOOKATTHEACTUALSINGLEBLOCKACCESSTIMESTHANTOTRYTOCALCULATEAHIT
RATIO

Summary
%XADATA3MART&LASH#ACHEPROVIDESYETANOTHERWAYTOPAREDOWNTHE)/COSTASSOCIATEDWITH/RACLE
DATABASES-OSTOFTHEOPTIMIZATIONSTHATTHE%XADATAPLATFORMPROVIDESREQUIRETHEUSEOF3MART3CANS
FULLTABLEORINDEXSCANS %3&#DOESNOTDEPENDON3MART3CANSANDINFACTISMOSTUSEFULFORSPEEDING
UPACCESSONRANDOMREADSOFSINGLEBLOCKS4HESEOPERATIONSAREGENERALLYASSOCIATEDWITH/,40
WORKLOADS ANDSO%3&#ISTHEKEYCOMPONENTOF%XADATAFOR/,40ORMIXEDWORKLOADS4HEFACTTHAT
%3&#DOESNOTPROVIDEAWRITE BACKCACHE THOUGH SEVERELYLIMITSITSEFFECTIVENESSWITHSYSTEMSTHATARE
BOTTLENECKEDONWRITES.EVERTHELESS THELARGECACHEANDTHEINTELLIGENTCACHINGALGORITHMSUSEDBYTHE
/RACLESTORAGESOFTWAREALLOW%3&#TOPROVIDEREADPERFORMANCESIMILARTOSOLID STATEBASEDDISK


#(!04%2 %8!$!4!3-!24&,!3(#!#(%

SYSTEMS/FFLOADINGLARGEPORTIONSOFRANDOMREADACTIVITYFROMTHEDISKSALSOPROVIDESANINDIRECT
BENEFITTOPROCESSESATTEMPTINGTOWRITETOTHOSESAMEDISKS
7HILE%3&#ISGENERALLYTHOUGHTOFASANOPTIMIZATIONAIMEDATREDUCINGLATENCYFORSMALLREADS IT
CANALSOBEUSEDQUITEEFFECTIVELYFORLARGE$7 TYPEQUERIES)NFACT THELARGETHROUGHPUTNUMBERSTHAT
/RACLEQUOTESDEPENDONDISKANDFLASHCACHEBEINGSCANNEDCONCURRENTLY4HEFLASHCACHEACTUALLY
SHOULDERSTHELIONSSHAREOFTHEBURDENINTHISCASE9OUCANENABLETHISABILITYONSPECIFICTABLESBY
SETTINGTHE24;;N5;0B7N20274ATTRIBUTEONTHETABLETO:44?4HISABILITYSHOULDNOTBEOVERLOOKEDFORKEY
TABLES ASTHEPERFORMANCEDIFFERENCECANBEDRAMATIC


CHAPTER 6



Exadata Parallel Operations

%XADATADOESNTHAVEASPECIALWAYOFEXECUTINGPARALLELOPERATIONSTHATISNOTAVAILABLEONOTHER
PLATFORMSRUNNINGG2(OWEVER PARALLELPROCESSINGISAKEYCOMPONENTOF%XADATABECAUSEEFFICIENT
HANDLINGOF$ATA7AREHOUSEWORKLOADSWASAPRIMARYDESIGNGOALFOR%XADATA)NADDITION BECAUSE
/FFLOADING3MART3CANDEPENDSONDIRECTPATHREADS WHICHAREUSEDBYPARALLELQUERYSLAVES PARALLEL
OPERATIONSTAKEONAWHOLENEWIMPORTANCE4RADITIONALLY THEUSEOFPARALLELQUERYHASREQUIREDCAREFUL
CONTROLOFCONCURRENCYINORDERTOMAXIMIZETHEUSEOFAVAILABLERESOURCESWITHOUTOVERWHELMINGTHE
SYSTEM/RACLESPREVIOUSATTEMPTSATTHROTTLINGPARALLELOPERATIONSTOALLOWTHEMTOBEUSEDINMULTIUSER
ENVIRONMENTSHAVENOTBEENENTIRELYSUCCESSFULG2PROVIDESSOMENEWCAPABILITIESFORCONTROLLING
PARALLELOPERATIONS)NPARTICULAR AQUEUINGMECHANISMHASBEENINTRODUCEDTHATALLOWSTHENUMBEROF
CONCURRENTPARALLELPROCESSESTOBEMANAGEDMOREEFFECTIVELY4HISAPPROACHAPPEARSTOBEMUCHBETTER
SUITEDTOALLOWINGAHIGHDEGREEOFPARALLELISMWITHOUTOVERWHELMINGTHEAVAILABLERESOURCESTHAN
PREVIOUSATTEMPTSG2ALSOINTRODUCEDTHEABILITYFOR/RACLETOAUTOMATICALLYCALCULATEADEGREEOF
PARALLELISMONASTATEMENT BY STATEMENTBASIS
4HISCHAPTERISABOUTPARALLELQUERY/THERFORMSOFPARALLELISMPROVIDEDBYTHEDATABASE SUCHAS
RECOVERYPARALLELISM WILLNOTBECOVEREDHERE7EWILLBRIEFLYCOVERPARALLELQUERYMECHANICSAND
DEMONSTRATESPECIFICALLYHOWTHEQUEUINGMECHANISMANDAUTOMATICDEGREEOFPARALLELISMWORKWITH
%XADATA4HISCHAPTERWILLALSOBRIEFLYCOVERTHENEWG2)N -EMORY0ARALLEL%XECUTIONFEATUREAND
DISCUSSHOW%XADATASTORAGEPARALLELIZES)/OPERATIONS)TWILLNOTCOVERALLTHEDETAILSOFPARALLELQUERY
ORPARALLEL$-,ANDASSUMESTHATTHEREADERISFAMILIARWITHBASIC/RACLEPARALLELCONCEPTS.OTEALSO
THATTHEDISCUSSIONANDEXAMPLESWILLREFERTOBEHAVIORIN/RACLE$ATABASEG2ELEASE )N
MOSTCASES THECOMMENTSAPPLYEQUALLYTOVERSIONASWELL%XCEPTIONSAREEXPLICITLYCALLEDOUT

Parameters
"EFOREDESCRIBINGTHEVARIOUSNEWFEATURESANDHOWTHEYAPPLYTO%XADATA YOUSHOULDREVIEWTHE
PARAMETERSTHATAFFECTHOWPARALLELQUERIESAREHANDLEDBYTHEDATABASE4ABLE SHOWSTHEPARAMETERS
ALONGWITHABRIEFDESCRIPTIONOFEACHONESPURPOSE


#(!04%2 -!+).'0#"3

Table 6-1. Database Parameters Controlling 11gR2 Parallel Features

Parameter Default Description


_PaP[[T[NPSP_cXeTN\d[cXNdbTaCAD4 /LDMECHANISMOFTHROTTLINGPARALLELSTATEMENTSBY
DOWNGRADING)NMOSTCASES THISPARAMETERSHOULD
BESETTO50;B4ON%XADATA FORREASONSWELLDISCUSS
LATERINTHECHAPTER

_PaP[[T[NPdc^\PcXRNcd]X]V50;B4 $EPRECATEDSINCEG4HISPARAMETERENABLEDAN
AUTOMATIC$/0CALCULATIONONOBJECTSFORWHICHA
PARALLELISMATTRIBUTEISSET

_PaP[[T[NSTVaTTN[X\Xc2?D 4HISPARAMETERSETSANUPPERLIMITONTHE$/0THAT
CANBEAPPLIEDTOASINGLESTATEMENT4HEDEFAULT
MEANSTHAT/RACLEWILLCALCULATEAVALUEFORTHISLIMIT
BASEDONTHESYSTEMSCHARACTERISTICS

_PaP[[T[NSTVaTTN_^[XRh<0=D0; #ONTROLSSEVERALPARALLELFEATURESINCLUDING
!UTOMATIC$EGREEOF0ARALLELISMAUTO$/0 0ARALLEL
3TATEMENT1UEUINGAND)N MEMORY0ARALLEL
%XECUTION

_PaP[[T[NTgTRdcX^]N\TbbPVTNbXiT %"'# 4HESIZEOFPARALLELMESSAGEBUFFERSINBYTES

_PaP[[T[NU^aRTN[^RP[50;B4 $ETERMINESWHETHERPARALLELQUERYSLAVESWILLBE
FORCEDTOEXECUTEONLYONTHENODETHATINITIATEDTHE
QUERYCAD4 ORWHETHERTHEYWILLBEALLOWEDTO
SPREADONTOMULTIPLENODESINA2!#CLUSTER50;B4 

_PaP[[T[NX]bcP]RTNVa^d_ 5SEDTORESTRICTPARALLELSLAVESTOCERTAINSETOF
INSTANCESINA2!#CLUSTER

_PaP[[T[NX^NRP_NT]PQ[TS50;B4 5SEDINCONJUNCTIONWITHTHE
31<BNA4B>DA24N<0=064A20;81A0C4N8>FUNCTIONTO
LIMITDEFAULT$/0CALCULATIONSBASEDONTHE)/
CAPABILITIESOFTHESYSTEM

_PaP[[T[N\PgNbTaeTab 4HEMAXIMUMNUMBEROFPARALLELSLAVEPROCESSTHAT
MAYBECREATEDONANINSTANCE4HEDEFAULTIS
CALCULATEDBASEDONSYSTEMPARAMETERSINCLUDING
2?DN2>D=CAND?0A0;;4;NC7A403BN?4AN2?D/NMOST
SYSTEMSTHEVALUEWILLWORKOUTTOBE¯2?DN2>D=C

_PaP[[T[N\X]N_TaRT]c /LDTHROTTLINGMECHANISM)TREPRESENTSTHE
MINIMUMPERCENTAGEOFPARALLELSERVERSTHATARE
NEEDEDFORAPARALLELSTATEMENTTOEXECUTE


#(!04%2 -!+).'0#"3

Parameter Default Description


_PaP[[T[N\X]NbTaeTab 4HEMINIMUMNUMBEROFPARALLELSLAVEPROCESSES
THATSHOULDBEKEPTRUNNING REGARDLESSOFUSAGE
5SUALLYSETTOELIMINATETHEOVERHEADOFCREATINGAND
DESTROYINGPARALLELPROCESSES

_PaP[[T[N\X]NcX\TNcWaTbW^[S0DC> 4HEMINIMUMESTIMATEDSERIALEXECUTIONTIMETHAT
WILLBETRIGGERAUTO$/04HEDEFAULTIS0DC> WHICH
TRANSLATESTOSECONDS7HENTHE
?0A0;;4;N346A44N?>;82HPARAMETERISSETTO0DC>OR
;8<8C43 ANYSTATEMENTTHATISESTIMATEDTOTAKE
LONGERTHANTHETHRESHOLDESTABLISHEDBYTHIS
PARAMETERWILLBECONSIDEREDACANDIDATEFORAUTO
$/0

_PaP[[T[NbTaeTaCAD450;B4 (ASNOTHINGTODOWITHPARALLELQUERIES3ETTOTRUEOR
FALSEDEPENDINGONWHETHERTHEDATABASEIS2!#
ENABLEDORNOT4HISPARAMETERWASDEPRECATEDLONG
AGOANDHASBEENREPLACEDBYTHE2;DBC4AN30C010B4
PARAMETER

_PaP[[T[NbTaeTaNX]bcP]RTb ORTHE (ASNOTHINGTODOWITHPARALLELQUERIES)TISSETTOTHE


NUMBEROF NUMBEROFINSTANCESINA2!#CLUSTER
2!#INSTANCES

_PaP[[T[NbTaeTabNcPaVTc 4HEUPPERLIMITONTHENUMBEROFPARALLELSLAVESTHAT
MAYBEINUSEONANINSTANCEATANYGIVENTIMEIF
PARALLELQUEUINGISENABLED4HEDEFAULTISCALCULATED
AUTOMATICALLY

_PaP[[T[NcWaTPSbN_TaNR_d  5SEDINVARIOUSPARALLELCALCULATIONSTOREPRESENTTHE
NUMBEROFCONCURRENTPROCESSESTHATA#05CAN
SUPPORT

Parallelization at the Storage Tier


%XADATAHASALOTOFPROCESSINGPOWERATTHESTORAGELAYER2EGARDLESSOFWHETHERYOUAREUSINGA6
QUARTERRACKORAN8 FULLRACK YOUSTILLHAVEMORE#05RESOURCESAVAILABLEATTHESTORAGELAYERTHAN
YOUHAVEATTHEDATABASELAYER3INCE3MART3CANSOFFLOADALOTOFPROCESSINGTOTHESTORAGECELLS EVERY
QUERYEXECUTEDVIA3MART3CANISEFFECTIVELYPARALLELIZEDACROSSTHE#05SONTHESTORAGECELLS4HISTYPE
OFPARALLELIZATIONISCOMPLETELYINDEPENDENTOFTHEDATABASEPARALLELPROCESSINGCAPABILITIES BYTHEWAY
3OTHISKINDOFPARALLELIZATIONOCCURSEVENWHENTHEACTIVITYISDRIVENBYASINGLEPROCESSONASINGLE
DATABASESERVER4HISINTRODUCESSOMEINTERESTINGISSUESTHATSHOULDBECONSIDEREDWITHREGARDTO
NORMALPARALLELIZATIONATTHEDATABASETIER3INCEONEOFTHEPRIMARYJOBSOFAPARALLELIZEDQUERYISTO
ALLOWMULTIPLEPROCESSESTOPARTICIPATEINTHE)/OPERATIONS ANDSINCETHE)/OPERATIONSAREALREADY
SPREADACROSSMULTIPLEPROCESSES THEDEGREEOFPARALLELISMREQUIREDBYSTATEMENTSRUNNINGONTHE
%XADATAPLATFORMSHOULDBESMALLERTHANONOTHERPLATFORMS


#(!04%2 -!+).'0#"3

Auto DOP
/NEOFTHEMAJORCHANGESTOPARALLELOPERATIONSIN/RACLE$ATABASEG2ELEASEWASTHEADDITIONOFA
FEATUREAFFECTIONATELYKNOWNAS!UTO$/0)TWASDESIGNEDTOOVERCOMETHEPROBLEMSASSOCIATEDWITH
THEFACTTHATTHEREISRARELYASINGLE$/0VALUETHATISAPPROPRIATEFORALLQUERIESTOUCHINGAPARTICULAR
OBJECT0RIORTOG2 $/0COULDBESPECIFIEDATTHESTATEMENTLEVELVIAHINTSORATTHEOBJECTLEVELVIA
THE346A44AND8=BC0=24SETTINGS2EALISTICALLY USINGHINTSATTHESTATEMENTLEVELMAKESMORESENSEIN
MOSTSITUATIONSFORTHEREASONJUSTMENTIONED"UTITREQUIRESTHATTHEDEVELOPERSUNDERSTANDTHE
PLATFORMTHATTHESTATEMENTSWILLBERUNNINGONANDTHEWORKLOADTHATTHEHARDWAREWILLBESUPPORTING
ATTHETIMEOFEXECUTION'ETTINGTHESETTINGSCORRECTCANBEATEDIOUSTRIAL AND ERRORPROCESSAND
UNFORTUNATELY $/0CANNOTBECHANGEDWHILEASTATEMENTISRUNNING/NCEITSTARTS YOURONLYOPTIONS
ARETOLETITCOMPLETEORKILLITANDTRYAGAIN4HISMAKESFINETUNINGINAhLIVEvENVIRONMENTAPAINFUL
PROCESS

/PERATIONAND#ONFIGURATION
7HEN!UTO$/0ISENABLED /RACLEEVALUATESEACHSTATEMENTTODETERMINEWHETHERITSHOULDBERUNIN
PARALLELANDIFSO WHAT$/0SHOULDBEUSED"ASICALLYANYSTATEMENTTHATTHEOPTIMIZERCONCLUDESWILL
TAKELONGERTHANSECONDSTORUNSERIALLYWILLBEACANDIDATETORUNINPARALLEL4HE SECONDTHRESHOLD
CANBECONTROLLEDBYSETTINGTHE?0A0;;4;N<8=NC8<4NC7A4B7>;3PARAMETERBYTHEWAY4HISDECISIONIS
MADEREGARDLESSOFWHETHERANYOFTHEOBJECTSINVOLVEDINTHESTATEMENTHAVEBEENDECORATEDWITHA
PARALLELDEGREESETTINGORNOT
!UTO$/0ISENABLEDBYSETTINGTHE?0A0;;4;N346A44N?>;82HPARAMETERTOAVALUEOF0DC>OR;8<8C43
4HEDEFAULTSETTINGFORTHISPARAMETERIS<0=D0; WHICHDISABLESALLTHREEOFTHENEWG2PARALLEL
FEATURES!UTO$/0 0ARALLEL3TATEMENT1UEUING )N MEMORY0ARALLEL%XECUTION 5NFORTUNATELY
?0A0;;4;N346A44N?>;82HISONEOFTHOSEPARAMETERSTHATCONTROLMORETHANONETHING4HEFOLLOWINGLIST
SHOWSTHEEFFECTSOFTHEVARIOUSSETTINGSFORTHISPARAMETER
<0=D0;)F?0A0;;4;N346A44N?>;82HISSETTO<0=D0; NONEOFTHENEWG2
PARALLELFEATURESWILLBEENABLED0ARALLELPROCESSINGWILLWORKASITDIDIN
PREVIOUSVERSIONS4HATISTOSAY STATEMENTSWILLONLYBEPARALLELIZEDIFAHINTIS
USEDORANOBJECTISDECORATEDWITHAPARALLELSETTING
;8<8C43)F?0A0;;4;N346A44N?>;82HISSETTO;8<8C43 ONLY!UTO$/0ISENABLED
WHILE0ARALLEL3TATEMENT1UEUINGAND)N MEMORY0ARALLEL%XECUTIONREMAIN
DISABLED)NADDITION ONLYSTATEMENTSACCESSINGOBJECTSTHATHAVEBEEN
DECORATEDWITHTHEDEFAULTPARALLELSETTINGWILLBECONSIDEREDFOR!UTO$/0
CALCULATION
0DC>))F?0A0;;4;N346A44N?>;82HISSETTO0DC> ALLTHREEOFTHENEWFEATURESARE
ENABLED3TATEMENTSWILLBEEVALUATEDFORPARALLELEXECUTIONREGARDLESSOFANY
PARALLELDECORATIONATTHEOBJECTLEVEL
!LTHOUGHTHEONLYDOCUMENTEDWAYTOENABLE0ARALLEL3TATEMENT1UEUINGAND)N MEMORY0ARALLEL
%XECUTIONAREVIATHEALL OR NOTHINGSETTINGOF0DC> THEDEVELOPERSHAVETHOUGHTFULLYPROVIDEDHIDDEN
PARAMETERSTHATPROVIDEINDEPENDENTCONTROLOFTHESEFEATURES4ABLE SHOWSTHEPARAMETERSANDHOW
THESETTINGSOF?0A0;;4;N346A44N?>;82HALTERTHEHIDDENPARAMETERS


#(!04%2 -!+).'0#"3

Table 6-2. Hidden Parameters Affected by PARALLEL_DEGREE_POLICY

Parallel_Degree_Policy Parameter Value


<0=D0;N_PaP[[T[NbcPcT\T]cN`dTdX]V 50;B4

N_PaP[[T[NR[dbcTaNRPRWTN_^[XRh 030?C8E4

;8<8C43N_PaP[[T[NbcPcT\T]cN`dTdX]V 50;B4

N_PaP[[T[NR[dbcTaNRPRWTN_^[XRh 030?C8E4

0DC>N_PaP[[T[NbcPcT\T]cN`dTdX]V CAD4

N_PaP[[T[NR[dbcTaNRPRWTN_^[XRh 202743

)TSPRETTYOBVIOUSWHATTHEN?0A0;;4;NBC0C4<4=CN@D4D8=6PARAMETERCONTROLS7HENITISSETTO
425% QUEUINGISENABLED4HEPURPOSEOFTHEN?0A0;;4;N2;DBC4AN20274N?>;82HPARAMETERISALITTLELESS
OBVIOUS)TTURNSOUTTHATITCONTROLS)N MEMORY0ARALLEL%XECUTION3ETTINGTHEVALUEOFTHE
N?0A0;;4;N2;DBC4AN20274N?>;82HPARAMETERTO202743ENABLES)N MEMORY0ARALLEL%XECUTION9OU
SHOULDNOTETHAT)N MEMORY0ARALLEL%XECUTIONISARGUABLYOFLESSVALUEONTHE%XADATAPLATFORM
BECAUSETHE3MART3CANOPTIMIZATIONSWILLNOTBEAVAILABLEWHENUSINGTHISFEATURETOSCANTHEBUFFER
CACHE7ELLDISCUSSTHATINMOREDETAILALITTLELATER)NTHEMEANTIME HERESANEXAMPLESHOWING!UTO
$/0INACTION
BHB/4G31 -/SQPNcPQ[Tb
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F

>F=4AC01;4N=0<4BC0CDB;0BCN0=0;=D<NA>FB1;>2:B346A44

:B>B:4FE0;83!$=>E "!# %!!(# 

BHB/4G31 -P[cTabhbcT\bTc_PaP[[T[NSTVaTTN_^[XRh,Pdc^*

BhbcT\P[cTaTS

BHB/4G31 -bT[TRcPeV_ZNR^[Ua^\Zb^bZTfPfWTaTR^[ -*

0E6?:N2>;

 %("&#("

a^fbT[TRcTS

BHB/4G31 -/Ub
4]cTaeP[dTU^ab`[NcTgc)bZTf
4]cTaeP[dTU^ab`[NXS)



#(!04%2 -!+).'0#"3

B@;N830E6N4C8<40E6N;8>B@;NC4GC

$R`!WQ a"&ca!'&& %!#!&bT[TRcPeV_ZNR^[Ua^\Zb^bZTfP
fWTaTR^[ -

a^fbbT[TRcTS

BHB/4G31 -RPcS_[P]b`[
bTc[X]Tb $
bT[TRcUa^\cPQ[TSQ\bNg_[P]SXb_[PhNRdab^ab`[NXSRWX[SN]^ch_XRP[


BHB/4G31 -/S_[P]
4]cTaeP[dTU^ab`[NXS)$R`!WQ a"&ca
4]cTaeP[dTU^aRWX[SN]^)!

?;0=NC01;4N>DC?DC


B@;N83$R`!WQ a"&caRWX[S]d\QTa!

bT[TRcPeV_ZNR^[Ua^\Zb^bZTfPfWTaTR^[ -

?[P]WPbWeP[dT)$&'"%%& 


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\TkC@k

kkB4;42CBC0C4<4=Ckkkk%"' kkk
k kB>AC066A460C4kk k!#kkkk
k!k?G2>>A38=0C>Akkkkkkk
k"k?GB4=3@2A0=3><k)C@ k k!#kkk@ k
k#kB>AC066A460C4kk k!#kkk@ k
k$k?G1;>2:8C4A0C>Akk"!<k&"!<k%"' k) ) %k@ k
k%kC01;40224BB5D;;kB:4Fk"!<k&"!<k%"' k) ) %k@ k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


%PRRTbb)I-,)I0=3)I+,)I
UX[cTa2>; -

=^cT

Pdc^\PcXR3>?)2^\_dcTS3TVaTT^U?PaP[[T[Xb\Xb$


!'a^fbbT[TRcTS


#(!04%2 -!+).'0#"3

3OASYOUCANSEE ENABLING!UTO$/0ALLOWEDTHESTATEMENTTOBEPARALLELIZED EVENTHOUGHTHE


TABLEWASNOTDECORATEDWITHAPARALLELSETTING!LSO NOTICETHATTHEPLANOUTPUTPRODUCEDBY31<BNG?;0=
SHOWSTHAT!UTO$/0WASENABLEDANDTHECALCULATED$/0WAS
/RACLEHASPROVIDEDSOMECONTROLOVERTHE!UTOMATIC$/0CALCULATIONSASWELLWITHTHE
?0A0;;4;N346A44N;8<8CPARAMETER4HEDEFAULTVALUEFORTHISPARAMETERIS2?D WHICHTELLS/RACLETO
CALCULATEANh)DEAL$/0vBASEDONTHEAMOUNTOFDATA BUTTHENCAPSITWITHAFORMULABASEDON
2?DN2>D=C C7A403BN?4AN2?D AND02C8E4N8=BC0=24N2>D=C

)/#ALIBRATION
/RACLE$ATABASEVERSIONINTRODUCEDARESTRICTIONTO!UTO$/0REQUIRINGTHATTHE)/SYSTEMBE
CALIBRATEDBEFORESTATEMENTSWILLBEAUTOMATICALLYPARALLELIZED4HECALIBRATIONISDONEBYTHE
31<BNA4B>DA24N<0=064A20;81A0C4N8>PROCEDURE WHICHGENERATESARANDOMREAD ONLYWORKLOADAND
SPREADSITACROSSALLINSTANCESINA2!#CLUSTER)TRUNSFORSEVERALMINUTESLONGERON2!#DATABASES
BECAUSEITMUSTRUNONEACHINSTANCE 4HEPROCEDURECANPUTASIGNIFICANTLOADONTHESYSTEM ANDTHE
DOCUMENTATIONRECOMMENDSRUNNINGITWHENTHESYSTEMISIDLEORVERYLIGHTLYLOADED(ERESAN
EXAMPLEOFWHATHAPPENSIFTHECALIBRATIONPROCEDUREHASNOTBEENRUNON
BHB/;01 !!-/S_[P]
4]cTaeP[dTU^ab`[NXS)$R`!WQ a"&ca
4]cTaeP[dTU^aRWX[SN]^)

?;0=NC01;4N>DC?DC

B@;N83$R`!WQ a"&caRWX[S]d\QTa

bT[TRcPeV_ZNR^[Ua^\Zb^bZTfPfWTaTR^[ -

?[P]WPbWeP[dT)$%'"!!"&%


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\Tk

kkB4;42CBC0C4<4=Ckkkk##!(' kk
k kB>AC066A460C4kk k kkk
k!kC01;40224BB5D;;kB:4Fk"!<k""$<k##!(' k) )!(k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!UX[cTa2>; -

=^cT

Pdc^\PcXR3>?)bZX__TSQTRPdbT^U8>RP[XQaPcTbcPcXbcXRbPaT\XbbX]V


!"a^fbbT[TRcTS
!SYOUCANSEE WHENTHE)/CALIBRATIONHASNOTBEENDONE !UTO$/0ISDISABLEDANDTHEOPTIMIZER
GENERATESASERIALEXECUTIONPLAN4HEREARETWOVIEWSTHATPROVIDEADDITIONALINFORMATIONABOUTTHE


#(!04%2 -!+).'0#"3

CALIBRATIONPROCESS4HEE8>N20;81A0C8>=NBC0CDBVIEWSHOWSWHETHERTHECALIBRATIONHASBEENDONE
WHILETHE310NABA2N8>N20;81A0C4VIEWSHOWSTHERESULTSOFTHEPROCEDURE(ERESANEXAMPLESHOWING
HOWTOUSETHEPROCEDURE
BHB/4G31 -bT[TRcUa^\E8>N20;81A0C8>=NBC0CDB*

BC0CDB20;81A0C8>=NC8<4

=>C0E08;01;4

a^fbT[TRcTS

BHB/4G31 -RPcRP[XQaPcTNX^b`[
B4CB4AE4A>DC?DC>=
342;0A4
[Pc8=C464A*
X^_b8=C464A*
\Q_b8=C464A*
1468=
31<BNA4B>DA24N<0=064A20;81A0C4N8>+38B:B-+<0GN;0C4=2H-X^_b\Q_b[Pc*
31<BNA4B>DA24N<0=064A20;81A0C4N8>]^N^UNSXbZb X^_b\Q_b[Pc*

31<BN>DC?DC?DCN;8=4\PgNX^_b,kkX^_b*
31<BN>DC?DC?DCN;8=4[PcT]Rh,kk[Pc*
SQ\bN^dc_dc_dcN[X]T\PgN\Q_b,kk\Q_b*
T]S*


BHB/4G31 -bTccX\X]V^]
BHB/4G31 -/RP[XQaPcTNX^
4]cTaeP[dTU^a]^N^UNSXbZb)"%

bfXcRWc^^cWTabTbbX^]^]31bTaeTa

-c^_
c^_! ) !)"!d_ SPhb()!&"dbTab[^PSPeTaPVT)#(###&
CPbZb)' #c^cP[ ad]]X]V' "b[TT_X]Vbc^__TSi^\QXT
2_db)#db bh]X((#XS fPWXbXbc
<T\)&#!&&$!Zc^cP[$!!!$ 'ZdbTS! '!%##ZUaTT'!(""%ZQdUUTab
BfP_) %&& '$!Zc^cP[ZdbTS %&& '$!ZUaTT#"&'$'ZRPRWTS

?83DB4A?A=8E8ACA4BB7AB2?D<4<C8<42><<0=3
#'!$^aPR[T $$!!$\!!\ (\B &) $^aPNRb!N4G31 
#'!&^aPR[T $$!!$\!!\ (\B  ) #^aPNRb"N4G31 
#'" ^aPR[T $$!!$\!!\ (\B  ) #^aPNRb$N4G31 
' ^aPR[T $ !!V$#\"(\B%  !)##%&^aPNSXPN?>2 
#'! ^aPR[T $$!!$\!!\ (\B%) "^aPNRbN4G31 
#'!"^aPR[T $$!!$\!!\ (\B%) $^aPNRb N4G31 
#'!(^aPR[T $$!!$\!!\ (\B%) !^aPNRb#N4G31 
$!"(^bQ^a]T % "!%' %#'' %A%)"c^_
!' '^aPR[TAC""$\ ""\$!\B%!'')! "#



#(!04%2 -!+).'0#"3


bfXcRWc^^]T^UcWTRT[[b

JT]ZRT[ )a^^cLa^^c-e\bcPc!

_a^Rb\T\^ahbfP_X^bhbcT\R_d
aQbf_SUaTTQdUURPRWTbXb^QXQ^X]RbdbbhXSfPbc
 ( #&!" &"% "$"(!"(!('    ('
 ( #&$#" &"% "$"(!! !"" &"!! "'$(#%
  ( #&$#" &"% "$"(! ' !#  %&$! !(# (#$
 ( #'" &"% "$" "% ( & $& & $! & $(#$
 ( #&'&%" &"% "$" #! '"$& &&!(!'(#$
 ( #$&&%" &"% "$" # (%!(' & "!'%(#$

bfXcRWQPRZc^^aXVX]P[bTbbX^]

\PgNX^_b, #
[PcT]Rh, 
\PgN\Q_b,!! 

?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS

4[P_bTS)) ")# !&
BHB/4G31 -bTccX\X]V^UU
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)RT[[U[PbWRPRWT

=0<4E0;D4

RT[[U[PbWRPRWTaTPSWXcb

BHB/4G31 -bT[TRcUa^\E8>N20;81A0C8>=NBC0CDB*

BC0CDB20;81A0C8>=NC8<4

A403H 342 (! !$#?<

BHB/4G31 -bT[TRcc^NRWPabcPacNcX\TSS\^]hhbcPacNcX\T
!<0GN8>?B<0GN<1?B<0GN?<1?B;0C4=2H=D<N?7HB820;N38B:B
"Ua^\310NABA2N8>N20;81A0C4*

BC0ACNC8<<0GN8>?B<0GN<1?B<0GN?<1?B;0C4=2H=D<N?7HB820;N38B:B

STR  #!!    "%
4HISLISTINGISALITTLELONG SOLET@SWALKTHROUGHWHATWEDID
 7ECHECKEDTHECURRENTSTATUSINE8>N20;81A0C8>=NBC0CDB
 7ERANTHE31<BNA4B>DA24N<0=064A20;81A0C4N8>PROCEDUREUSINGASCRIPT
CALLEDRP[XQaPcTNX^b`[


#(!04%2 -!+).'0#"3

 7ETHENJUMPEDTOANOTHERSESSIONTOSEEWHATKINDOFACTIVITYWASGENERATED
ONTHEDATABASESERVERUSINGc^_ 
 .EXTWECREATEDASESSIONONONEOFTHESTORAGESERVERSTOSEETHEACTIVITYTHERE
USINGe\bcPc 
 7ETHENSWITCHEDBACKTOTHEORIGINALSESSIONANDAFTERALMOSTMINUTESTHE
PROCEDURECOMPLETED
 &INALLYWECHECKEDTHESTATUSANDRESULTSINE8>N20;81A0C8>=NBC0CDBAND
310NABA2N8>N20;81A0C4

!UTO$/07RAP5P
4HEENDRESULTOFSETTING?0A0;;4;N346A44N?>;82HTO0DC>ISTHATALLKINDSOFSTATEMENTSWILLBERUNIN
PARALLEL EVENIFNOOBJECTSHAVEBEENSPECIFICALLYDECORATEDWITHAPARALLELDEGREESETTING4HISISTRULY
AUTOMATICPARALLELPROCESSINGBECAUSETHEDATABASEDECIDESWHATTORUNINPARALLELANDWITHHOWMANY
SLAVES/NTOPOFTHAT BYDEFAULT THESLAVESMAYBESPREADACROSSMULTIPLENODESINA2!#DATABASE
5NFORTUNATELYTHISCOMBINATIONOFFEATURESISALITTLELIKETHE7ILD7EST WITHTHINGSRUNNINGINPARALLELALL
OVERTHEPLACE"UTTHEABILITYTOQUEUEPARALLELSTATEMENTSDOESPROVIDESOMESEMBLANCEOFORDER WHICH
LEADSUSTOTHENEXTTOPIC

Parallel Statement Queuing


)RECENTLYATTENDEDA4ECH$AYWHEREONEOFTHESPEAKERSRECALLEDTHEPRESENTATION,ARRY%LLISONDID
WHEN/RACLEFIRSTANNOUNCEDTHE0ARALLEL1UERYFEATURE/RACLEVERSION )NTHEDEMO ,ARRYHADA
MULTIPROCESSORCOMPUTERALLTOHIMSELF)DONTREMEMBERHOWMANYPROCESSORSITHAD BUT)REMEMBER
HEHADSOMEKINDOFGRAPHICSHOWINGINDIVIDUAL#05UTILIZATIONONONESCREENWHILEHEFIREDUPA
PARALLELQUERYONANOTHERSCREEN4HEMONITORINGSCREENLITUPLIKEA#HRISTMASTREE%VERYONEOFTHE
#05SWASPEGGEDDURINGHISDEMO7HENTHESPEAKERWASTELLINGTHESTORYHESAIDTHATHEHADWONDERED
ATTHETIMEWHATWOULDHAVEHAPPENEDIFTHEREHADBEENOTHERUSERSONTHESYSTEMDURINGTHEDEMO
4HEIREXPERIENCEWOULDPROBABLYNOTHAVEBEENAGOODONE4HATSEXACTLYTHEISSUETHAT0ARALLEL
3TATEMENT1UEUINGATTEMPTSTORESOLVE
/RACLESPARALLELCAPABILITIESHAVEBEENAGREATGIFTBUTTHEYHAVEALSOBEENACURSEBECAUSE
CONTROLLINGTHEBEASTINANENVIRONMENTWHERETHEREAREMULTIPLEUSERSTRYINGTOSHARETHERESOURCESIS
DIFFICULTATBEST4HEREHAVEBEENATTEMPTSTOCOMEUPWITHAREASONABLEWAYOFTHROTTLINGBIGPARALLEL
STATEMENTS"UTTODATE )DONTTHINKTHOSEATTEMPTSHAVEBEENOVERLYSUCCESSFUL
/NEOFTHEMOSTPROMISINGASPECTSOF%XADATAISITSPOTENTIALTORUNMIXEDWORKLOADS/,40AND
$7 WITHOUTCRIPPLINGONEORTHEOTHER)NORDERTODOTHAT /RACLENEEDSSOMEMECHANISMTOSEPARATE
THEWORKLOADSAND JUSTASIMPORTANTLY TOTHROTTLETHERESOURCEINTENSIVEPARALLELQUERIES0ARALLEL
3TATEMENT1UEUINGAPPEARSTOBEJUSTSUCHATOOL!NDWHENCOMBINEDWITH2ESOURCE-ANAGER IT
PROVIDESAPRETTYROBUSTMECHANISMFORTHROTTLINGTHEWORKLOADTOALEVELTHATTHEHARDWARECANSUPPORT


#(!04%2 -!+).'0#"3

4HE/LD7AY
"EFOREWEGETTOTHENEW0ARALLEL1UEUINGFUNCTIONALITYWESHOULDPROBABLYREVIEWHOWITWASDONEIN
PREVIOUSVERSIONS4HEBESTTOOLWEHADATOURDISPOSALWAS0ARALLEL!DAPTIVE-ULTIUSER WHICHPROVIDES
THEABILITYTOAUTOMATICALLYDOWNGRADETHEDEGREEOFPARALLELISMFORAGIVENSTATEMENTBASEDONTHE
WORKLOADWHENAQUERYEXECUTES)TISACTUALLYAPOWERFULMECHANISMANDITISTHEBESTAPPROACHWEVE
HADPRIORTOG24HISFEATUREISENABLEDBYSETTINGTHE?0A0;;4;N030?C8E4N<D;C8NDB4APARAMETERTO
425%4HISISSTILLTHEDEFAULTING2BYTHEWAY SOTHISISDEFINITELYAPARAMETERTHATYOUMAYWANTTO
CONSIDERCHANGING4HEDOWNSIDEOFTHISAPPROACHISTHATPARALLELIZEDSTATEMENTSCANHAVEWILDLY
VARYINGEXECUTIONTIMES!SYOUCANIMAGINE ASTATEMENTTHATGETSSLAVESONETIMEANDTHENGETS
DOWNGRADEDTOSERIALEXECUTIONTHENEXTTIMEWILLPROBABLYNOTMAKETHEUSERSVERYHAPPY
4HEARGUMENTFORTHISTYPEOFAPPROACHISTHATSTUFFISGOINGTORUNSLOWERIFTHESYSTEMISBUSY
REGARDLESSOFWHATYOUDO ANDTHATUSERSEXPECTITTORUNSLOWERWHENTHESYSTEMISBUSY4HEFIRSTPARTOF
THATSTATEMENTMAYBETRUE BUT)DONTBELIEVETHESECONDPARTISATLEASTINMOSTCASES 4HEBIGGER
PROBLEMWITHTHEDOWNGRADEMECHANISMTHOUGHISTHATTHEDECISIONABOUTHOWMANYSLAVESTOUSEIS
BASEDONASINGLEPOINTINTIME THEPOINTWHENTHEPARALLELSTATEMENTSTARTS2ECALLTHATONCETHEDEGREE
OFPARALLELISM$/0 ISSETFORANEXECUTIONPLAN ITCANNOTBECHANGED4HESTATEMENTWILLRUNTO
COMPLETIONWITHTHENUMBEROFSLAVESITWASASSIGNED EVENIFADDITIONALRESOURCESBECOMEAVAILABLE
WHILEITISRUNNING
3OCONSIDERTHESTATEMENTTHATTAKESONEMINUTETOEXECUTEWITHSLAVES!NDSUPPOSETHATSAME
STATEMENTGETSDOWNGRADEDTOSERIALDUETOAMOMENTARILYHIGHLOAD!NDSAYTHATAFEWSECONDSAFTERIT
STARTS THESYSTEMLOADDROPSBACKTOMORENORMALLEVELS5NFORTUNATELY THESERIALIZEDSTATEMENTWILL
CONTINUETORUNFORNEARLYMINUTESWITHITSSINGLEPROCESS EVENTHOUGHONAVERAGE THESYSTEMISNOT
BUSIERTHANUSUAL4HISSORTOFERRATICPERFORMANCECANWREAKHAVOCFORTHOSEUSINGTHESYSTEM ANDFOR
THOSESUPPORTINGIT

4HE.EW7AY
.OWLETSCOMPARE0ARALLEL!DAPTIVE-ULTI5SERTHEOLDWAY WITHTHENEWMECHANISMINTRODUCEDIN
G2THATALLOWSPARALLELSTATEMENTSTOBEQUEUED4HISMECHANISMSEPARATESLONGRUNNINGPARALLEL
QUERIESFROMTHERESTOFTHEWORKLOAD4HEMECHANICSAREPRETTYSIMPLE4URNTHEFEATUREON3ETATARGET
NUMBEROFPARALLELSLAVESUSINGTHE?0A0;;4;NB4AE4ABNC0A64CPARAMETER2UNSTUFF)FASTATEMENTTHAT
REQUIRESEXCEEDINGTHETARGETTRIESTOSTART ITWILLBEQUEUEDUNTILTHEREQUIREDNUMBEROFSLAVESBECOME
AVAILABLE4HEREAREOFCOURSEMANYDETAILSTOCONSIDERANDOTHERCONTROLMECHANISMSTHATCANBE
APPLIEDTOMANAGETHEPROCESS3OLETSLOOKATHOWITBEHAVES
BHB/4G31 -P[cTabhbcT\bTc_PaP[[T[NSTVaTTN_^[XRh,Pdc^*

BhbcT\P[cTaTS

BHB/4G31 -P[cTabhbcT\bTc_PaP[[T[NbTaeTabNcPaVTc, *

BhbcT\P[cTaTS

BHB/4G31 -/_Pa\b
4]cTaeP[dTU^a_PaP\TcTa)_PaP[[T[
4]cTaeP[dTU^aXbbTc)
4]cTaeP[dTU^abW^fNWXSST])



#(!04%2 -!+).'0#"3

=0<4E0;D48B3450D;

_PaP[[T[NPSP_cXeTN\d[cXNdbTa50;B4CAD4
_PaP[[T[NPdc^\PcXRNcd]X]V50;B4CAD4
_PaP[[T[NSTVaTTN[X\Xc'50;B4
_PaP[[T[NSTVaTTN_^[XRh0DC>50;B4
_PaP[[T[NTgTRdcX^]N\TbbPVTNbXiT %"'#CAD4
_PaP[[T[NU^aRTN[^RP[CAD450;B4
_PaP[[T[NX]bcP]RTNVa^d_CAD4
_PaP[[T[NX^NRP_NT]PQ[TS50;B4CAD4
_PaP[[T[N\PgNbTaeTab"!CAD4
_PaP[[T[N\X]N_TaRT]cCAD4
_PaP[[T[N\X]NbTaeTab %50;B4
_PaP[[T[N\X]NcX\TNcWaTbW^[S!CAD4
_PaP[[T[NbTaeTaCAD4CAD4
_PaP[[T[NbTaeTaNX]bcP]RTb!CAD4
_PaP[[T[NbTaeTabNcPaVTc 50;B4
_PaP[[T[NcWaTPSbN_TaNR_d!CAD4

%a^fbbT[TRcTS

BHB/4G31 -bbbWPeVbZTfb`[!Zb^Zb^

bcPacX]V!R^_XTb^UPeVbZTfb`[

BHB/4G31 -bTcTRW^^]
BHB/4G31 -/`dTdTSNb`[
BHB/4G31 -R^[b`[NcTgcU^aP%cad]R
BHB/4G31 -B4;42CbXSb`[NXSb`[NTgTRNXSb`[NcTgc
!Ua^\eb`[N\^]Xc^a
"F74A4bcPcdb,@D4D43
#^aSTaQh"
$

B83B@;N83B@;N4G42N83B@;NC4GC

#(#$R`!WQ a"&ca %&&&! 'bT[TRcPeV_ZNR^[Ua^\Zb^bZTfP
fWTaTR^[ -
$# $R`!WQ a"&ca %&&&!!
 $!$R`!WQ a"&ca %&&&!! 
 !$R`!WQ a"&ca %&&&!!!
 %$R`!WQ a"&ca %&&&!!"
! $R`!WQ a"&ca %&&&!!#
"(&$R`!WQ a"&ca %&&&!!$
!$$R`!WQ a"&ca %&&&!!%
%("$R`!WQ a"&ca %&&&!!&
 $#$R`!WQ a"&ca %&&&!!'
###$R`!WQ a"&ca %&&&!!(
&#"$R`!WQ a"&ca %&&&!"
"$R`!WQ a"&ca %&&&!" 
$$R`!WQ a"&ca %&&&!"!
$"$R`!WQ a"&ca %&&&!""


#(!04%2 -!+).'0#"3

%#!$R`!WQ a"&ca %&&&!"#


"#'$R`!WQ a"&ca %&&&!"$
!$R`!WQ a"&ca %&&&!"%
!$ $R`!WQ a"&ca %&&&!"&

(a^fbbT[TRcTS

BHB/4G31 -/RWTRZN_g
BHB/4G31 -bT[TRcUa^\E?GN?A>24BBNBHBBC0CfWTaTbcPcXbcXR[XZT8]DbT*

BC0C8BC82E0;D4

BTaeTab8]DbT'

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT'

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT'

BHB/4G31 -bTcTRW^^UU
BHB/4G31 -/b]P__TaPbW,bXSTeT]cfPXcNR[PbbPbW ,_[b`[N^QYTRcNXSb`[NXS$ P[[
BP\_[X]VfXcWX]cTaeP[$bTR^]Sb cX\Tb

BTbbX^]B]P__Tae" QhCP]T[?^STa/4!B=Wcc_)cTRWT!b]R^\



0RcXeTkB83k4E4=CkF08CN2;0BB

 k"kaTb\Va)_``dTdTSkBRWTSd[Ta
 k"#'kaTb\Va)_``dTdTSkBRWTSd[Ta
 k! kaTb\Va)_``dTdTSkBRWTSd[Ta
 k!kaTb\Va)_``dTdTSkBRWTSd[Ta
 k&#"kaTb\Va)_``dTdTSkBRWTSd[Ta
 k!$ kaTb\Va)_``dTdTSkBRWTSd[Ta
 k%("kaTb\Va)_``dTdTSkBRWTSd[Ta
 k%#!kaTb\Va)_``dTdTSkBRWTSd[Ta
 k$kaTb\Va)_``dTdTSkBRWTSd[Ta
 k$# kaTb\Va)_``dTdTSkBRWTSd[Ta


#(!04%2 -!+).'0#"3


0RcXeTk?;B@;N>194kB@;N83

! $!kk$R`!WQ a"&ca
&kk

4]S^U0B7b]P_ T]S,!  !% ()!$)#"bTR^]Sb,$bP\_[TbNcPZT],#!


?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS
4HEREARESEVERALTHINGSWORTHMENTIONINGINTHISLISTING4OSETUPTHEDESIREDCONDITIONSWETURNED
ON!UTO$/0 WHICHALSOENABLES0ARALLEL1UEUING ANDTHENSETTHE?0A0;;4;NB4AE4ANC0A64CPARAMETER
TOAVERYLOWNUMBER INORDERTOTRIGGERQUEUINGMOREEASILY7ETHENUSEDASHELLSCRIPTbbbW TO
FIREOFFCOPIESOFTHEPeVbZTfb`[SCRIPTINRAPIDSUCCESSION1UERYINGEB@;N<>=8C>ASHOWEDTHATTHE
STATEMENTSWEREINDEEDQUEUING4HISISANIMPORTANTPOINT!LLSTATEMENTSUSINGPARALLELQUERYWILL
SHOWUPINTHEEB@;N<>=8C>AVIEW)FTHEYHAVEASTATUSOF@D4D43THEYARENOTACTUALLYEXECUTINGBUTARE
INSTEADWAITINGUNTILENOUGHPARALLELSLAVESBECOMEAVAILABLE7EALSOQUERIEDE?GN?A>24BBNBHBBC0CA
FEWTIMESTOSEEHOWMANYPARALLELSLAVESWEREBEINGUSED&INALLY WERAN4ANEL0ODERSSNAPPERSCRIPT
TOSEEWHATEVENTTHEQUEUEDSTATEMENTSWEREWAITINGON!SYOUCANSEE ITWASTHEaTb\Va)_``dTdTS
WAITEVENT

■.OTE4HEREISONEOTHERTHINGYOUSHOULDBEAWAREOFWITHREGARDTOTHEWAITEVENTS4HEREISAWAITEVENT
CHANGETHATRELATESTOPARALLELQUEUING4HISEXAMPLEWASCREATEDUSING/RACLE$ATABASEVERSION)FYOU
AREUSINGYOUWILLSEEADIFFERENTSETOFWAITEVENTSTHEREARETWO 4HEFIRSTIS?G@dTdX]V)bcPcT\T]c
`dTdT4HISISTHEEVENTTHATASTATEMENTWAITSONWHENITISNEXTTORUN4HEOTHERIST]`)9GB@;bcPcT\T]c
`dTdT4HISEVENTISWHATASTATEMENTWAITSONWHENTHEREAREOTHERSTATEMENTSAHEADOFITINTHEQUEUE4HIS
SCHEMESEEMSQUITEUNWIELDY WHICHISPROBABLYWHYITWASCHANGEDINTHELATERRELEASE

#ONTROLLING0ARALLEL1UEUING
4HEREARESEVERALMECHANISMSINPLACEFORCONTROLLINGHOWTHE0ARALLEL3TATEMENT1UEUINGFEATURE
BEHAVES4HEBASICAPPROACHISTOUSEAFIRST IN FIRST OUTQUEUINGMECHANISM"UTTHEREAREWAYSTO
PRIORITIZEWORKWITHINTHEQUEUINGFRAMEWORK)TSALSOPOSSIBLETOCOMPLETELYBY PASSTHEQUEUING
MECHANISMVIAAHINT!NDCONVERSELY ITISPOSSIBLETOENABLEQUEUINGFORASTATEMENTVIAAHINTEVEN
WHENTHEPARALLEL3TATEMENT1UEUINGFEATUREISNOTENABLEDATTHEDATABASELEVEL4HEREAREALSOAFEW
PARAMETERSTHATAFFECTTHEQUEUINGBEHAVIOR!NDFINALLY 2ESOURCE-ANAGERHASTHECAPABILITYTOAFFECT
HOWSTATEMENTSAREQUEUED

Controlling Queuing with Parameters


4HEREAREAHANDFULOFPARAMETERSTHATAFFECTHOW0ARALLEL1UEUINGBEHAVES4HEMAINPARAMETERIS
?0A0;;4;NB4AE4ABNC0A64C WHICHTELLS/RACLEHOWMANYPARALLELSERVERPROCESSESTOALLOWBEFORESTARTING
TOHOLDSTATEMENTSBACKINTHEQUEUE4HEDEFAULTVALUEFORTHISPARAMETERISCALCULATEDASFOLLOWS


#(!04%2 -!+).'0#"3

¾#05?COUNT ¾PARALLEL?THREADS?PER?CPU ¾ACTIVE?INSTANCES


3OONAN%XADATA8 WITHADATABASETHATSPANS2!#NODES THEDEFAULTVALUEWOULDBE
CALCULATEDAS
¾ ¾ ¾
4HISCALCULATEDVALUEISALMOSTCERTAINLYHIGHERTHANYOUWOULDWANTFORMOSTMIXEDWORKLOAD
SYSTEMS ASITISGEAREDATCOMPLETELYCONSUMINGTHEAVAILABLE#05RESOURCESWITHPARALLELQUERY
PROCESSES!LLOWINGLONG RUNNINGPARALLELSTATEMENTSTOCONSUMETHESERVERCOMPLETELYMEANSTHAT
RESPONSE SENSITIVE /,40 TYPESTATEMENTS COULDSUFFER9OUSHOULDALSONOTETHATITISPOSSIBLETOHAVE
MORESERVERPROCESSESACTIVETHANTHEPARAMETERALLOWS3INCETHENUMBEROFSLAVESASSIGNEDTOAQUERY
MAYBETWICETHE$/0 THETARGETCANOCCASIONALLYBEEXCEEDED
4HESECONDPARAMETERTHATDESERVESSOMEDISCUSSIONISTHEHIDDENPARAMETER
N?0A0;;4;NBC0C4<4=CN@D4D8=6 WHICHTURNSTHEFEATUREONANDOFF!SALREADYDISCUSSEDINTHE!UTO$/0
SECTION THISPARAMETERISSETTOCAD4WHENTHE?0A0;;4;N346A44N?>;82HPARAMETERISSETTO0DC>
(OWEVER THEHIDDENPARAMETERCANALSOBESETMANUALLYTOTURN0ARALLEL1UEUINGOFFANDON
INDEPENDENTLY
!UTO$/0CALCULATIONSARESTILLALITTLESCARY3OITSNICETHATTHEREISAWAYTOTURNONTHE0ARALLEL
1UEUINGFEATUREWITHOUTENABLING/RACLETOTAKECOMPLETECONTROLOFWHICHSTATEMENTSRUNINPARALLEL
/FCOURSESINCETHISINVOLVESSETTINGAHIDDENPARAMETERYOUSHOULDNOTDOTHISINAPRODUCTION
ENVIRONMENTWITHOUTAPPROVALFROM/RACLESUPPORT.EVERTHELESS HERESANOTHERQUICKEXAMPLE
SHOWINGTHATQUEUINGCANBETURNEDONWITHOUTENABLING!UTO$/0OR)N MEMORY0ARALLEL%XECUTION
BHB/4G31 -P[cTabhbcT\bTc_PaP[[T[NSTVaTTN_^[XRh,\P]dP[*

BhbcT\P[cTaTS

BHB/4G31 -P[cTacPQ[TZb^bZTf_PaP[[T[STVaTT'*

CPQ[TP[cTaTS

BHB/4G31 -/_Pa\b
4]cTaeP[dTU^a_PaP\TcTa)_PaP[[T[
4]cTaeP[dTU^aXbbTc)
4]cTaeP[dTU^abW^fNWXSST])

=0<4E0;D48B3450D;

_PaP[[T[NPSP_cXeTN\d[cXNdbTa50;B4CAD4
_PaP[[T[NPdc^\PcXRNcd]X]V50;B4CAD4
_PaP[[T[NSTVaTTN[X\Xc'50;B4
_PaP[[T[NSTVaTTN_^[XRh<0=D0;50;B4
_PaP[[T[NTgTRdcX^]N\TbbPVTNbXiT %"'#CAD4
_PaP[[T[NU^aRTN[^RP[CAD450;B4
_PaP[[T[NX]bcP]RTNVa^d_CAD4
_PaP[[T[NX^NRP_NT]PQ[TS50;B4CAD4
_PaP[[T[N\PgNbTaeTab"!CAD4
_PaP[[T[N\X]N_TaRT]cCAD4
_PaP[[T[N\X]NbTaeTab %50;B4
_PaP[[T[N\X]NcX\TNcWaTbW^[S!CAD4
_PaP[[T[NbTaeTaCAD4CAD4
_PaP[[T[NbTaeTaNX]bcP]RTb!CAD4


#(!04%2 -!+).'0#"3

_PaP[[T[NbTaeTabNcPaVTc 50;B4
_PaP[[T[NcWaTPSbN_TaNR_d!CAD4

%a^fbbT[TRcTS

BHB/4G31 -bbbWPeVbZTfb`[!Zb^Zb^

bcPacX]V!R^_XTb^UPeVbZTfb`[

BHB/4G31 -/`dTdTSNb`[

]^a^fbbT[TRcTS

BHB/4G31 -/`dTdTSNb`[

]^a^fbbT[TRcTS

BHB/4G31 -/RWTRZN_g

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT#'

a^fbT[TRcTS

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT$%

a^fbT[TRcTS

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT%#

a^fbT[TRcTS

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT#'

a^fbT[TRcTS



#(!04%2 -!+).'0#"3

BHB/4G31 -

BC0C8BC82E0;D4

BTaeTab8]DbT$%

a^fbT[TRcTS

BHB/4G31 -`dTdTSNb`[

]^a^fbbT[TRcTS

BHB/4G31 -]^`dTdX]V[^czb^U_PaP[[T[b[PeTbad]]X]V
BHB/4G31 -
BHB/4G31 -P[cTabhbcT\bTcN_PaP[[T[NbcPcT\T]cN`dTdX]V,cadT*T]PQ[T@dTdX]V

BhbcT\P[cTaTS

BHB/4G31 -bbbWPeVbZTfb`[!Zb^Zb^

bcPacX]V!R^_XTb^UPeVbZTfb`[

BHB/4G31 -/`dTdTSNb`[

B83B@;N83B@;N4G42N83B@;NC4GC

 ' $R`!WQ a"&ca %&&&"%"bT[TRcPeV_ZNR^[Ua^\Zb^bZTfP
fWTaTR^[ -
! % %&&&"%#
## %&&&"%$
!&" %&&&"%%
!"# %&&&"%&
 % %&&&"%'
  %&&&"%(
!"" %&&&"&
" %&&&"& 
 "' %&&&"&!
& %&&&"&"
!(" %&&&"&#
 "& %&&&"&$
'" %&&&"&%
!$  %&&&"&&
%% %&&&"&'
 !" %&&&"&(
 ($ %&&&"'

'a^fbbT[TRcTS

BHB/4G31 -]^ffTWPeTR^]ca^[^UfWXRWbcPcT\T]cbPaT_PaP[[T[XiTSP]SfTWPeT`dTdX]V


#(!04%2 -!+).'0#"3

4HISLISTINGSHOWSTHATYOUCANHAVE0ARALLEL3TATEMENT1UEUINGWITHOUTTURNINGON!UTO$/0/F
COURSEITSUSINGAHIDDENPARAMETER SOYOUPROBABLYDONTWANTTODOTHISONAPRODUCTIONSYSTEM
WITHOUTDISCUSSINGITWITH/RACLE3UPPORTFIRST

Controlling Queuing with Hints


4HEREARETWOHINTSTHATCANBEUSEDTOCONTROL0ARALLEL3TATEMENT1UEUINGATTHESTATEMENTLEVEL/NE
HINT =>NBC0C4<4=CN@D4D8=6 ALLOWSTHEQUEUINGPROCESSTOBECOMPLETELYBYPASSED EVENIFTHEFEATUREIS
TURNEDONATTHEINSTANCELEVEL4HEOTHERHINT BC0C4<4=CN@D4D8=6 TURNSONTHEQUEUINGMECHANISM
EVENIFTHEFEATUREISNOTENABLEDATTHEINSTANCELEVEL4HEBC0C4<4=CN@D4D8=6HINTPROVIDESA
DOCUMENTEDAVENUEFORUSINGTHEQUEUINGFEATUREWITHOUTENABLING!UTO$/0(EREISANEXAMPLE
SHOWINGHOWTOBYPASSTHEQUEUINGBYUSINGTHE=>NBC0C4<4=CN@D4D8=6HINT
BHB/4G31 -bTcTRW^^]
BHB/4G31 -/cTbcN_g`NWX]c
BHB/4G31 -cWXbbW^d[SRPdbT`dTdTX]VQdccWTWX]cTSbcPcT\T]cb
BHB/4G31 -bW^d[SYd\_cWT`dTdT
BHB/4G31 -P[cTabhbcT\bTcN_PaP[[T[NbcPcT\T]cN`dTdX]V,cadT*

BhbcT\P[cTaTS

BHB/4G31 -P[cTabhbcT\bTc_PaP[[T[NbTaeTabNcPaVTc,"!*

BhbcT\P[cTaTS

BHB/4G31 -bbbWcTbcN_g`NWX]c b`[ Zb^Zb^

bcPacX]V R^_XTb^UcTbcN_g`NWX]c b`[


BHB/4G31 -/`dTdTSNb`[

B83B@;N83B@;N4G42N83B@;NC4GC

#'#QVR\\Rhhhe_V( %&&&!"(bT[TRc_PaP[[T[P %PeV_ZNR^[Ua^\Zb^bZTf"P
fWTaTR^[ -
&&#QVR\\Rhhhe_V( %&&&!#
$'#QVR\\Rhhhe_V( %&&&!# 
 ((QVR\\Rhhhe_V( %&&&!#!
%&(QVR\\Rhhhe_V( %&&&!#"
"( QVR\\Rhhhe_V( %&&&!##
 %QVR\\Rhhhe_V( %&&&!#$

&a^fbbT[TRcTS

BHB/4G31 -bbbWcTbcN_g`NWX]c!b`[!Zb^Zb^

bcPacX]V!R^_XTb^UcTbcN_g`NWX]c!b`[




#(!04%2 -!+).'0#"3

BHB/4G31 -/`dTdTSNb`[

B83B@;N83B@;N4G42N83B@;NC4GC

&&#QVR\\Rhhhe_V( %&&&!#bT[TRc_PaP[[T[P %PeV_ZNR^[Ua^\Zb^bZTf"P
fWTaTR^[ -
$'#QVR\\Rhhhe_V( %&&&!# 
 ((QVR\\Rhhhe_V( %&&&!#!
%&(QVR\\Rhhhe_V( %&&&!#"
"( QVR\\Rhhhe_V( %&&&!##
 %QVR\\Rhhhe_V( %&&&!#$

%a^fbbT[TRcTS

BHB/4G31 -/Pb

B83B@;N83278;3?;0=N70B7NE0;D44G42B0E6N4C8<4B@;NC4GC

#$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 ##'$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
'$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
&$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 ##%$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 "$#$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 !$&$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 !$"$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 %$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 $%$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 %$$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
(%($e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
! $e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
!(&$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
"("$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
"(#$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
#'%$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
#''$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
$'$$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
$'%$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
&&'$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
'%'$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
'%($e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
'&!$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
(%$$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
(%&$e%VacefZQ'"% ##$' & !! '(bT[TRc=>NBC0C4<4=CN@D4D8=6
 !$$QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %
&&#QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %
#'#QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %
%&(QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %
 ((QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %
"( QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %
 %QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %


#(!04%2 -!+).'0#"3

$'#QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %


 $&QVR\\Rhhhe_V( ##$' & #!#( bT[TRc_PaP[[T[P %

"$a^fbbT[TRcTS
4HISLISTINGSHOWSTHATSTATEMENTSUSINGTHE=>NBC0C4<4=CN@D4D8=6HINTCOMPLETELYBYPASSTHE
QUEUINGMECHANISM4HESTEPSWEEXECUTEDWERETOENABLEQUEUING FIREOFFCOPIESOFASELECT
STATEMENTTHATWASHINTEDTOUSEA$/0OF4HESESTATEMENTSWEREQUEUEDASSHOWNBYTHE
`dTdTSNb`[b`[SCRIPT7ETHENFIREDOFFCOPIESOFASTATEMENTUSINGTHE=>NBC0C4<4=CN@D4D8=6HINT
4HE`dTdTSNb`[b`[SCRIPTSHOWEDTHATTHENEWSTATEMENTSWERENOTATTHEBOTTOMOFTHEQUEUE)NFACT
THEYWERENOTQUEUEDATALL4HEYWERERUNIMMEDIATELY4HEPbb`[SCRIPTSHOWSACTIVESESSIONS ANDAS
YOUCANSEE ASIDEEFFECTOFBYPASSINGTHEQUEUINGISTHATTHENUMBEROFACTIVESLAVESCANENDUPBEING
CONSIDERABLYHIGHERTHANTHESETTINGOFTHE?0A0;;4;NB4AE4ABNC0A64CPARAMETER

Controlling Queuing with Resource Manager


/RACLES$ATABASE2ESOURCE-ANAGER$"2- PROVIDESADDITIONALCAPABILITYTOCONTROL0ARALLEL
3TATEMENT1UEUING7HILEATHOROUGHDISCUSSIONOF$"2-ISBEYONDTHESCOPEOFTHISCHAPTER WEWILL
COVERSOMESPECIFICFEATURESRELATEDTO0ARALLEL1UERY#HAPTERCOVERS$"2-INMOREDETAIL
7ITHOUT$"2- THEPARALLELSTATEMENTQUEUEBEHAVESSTRICTLYASAFIRST IN FIRST OUT&)&/ QUEUE
$"2-PROVIDESSEVERALDIRECTIVEATTRIBUTESTHATCANBEUSEDTOPROVIDEADDITIONALCONTROLONACONSUMER
GROUPBASIS-ANYOFTHESECONTROLSWEREINTRODUCEDINVERSION4ABLE CONTAINSALISTOF
ADDITIONALCAPABILITIESPROVIDEDBY$"2-

Table 6-3. DBRM Parallel Statement Queuing Controls

Control Description
3PECIFYA4IMEOUT 4HE?0A0;;4;N@D4D4NC8<4>DCDIRECTIVEATTRIBUTECANBEUSEDTOSETA
MAXIMUMQUEUETIMEFORACONSUMERGROUP4HETIMELIMITISSETIN
SECONDSANDONCEITHASEXPIRED THESTATEMENTWILLTERMINATEWITH
ANERROR/2!  .OTETHATTHISDIRECTIVEDIDNOTBECOME
AVAILABLEUNTILVERSIONOFTHEDATABASE

3PECIFY-AXIMUM$/0 4HE?0A0;;4;N346A44N;8<8CN? DIRECTIVEATTRIBUTESETSAMAXIMUM


NUMBEROFPARALLELSLAVESTHATMAYBEASSIGNEDTOANINDIVIDUAL
STATEMENT4HISISEQUIVALENTTOTHE?0A0;;4;N346A44N;8<8CDATABASE
PARAMETERBUTISUSEDTOSETLIMITSFORDIFFERENTSETSOFUSERSBASEDON
CONSUMERGROUPS

-ANAGE/RDEROF$EQUEUING 4HE<6<CN? <6<CN?! x<6<CN?'DIRECTIVEATTRIBUTESCANBEUSEDTO


ALTERTHENORMAL&)&/PROCESSING4HISATTRIBUTEALLOWSPRIORITIZATION
OFDEQUEUING%ACHOFTHEEIGHTATTRIBUTESESSENTIALLYPROVIDESA
DISTINCTDEQUEUINGPRIORITYLEVEL!LLSTATEMENTSWITHAN<6<CN?
ATTRIBUTEWILLBEDEQUEUEDPRIORTOANYSTATEMENTWITH<6<CN?!)N
ADDITIONTOTHEDEQUEUINGPRIORITY APROBABILITYNUMBERCANBE
ASSIGNEDTOREGULATEDEQUEUINGOFSTATEMENTSWITHINTHESAMELEVEL


#(!04%2 -!+).'0#"3

Control Description
,IMIT0ERCENTAGEOF0ARALLEL3LAVES 4HE?0A0;;4;NC0A64CN?4A24=C064DIRECTIVEATTRIBUTECANBEUSEDTO
LIMITACONSUMERGROUPTOAPERCENTAGEOFTHEPARALLELSLAVES
AVAILABLETOTHESYSTEM3OIFASYSTEMALLOWEDSLAVESTOBEACTIVE
BEFORESTARTINGTOQUEUE AND?0A0;;4;NC0A64CN?4A24=C064WASSETTO
 THECONSUMERGROUPWOULDONLYBEABLETOCONSUMESLAVES
.OTETHATTHISDIRECTIVEDIDNOTBECOMEAVAILABLEUNTILVERSION
OFTHEDATABASE

1UEUE-ULTIPLE31,SASA3ET 4HE1468=NB@;N1;>2:AND4=3NB@;N1;>2:PROCEDURESIN
$"-3?2%3/52#%?-!.!'%2WORKWITH0ARALLEL3TATEMENT
1UEUINGBYTREATINGINDIVIDUALSTATEMENTSASIFTHEYHADBEEN
SUBMITTEDATTHESAMETIME4HEMECHANISMREQUIRESSURROUNDING
INDEPENDENT31,STATEMENTSWITHCALLSTOTHE1468=AND4=3
PROCEDURES.OTETHATTHISPROCEDUREDIDNOTBECOMEAVAILABLEUNTIL
VERSIONOFTHEDATABASE

4HE$"2-DIRECTIVESCANBEQUITEINVOLVED(EREISANEXAMPLEFROMTHEOracle® Database VLDB
and Partitioning Guide 11g Release 2 (11.2)THATSHOWSFOURDIRECTIVESMAKINGUSEOFTHE0ARALLEL
3TATEMENT1UEUINGFEATURES
31<BNA4B>DA24N<0=064A2A40C4N?;0=N38A42C8E4
A4?>ACBN?;0=BHBN6A>D?3XaTRcXeTU^abhbPRcXeXch
\V\cN_ ,- *

31<BNA4B>DA24N<0=064A2A40C4N?;0=N38A42C8E4
A4?>ACBN?;0=>C74AN6A>D?B3XaTRcXeTU^abW^acad]]X]V`dTaXTb
\V\cN_!,-&
_PaP[[T[NSTVaTTN[X\XcN_ ,-#
bfXcRWNcX\T,-%
bfXcRWNTbcX\PcT,-CAD4
bfXcRWNU^aNRP[[,-CAD4
bfXcRWNVa^d_,-<438D<NB@;N6A>D?*

31<BNA4B>DA24N<0=064A2A40C4N?;0=N38A42C8E4
A4?>ACBN?;0=<438D<NB@;N6A>D?3XaTRcXeTU^a\TSXd\ad]]X]V`dTaXTb
\V\cN_!,-!
_PaP[[T[NcPaVTcN_TaRT]cPVT,-'
bfXcRWNcX\T,-(
bfXcRWNTbcX\PcT,-CAD4
bfXcRWNU^aNRP[[,-CAD4
bfXcRWNVa^d_,-;>=6NB@;N6A>D?*

31<BNA4B>DA24N<0=064A2A40C4N?;0=N38A42C8E4
A4?>ACBN?;0=;>=6NB@;N6A>D?3XaTRcXeTU^a[^]Vad]]X]V`dTaXTb
\V\cN_!,- 
_PaP[[T[NcPaVTcN_TaRT]cPVT,-$
_PaP[[T[N`dTdTNcX\T^dc,- ##*
4HISEXAMPLEBEARSSOMEEXPLANATION


#(!04%2 -!+).'0#"3

 4HEFIRSTDIRECTIVEISFORbhbPRcXeXch3OSESSIONSINTHECONSUMERGROUP
BHBN6A>D? WILLHAVEPERCENTOFTHEHIGHESTDEQUEUINGPRIORITY<6<CN? 
 4HESECONDDIRECTIVEISFORbW^acad]]X]V`dTaXTb4HISAPPLIESTOALLSESSIONS
INTHE>C74AN6A>D?BCONSUMERGROUPTHEDEFAULTCONSUMERGROUP 4HIS
DIRECTIVESPECIFIESTHAT/RACLESHOULDEVALUATEEACH31,STATEMENTANDIFTHE
ESTIMATEDEXECUTIONTIMEISLONGERTHANSECONDSBF8C27NC8<4 THESESSIONS
SHOULDBESWITCHEDTOTHE<438D<NB@;N6A>D?CONSUMERGROUP"YTHEWAY THE
SESSIONSWITCHESBACKTO/4(%2?'2/503WHENTHESTATEMENTISCOMPLETE
BECAUSEBF8C27N5>AN20;;,-CAD44HEDEQUEUINGPRIORITY<6<CN?! ISSETTO
PERCENTMEANINGTHATSTATEMENTSSHOULDBEDEQUEUEDAFTERANY<6<CN?
STATEMENTSWITHAPROBABILITYOFPERCENTWHENCOMPAREDWITHOTHER<6<CN?!
STATEMENTS&INALLY THEMAXIMUM$/0ISSETTOBYTHE
?0A0;;4;N346A44N;8<8CN? ATTRIBUTE
 4HETHIRDDIRECTIVEISFOR\TSXd\ad]]X]V`dTaXTb)TAPPLIESTOSESSIONSINTHE
<438D<NB@;N6A>D?CONSUMERGROUP4HISDIRECTIVEALSOINCLUDESASWITCH
CAUSINGSESSIONSTOBEMOVEDTOTHE;>=6NB@;N6A>D?IF/RACLEESTIMATESA31,
STATEMENTWILLTAKELONGERTHANMINUTES!DDITIONALLY THISDIRECTIVESETSTHE
DEQUEUINGPRIORITYTOBEPERCENTOFTHESECONDPRIORITYGROUP<6<CN?! 
4HISDIRECTIVEALSOPUTSALIMITONTHEPERCENTAGEOFPARALLELSLAVESTHATMAYBE
USED?0A0;;4;NC0A64CN?4A24=C064 )NTHISCASE PERCENTOFTHETOTALSLAVES
ALLOWEDONTHESYSTEMISTHEMAXIMUMTHATMAYBEUSEDBYSESSIONSINTHIS
CONSUMERGROUP
 4HELASTDIRECTIVEISFOR[^]Vad]]X]V`dTaXTb)TAPPLIESTOSESSIONSINTHE
;>=6NB@;N6A>D?CONSUMERGROUP3ESSIONSINTHISGROUPHAVEAVERYLOW
DEQUEUINGPRIORITYASCOMPAREDTOTHEOTHERS<6<CN?!,  )TALSOLIMITSTHE
PERCENTAGEOFPARALLELSLAVESTOPERCENT&INALLY SINCESTATEMENTSINTHIS
GROUPMAYBEQUEUEDFORALONGTIME THE?0A0;;4;N@D4D4NC8<4>DCATTRIBUTE
HASBEENSETTO SECONDS3OIFASTATEMENTISQUEUEDFORHOURS ITWILL
FAILWITHATIMEOUTERROR

0ARALLEL3TATEMENT1UEUING7RAP5P
4HISSECTIONHASBEENCONSIDERABLYMOREDETAILEDTHANTHECOVERAGEOFTHEOTHERTWONEWPARALLEL
FEATURESING24HATSBECAUSETHISFEATUREISACRITICALCOMPONENTINALLOWING%XADATATOHANDLE
MIXEDWORKLOADSEFFECTIVELY)TENABLESUSTOEFFECTIVELYHANDLEAMIXTUREOFSTATEMENTSTHATARESENSITIVE
TOBOTHTHROUGHPUTANDRESPONSETIME7ITHOUTTHISFEATUREITWOULDBEVERYDIFFICULTTOPROVIDE
ADEQUATERESOURCESWITHOUTSEVERELYCOMPROMISINGONEORTHEOTHER

In-Memory Parallel Execution


4HETHIRDNEWFEATUREOFG2RELATEDTOPARALLELOPERATIONSISPROBABLYTHELEASTWELLKNOWN0RIORTO
G2 QUERIESTHATWEREPARALLELIZEDTOTALLYIGNOREDTHEBUFFERCACHE/RACLEASSUMEDTHATPARALLEL
QUERIESWOULDONLYBEDONEONVERYLARGETABLESTHATWOULDPROBABLYNEVERHAVEALARGEPERCENTAGEOF
THEIRBLOCKSINTHEBUFFERCACHE4HISASSUMPTIONLEDTOTHECONCLUSIONTHATITWOULDBEFASTERTOJUSTREAD
THEDATAFROMDISK)NADDITION FLOODINGTHEBUFFERCACHEWITHALARGENUMBEROFBLOCKSFROMAFULLTABLE
SCANWASNOTDESIRABLEANDSO/RACLEDEVELOPEDAMECHANISMCALLEDDIRECTPATHREADS WHICHBYPASSED


#(!04%2 -!+).'0#"3

THENORMALCACHINGMECHANISMINFAVOROFREADINGBLOCKSDIRECTLYINTOTHEUSERS0ROGRAM'LOBAL!REA
0'! 
4HE)N -EMORY0ARALLEL%XECUTIONFEATURETAKESADIFFERENTAPPROACH)TATTEMPTSTOMAKEUSEOFTHE
BUFFERCACHEFORPARALLELQUERIES4HEFEATUREISCLUSTER AWAREANDISDESIGNEDTOSPREADTHEDATAACROSS
THECLUSTERNODESTHATIS THE2!#DATABASESERVERS 4HEDATABLOCKSAREALSOAFFINITIZEDTOASINGLENODE
REDUCINGTHEAMOUNTOFCOMMUNICATIONANDDATATRANSFERSBETWEENTHENODES4HEGOAL OFCOURSE ISTO
SPEEDUPTHEPARALLELQUERYBYELIMINATINGDISK)/4HISCANBEAVIABLETECHNIQUEBECAUSEMANY
SYSTEMSNOWHAVEVERYLARGEAMOUNTSOFMEMORY WHICHOFCOURSECANPROVIDEASIGNIFICANTSPEED
ADVANTAGEOVERDISKOPERATIONS4HEREARESOMEDOWNSIDESTOTHISAPPROACHTHOUGH4HEBIGGEST
DISADVANTAGEWITHREGARDTO%XADATAISTHATALLTHE3MART3CANOPTIMIZATIONSAREDISABLEDBYTHISFEATURE

■+EVIN3AYS)TISTRUETHAT)N -EMORY0ARALLEL1UERY)/ISBUFFEREDINTHE3'!ANDREMAINSCACHEDˆTHUS3MART
3CANISNOTINVOLVED4HISWOULDONLYBEADISADVANTAGEIFAQUERYEXECUTESFASTERWITH3MART3CANTHANWITH)N
-EMORY0ARALLEL1UERY#OMPARINGTHEPROCESSINGDYNAMICOFAQUERYSERVICEDBY3MART3CANASOPPOSEDTO)N
-EMORY0ARALLEL1UERYISAVERYCOMPLEXTOPICˆESPECIALLYWHENCOMPRESSEDDATAISINVOLVED)NTHESAMEWAY
3MART3CANISABLETOFILTERVASTAMOUNTSOFDEEPLY COMPRESSEDDATASPECIFICALLY(## SOIS)N -EMORY0ARALLEL
1UERY4HATIS (##DATAISFILTEREDINITSCOMPRESSEDFORMREGARDLESSOFWHOISDOINGTHEFILTRATION)NTHECASEOF
3MART3CAN HOWEVER THEDATATHATSIFTSTHROUGHFILTRATIONMUSTBEDECOMPRESSIONANDSENTTOTHEDATABASEGRID
VIAI$"FORDATA INTENSIVEPROCESSINGSUCHASJOIN SORT ORAGGREGATE 7ITH)N -EMORY0ARALLEL1UERYTHEREISNO
DATAFLOWOVERI$"&URTHERMORE ATABLETHATISACCESSEDFREQUENTLYBY3MART3CANREQUIRESTHESAMEREPETITIOUS
PHYSICAL)/ FILTRATION DECOMPRESSIONWITHTHEEXCEPTIONOFRESULTS CACHEDQUERIES EACHTIMEITISACCESSED
7ITH)N -EMORY0ARALLEL1UERYTHE)/ANDI$"EFFORTISELIMINATEDAND ASWEKNOW MEMORYISFASTERTHANBOTH
HARDDISKANDFLASH7HATCUSTOMERSMUSTANALYZEISWHETHERTHEREARESUFFICIENTPROCESSORCYCLESAVAILABLEINTHE
DATABASEGRIDTOPERFORMTHEREPETITIOUSFILTRATIONANDDECOMPRESSIONOFPOPULARTABLES2EMEMBER INTHECASEOF
3MART3CANTHATEFFORTISOFFLOADEDTOTHECELLS4OCAPTHISTRAINOFTHOUGHT )LLSIMPLYSAYTHEREISNOABSOLUTE
ANSWERINTHECOMPARISONBETWEEN)N -EMORY0ARALLEL1UERYAND3MART3CAN4HEVARIABLESNEEDTOBEPLUGGEDIN
BYTHECUSTOMERUSINGTHEKNOWLEDGEGAINEDFROMREADINGTHISBOOK /RACLEDOCUMENTATIONAND PERHAPS BLOGS
SMILEYFACE 

.OTETHATWEHAVENTACTUALLYSEEN)N MEMORY0ARALLEL1UERYINTHEWILDON%XADATA WHICHIS


PROBABLYGOOD SINCEMANYOFTHEOPTIMIZATIONSBUILTINTO%XADATARELYON/FFLOADING WHICHDEPENDSON
DIRECTREADS/FCOURSEDIRECTREADSWILLNOTBEDONEIFBLOCKSAREBEINGACCESSEDINMEMORYONTHE
DATABASESERVERS/NMOSTPLATFORMS MEMORYACCESSWOULDBEMUCHFASTERTHANDIRECTREADSFROMDISK
"UTWITH%XADATA ELIMINATINGTHEDISK)/ALSOELIMINATESALARGENUMBEROF#05STHATCOULDBEAPPLIED
TOFILTERINGANDOTHEROPERATIONS4HISMEANSTHATACCESSINGTHEBUFFERCACHEFORPARALLELEXECUTIONCOULD
ACTUALLYBELESSEFFICIENTTHANALLOWINGTHESTORAGESERVERSTOPARTICIPATEINTHEEXECUTIONOFTHE31,
STATEMENT
!LITTLEDEMONSTRATIONISPROBABLYINORDERATTHISPOINT)TSWORTHNOTINGTHATGETTINGTHISFEATURETO
KICKINATALLTAKESQUITEABITOFEFFORT(EREARETHEBASICSTEPSWEHADTOTAKEINORDERTOGETITTOWORK
&IRSTWEHADTOFINDAQUERYTHATTHEOPTIMIZERESTIMATEDWOULDRUNFORLONGERTHANTHENUMBEROF
SECONDSSPECIFIEDBYTHE?0A0;;4;N<8=NC8<4NC7A4B7>;3PARAMETERASSUMINGTHESTATEMENTWASNT


#(!04%2 -!+).'0#"3

PARALLELIZED 4HEDEFAULTFORTHISPARAMETERIS0DC> MEANINGSECONDS7ESETTHISPARAMETERTO


SECONDSTOMAKEITEASIERTOTRIGGERTHE)N MEMORY0ARALLELBEHAVIOR4HISQUERYALSOHADTOBEONATABLE
THATWOULDALMOSTCOMPLETELYFITINTHEAGGREGATEBUFFERCACHEPROVIDEDBYTHECOMBINATIONOFALLTHE
PARTICIPATING2!#INSTANCES4OSIMPLIFYTHINGS WELIMITEDTHEPROCESSINGTOASINGLEINSTANCEBYSETTING
THE?0A0;;4;N5>A24N;>20;PARAMETERTOCAD4/FCOURSEWEHADTOSET?0A0;;4;N346A44N?>;82HTO0DC>TO
ENABLETHEFEATURE7EALSOSETVERYLOWVALUESFOR?0A0;;4;NB4AE4ABNC0A64CAND?0A0;;4;N346A44N;8<8C
(EREARETHEPARAMETERSETTINGSANDPERTINENTINFORMATIONABOUTTHEQUERYWEUSEDTOTESTTHEFEATURE
BHB/4G31 -/_Pa\b
4]cTaeP[dTU^a_PaP\TcTa)_PaP[[T[
4]cTaeP[dTU^aXbbTc)
4]cTaeP[dTU^abW^fNWXSST])

=0<4E0;D48B3450D;

UPbcNbcPacN_PaP[[T[Na^[[QPRZ;>FCAD4
_PaP[[T[NPSP_cXeTN\d[cXNdbTa50;B4CAD4
_PaP[[T[NPdc^\PcXRNcd]X]V50;B4CAD4
_PaP[[T[NSTVaTTN[X\Xc'50;B4
_PaP[[T[NSTVaTTN_^[XRh0DC>50;B4
_PaP[[T[NTgTRdcX^]N\TbbPVTNbXiT %"'#CAD4
_PaP[[T[NU^aRTN[^RP[CAD450;B4
_PaP[[T[NX]bcP]RTNVa^d_CAD4
_PaP[[T[NX^NRP_NT]PQ[TS50;B4CAD4
_PaP[[T[N\PgNbTaeTab"!CAD4
_PaP[[T[N\X]N_TaRT]cCAD4
_PaP[[T[N\X]NbTaeTab %50;B4
_PaP[[T[N\X]NcX\TNcWaTbW^[S"50;B4
_PaP[[T[NbTaeTaCAD4CAD4
_PaP[[T[NbTaeTaNX]bcP]RTb!CAD4
_PaP[[T[NbTaeTabNcPaVTc'50;B4
_PaP[[T[NcWaTPSbN_TaNR_d!CAD4
aTR^eTahN_PaP[[T[Xb\CAD4

'a^fbbT[TRcTS

BHB/4G31 -/_^^[N\T\

0A40<46B

UaTT\T\^ah$%!$
UXgTSNbVP! 
[^VNQdUUTa&$
bWPaTS_^^[$$&#
[PaVT_^^[#' 
QdUUTaNRPRWT"''

bd\#('$%

%a^fbbT[TRcTS

BHB/4G31 -/cPQ[TNbXiT


#(!04%2 -!+).'0#"3

4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F
4]cTaeP[dTU^ach_T)

>F=4AB46<4=CN=0<4CH?4C>C0;B8I4N<46B

:B>B:4FC01;4!$%

bd\!$%

a^fbT[TRcTS

BHB/4G31 -/SQPNcPQ[Tb
4]cTaeP[dTU^a^f]Ta):B>
4]cTaeP[dTU^acPQ[TN]P\T)B:4F

>F=4AC01;4N=0<4BC0CDB;0BCN0=0;=D<NA>FB1;>2:B346A44

:B>B:4FE0;83 'B4? "!# %!!(# 

a^fbT[TRcTS
3OTHEBUFFERCACHEONTHISINSTANCEISABOUT' THETABLEISABOUT'4HEQUERYWEUSEDIS
SIMPLEANDWILLNOTBENEFITFROMSTORAGEINDEXES ASVIRTUALLYALLTHERECORDSSATISFYTHESINGLEF74A4
CLAUSE
BHB/4G31 -RPcPeVbZTfb`[
bT[TRcPeV_ZNR^[Ua^\Zb^bZTfPfWTaTR^[ -


BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTf*

2>D=C

"!#

a^fbT[TRcTS

BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTffWTaTR^[ -*

2>D=C

"!

a^fbT[TRcTS

BHB/4G31 -bT[TRc"!"!#Ua^\SdP[*

"!"!#

(((((('&$

a^fbT[TRcTS


#(!04%2 -!+).'0#"3

.OWWELLSHOWSOMESTATISTICSBEFOREANDAFTEREXECUTINGTHESTATEMENT9OULLBEABLETOSEETHAT
WHILETHEPHYSICALREADSSTATISTICDOESNOTINCREASE THELOGICALREADSSTATISTICSHOWSALARGEINCREASE.OTE
THATWEVEDONEAQUICKCALCULATIONOFTHETOTALNUMBEROFLOGICALREADSBYSELECTINGFROMDUAL ANDTHAT
THENUMBEROFLOGICALREADS  ISVERYCLOSETOTHENUMBEROFBLOCKSTHATTHETABLEOCCUPIESAS
REPORTEDBY310NC01;4B
BHB/4G31 -/U[dbWN_^^[

BhbcT\P[cTaTS

BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)aTPSb

=0<4E0;D4

R^[SaTRhR[TaTPSb
SPcPQ[^RZbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS
[^QaTPSb
_WhbXRP[aTPSb#&% &'
_WhbXRP[aTPSbRPRWT"
_WhbXRP[aTPSbRPRWT_aTUTcRW
_WhbXRP[aTPSbSXaTRc#&% #'
_WhbXRP[aTPSbSXaTRc[^Q
_WhbXRP[aTPSbSXaTRccT\_^aPahcPQ[Tb_PRT
_WhbXRP[aTPSbU^aU[PbWQPRZ]Tf
_WhbXRP[aTPSb_aTUTcRWfPa\d_
_WhbXRP[aTPSbaTcahR^aad_c
aTR^eTahPaaPhaTPSb
bTbbX^][^VXRP[aTPSb& $!&&(
caP]bPRcX^]cPQ[TbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS

$a^fbbT[TRcTS

BHB/4G31 -bTccX\X]V^]
BHB/4G31 -/PeVbZTf

0E6?:N2>;

 %("&$'

a^fbT[TRcTS

4[P_bTS)))&!
BHB/4G31 -bTccX\X]V^UU
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)aTPSb

=0<4E0;D4

R^[SaTRhR[TaTPSb
SPcPQ[^RZbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS
[^QaTPSb


#(!04%2 -!+).'0#"3

_WhbXRP[aTPSb#&% &'
_WhbXRP[aTPSbRPRWT"
_WhbXRP[aTPSbRPRWT_aTUTcRW
_WhbXRP[aTPSbSXaTRc#&% #'
_WhbXRP[aTPSbSXaTRc[^Q
_WhbXRP[aTPSbSXaTRccT\_^aPahcPQ[Tb_PRT
_WhbXRP[aTPSbU^aU[PbWQPRZ]Tf
_WhbXRP[aTPSb_aTUTcRWfPa\d_
_WhbXRP[aTPSbaTcahR^aad_c
aTR^eTahPaaPhaTPSb
bTbbX^][^VXRP[aTPSb&" $#(#
caP]bPRcX^]cPQ[TbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS

$a^fbbT[TRcTS

BHB/4G31 -bT[TRc&" $#(#& $!&&(Ua^\SdP[*

&" $#(#& $!&&(

 %!& $

a^fbT[TRcTS

BHB/4G31 -/S_[P]
4]cTaeP[dTU^ab`[NXS)$R`!WQ a"&ca
4]cTaeP[dTU^aRWX[SN]^)

?;0=NC01;4N>DC?DC

B@;N83$R`!WQ a"&caRWX[S]d\QTa 

bT[TRcPeV_ZNR^[Ua^\Zb^bZTfPfWTaTR^[ -

?[P]WPbWeP[dT)$&'"%%& 


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\Tk

kkB4;42CBC0C4<4=Ckkkk% "( kk
k kB>AC066A460C4kk k kkk
k!k?G2>>A38=0C>Akkkkkk
k"k?GB4=3@2A0=3><k)C@ k k kkk
k#kB>AC066A460C4kk k kkk
k$k?G1;>2:8C4A0C>Akk"!<k""$<k% "( k) ) #k
k%kC01;40224BBBC>A0645D;;kB:4Fk"!<k""$<k% "( k) ) #k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


%bc^aPVT)I-,)I0=3)I+,)I0=32>; -
UX[cTa2>; -


#(!04%2 -!+).'0#"3

=^cT

Pdc^\PcXR3>?)2^\_dcTS3TVaTT^U?PaP[[T[Xb\Xb'

BHB/4G31 -/Ubg!
4]cTaeP[dTU^ab`[NcTgc)bZTf
4]cTaeP[dTU^ab`[NXS)

B@;N830E6N4C8<4?G>55;>038>NB0E43B@;NC4GC

$R`!WQ a"&ca#&'=^bT[TRcPeV_ZNR^[Ua^\
Zb^bZTfPfWTaTR^[ -

a^fbbT[TRcTS
3OASYOUCANSEE THESTATEMENTWASEXECUTEDINPARALLELWITHEIGHTSLAVESTHE08COLUMNINTHE
Ubgb`[SCRIPTOUTPUT .OTEALSOTHATTHEUbgb`[SCRIPTREPORTSANESTIMATEDVALUEFORTHE0E6N4C8<4
COLUMNWHENPARALLELSLAVESAREUSED4HISOCCURSBECAUSEeb`[REPORTSELAPSEDTIMEASTHESUMOFTHE
ALLTHEELAPSEDTIMESOFTHESLAVEPROCESSES$IVIDINGTHISNUMBERBYTHENUMBEROFSLAVESGIVESAN
ESTIMATE BUTTHATWILLNOTBETOTALLYACCURATEASSLAVESCANVARYGREATLYINTHEIRELAPSEDTIMES)FYOULOOK
BACKINTHELISTINGYOULLSEETHATTHEACTUALELAPSEDTIMEOFPeVbZTfb`[WASSECONDSINSTEADOFTHE
ESTIMATEDAVERAGEPROVIDEDBYTHEUbgb`[SCRIPTSECONDS .EVERTHELESS ITISAUSEFULMETRICWHEN
COMPARINGBETWEENTWOSTATEMENTS
,ETSNOWCOMPAREOUR)N MEMORY0ARALLEL%XECUTIONTOHOWOURSYSTEMBEHAVESWHEN)N MEMORY
0ARALLEL%XECUTIONISNOTINPLAY7ECANDISABLETHISFEATUREINACOUPLEOFWAYS4HEDOCUMENTEDWAYIS
TOSETTHE?0A0;;4;N346A44N?>;82HPARAMETERTO<0=D0;(OWEVER THISALSODISABLES!UTO$/0AND
0ARALLEL3TATEMENT1UEUING4HEOTHERWAYISTOSETTHEHIDDENPARAMETER
N?0A0;;4;N2;DBC4AN20274N?>;82HTO030?C8E4
BHB/4G31 -P[cTabhbcT\bTcN_PaP[[T[NR[dbcTaNRPRWTN_^[XRh,PSP_cXeT*

BhbcT\P[cTaTS

BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)aTPSb

=0<4E0;D4

R^[SaTRhR[TaTPSb
SPcPQ[^RZbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS
[^QaTPSb
_WhbXRP[aTPSb$ ("% 
_WhbXRP[aTPSbRPRWT" 
_WhbXRP[aTPSbRPRWT_aTUTcRW
_WhbXRP[aTPSbSXaTRc$ (""
_WhbXRP[aTPSbSXaTRc[^Q
_WhbXRP[aTPSbSXaTRccT\_^aPahcPQ[Tb_PRT
_WhbXRP[aTPSbU^aU[PbWQPRZ]Tf
_WhbXRP[aTPSb_aTUTcRWfPa\d_
_WhbXRP[aTPSbaTcahR^aad_c
aTR^eTahPaaPhaTPSb
bTbbX^][^VXRP[aTPSb' ""'"$


#(!04%2 -!+).'0#"3

caP]bPRcX^]cPQ[TbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS

$a^fbbT[TRcTS

BHB/4G31 -bTccX\X]V^]
BHB/4G31 -/PeVbZTf

0E6?:N2>;

 %("&$'

a^fbT[TRcTS

4[P_bTS)))&(
BHB/4G31 -bTccX\X]V^UU
BHB/4G31 -/\hbcPcb
4]cTaeP[dTU^a]P\T)aTPSb

=0<4E0;D4

R^[SaTRhR[TaTPSb
SPcPQ[^RZbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS
[^QaTPSb
_WhbXRP[aTPSb$"$$"$$
_WhbXRP[aTPSbRPRWT" 
_WhbXRP[aTPSbRPRWT_aTUTcRW
_WhbXRP[aTPSbSXaTRc$"$$"!#
_WhbXRP[aTPSbSXaTRc[^Q
_WhbXRP[aTPSbSXaTRccT\_^aPahcPQ[Tb_PRT
_WhbXRP[aTPSbU^aU[PbWQPRZ]Tf
_WhbXRP[aTPSb_aTUTcRWfPa\d_
_WhbXRP[aTPSbaTcahR^aad_c
aTR^eTahPaaPhaTPSb
bTbbX^][^VXRP[aTPSb'!(%"#!
caP]bPRcX^]cPQ[TbR^]bXbcT]caTPSbd]S^aTR^aSbP__[XTS

$a^fbbT[TRcTS

BHB/4G31 -bT[TRc$"$$"$$$ ("% Ua^\SdP[*

$"$$"$$$ ("% 

 %!!(#

a^fbT[TRcTS

BHB/4G31 -/Ubg!
4]cTaeP[dTU^ab`[NcTgc)bZTf
4]cTaeP[dTU^ab`[NXS)



#(!04%2 -!+).'0#"3

B@;N830E6N4C8<4?G>55;>038>NB0E43B@;NC4GC

$R`!WQ a"&ca#&'=^bT[TRcPeV_ZNR^[Ua^\
Zb^bZTfPfWTaTR^[ -
$R`!WQ a"&ca$''HTb$('!bT[TRcPeV_ZNR^[Ua^\
Zb^bZTfPfWTaTR^[ -

!a^fbbT[TRcTS
.OTICETHATWITH)N MEMORY0ARALLEL%XECUTIONDISABLED THESTATISTICSSHOWTHATTHENUMBEROF
PHYSICALREADSINCREASEDBYROUGHLYTHENUMBEROFBLOCKSINTHETABLE ASEXPECTED.OTICEALSOTHATTHE
Ubgb`[SCRIPTSHOWSTHATTHEREISNOWANEWCURSORINTHESHAREDPOOLTHATWASEXECUTEDWITHEIGHT
PARALLELSLAVES BUTTHATWASOFFLOADEDTOTHESTORAGETIER4HISISANIMPORTANTPOINT)N MEMORY0ARALLEL
%XECUTIONDISABLESTHEOPTIMIZATIONSTHAT%XADATAPROVIDESVIA3MART3CANS4HATSHOULDBEOBVIOUS
SINCETHEDISK)/WASELIMINATEDBYTHE)N MEMORY0ARALLEL%XECUTIONFEATURE BUTITISTHEMAINREASON
THATWEBELIEVETHISFEATUREWILLNOTBEASUSEFULONTHE%XADATAPLATFORMASONOTHERPLATFORMS
!SAFINALDEMONSTRATION WELLSHOWAVERYSELECTIVEQUERYTHATBENEFITSMOREFROM/FFLOADINGTHAN
ITDOESFROM)N MEMORY0ARALLEL%XECUTION
BHB/4G31 -/_Pa\b
4]cTaeP[dTU^a_PaP\TcTa)_PaPRPRWT
4]cTaeP[dTU^aXbbTc)
4]cTaeP[dTU^abW^fNWXSST])H

=0<4E0;D48B3450D;

N_PaP[[T[NR[dbcTaNRPRWTN_Rc'CAD4
N_PaP[[T[NR[dbcTaNRPRWTN_^[XRh030?C8E4CAD4

!a^fbbT[TRcTS

BHB/4G31 -8]\T\^ah?PaPT[[T[4gTRdcX^]Xb^UU
BHB/4G31 -
BHB/4G31 -/U[dbWN_^^[

BhbcT\P[cTaTS

BHB/4G31 -bTccX\X]V^]
BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTffWTaTR^[ Xb]d[[*

2>D=C

#

a^fbT[TRcTS

4[P_bTS)))!%
BHB/4G31 -P[cTabhbcT\bTcN_PaP[[T[NR[dbcTaNRPRWTN_^[XRh,RPRWTS*

BhbcT\P[cTaTS

4[P_bTS))) 


#(!04%2 -!+).'0#"3

BHB/4G31 -bT[TRcR^d]cUa^\Zb^bZTffWTaTR^[ Xb]d[[*



2>D=C

#

a^fbT[TRcTS

4[P_bTS)))'#
BHB/4G31 -bTccX\X]V^UU
BHB/4G31 -/Ubg!
4]cTaeP[dTU^ab`[NcTgc)bZTf
4]cTaeP[dTU^ab`[NXS)

B@;N830E6N4C8<4?G>55;>038>NB0E43B@;NC4GC

#aiVYdfa(Yh` #'HTb bT[TRcR^d]cUa^\Zb^bZTf
fWTaTR^[ Xb]d[[
#aiVYdfa(Yh`&!'=^bT[TRcR^d]cUa^\Zb^bZTf
fWTaTR^[ Xb]d[[

!a^fbbT[TRcTS
)NTHISCASE /FFLOADINGWASMOREEFFECTIVEFASTER THANUSING)N MEMORY0ARALLEL%XECUTION
PRIMARILYBECAUSE3TORAGE)NDEXESWEREABLETOELIMINATEANEXTREMELYLARGEPERCENTAGEOFTHEDISK)/
3OTHECOMPARISONCAMEDOWNTOREADINGABOUT'IGABYTESFROMTHEBUFFERCACHEONTHEDATABASE
SERVERVSREADINGTHE3TORAGE)NDEXESANDAHANDFULOFBLOCKSOFFDISK'RANTEDTHISISAVERYSIMPLE
CONTRIVEDEXAMPLE BUTITILLUSTRATESTHEPOINTTHATTHEREMAYBECASESWHERE3MART3CANISFASTERTHAN)N
MEMORY0ARALLEL1UERY

Summary
0ARALLELEXECUTIONOFSTATEMENTSISIMPORTANTFORMAXIMIZINGTHROUGHPUTONTHE%XADATAPLATFORM
/RACLEDATABASEG2ELEASEINCLUDESSEVERALNEWFEATURESTHATMAKETHEPARALLELEXECUTIONAMORE
CONTROLLABLEFEATURE4HISISESPECIALLYIMPORTANTWHENUSINGTHEPLATFORMWITHMIXEDWORKLOADS4HE
NEW!UTO$/0FEATUREISDESIGNEDTOALLOWINTELLIGENTDECISIONSABOUT$/0TOBEMADEAUTOMATICALLY
BASEDONINDIVIDUALSTATEMENTS)N MEMORY0ARALLEL%XECUTIONMAYNOTBEASUSEFULON%XADATA
PLATFORMSASITISONNON %XADATAPLATFORMS BECAUSEITDISABLESTHEOPTIMIZATIONSTHATCOMEALONGWITH
3MART3CANS/FTHETHREENEWFEATURES 0ARALLEL3TATEMENT1UEUINGISTHEMOSTUSEFULASITALLOWSA
MIXTUREOFTHROUGHPUT ORIENTEDWORKTOCO EXISTWITHRESPONSE TIMEnSENSITIVEWORK)NTEGRATIONWITH
/RACLE2ESOURCE-ANAGERFURTHERENHANCESTHEFEATUREBYPROVIDINGAGREATDEALOFADDITIONALCONTROL
OVERTHEQUEUING


CHAPTER 7



Resource Management

)FRESOURCESWEREUNLIMITED THEREWOULDBENONEEDTOMANAGETHEM7ESEETHISINALLASPECTSOFOUR
DAILYLIVES)FYOURSWASTHEONLYCARONTHEROAD TRAFFICSIGNALSWOULDNTBENECESSARY)FYOUWERETHE
ONLYCUSTOMERATTHEBANK THEREWOULDBENONEEDFORTHEWINDINGROPESTHATFORMORDERLYLINES"UTAS
WEALLKNOW THISISRARELYTHECASE)TISTHESAMEFORDATABASESERVERS7HENTHELOADONTHESYSTEMIS
LIGHT THEREISVERYLITTLENEEDFORRESOURCEMANAGEMENT0ROCESSESCOMPLETEINAFAIRLYCONSISTENTPERIOD
OFTIME"UTWHENTHESYSTEMGETSBUSYANDRESOURCESBECOMESCARCE WECANFINDOURSELVESWITHAN
ANGRYMOBONOURHANDS
&ORANUMBEROFYEARSNOW /RACLES$ATABASE2ESOURCE-ANAGER$"2- HASPROVIDEDANEFFECTIVE
WAYTOMANAGETHEALLOCATIONOFCRITICALRESOURCESWITHINTHEDATABASE7ITHOUT$"2- ALLDATABASE
CONNECTIONSARETREATEDWITHEQUALPRIORITY ANDTHEYARESERVICEDINASORTOFROUND ROBINFASHIONBYTHE
OPERATINGSYSTEMSCHEDULER7HENTHESYSTEMISUNDERHEAVYLOAD ALLSESSIONSAREIMPACTEDEQUALLY
,OW PRIORITYAPPLICATIONSRECEIVEJUSTASHIGHAPRIORITYASBUSINESS CRITICALAPPLICATIONS)TISNOT
UNCOMMONTOSEEAFEWPOORLYWRITTENAD HOCQUERIESDEGRADETHEPERFORMANCEOFMISSION CRITICAL
APPLICATIONS)FYOUVEBEENA$"!LONGENOUGH ESPECIALLYINDATAWAREHOUSEENVIRONMENTS YOURE
PROBABLYFAMILIARWITHTHE5NIXaT]XRTCOMMAND)TISAROOT LEVELCOMMANDTHATALLOWSYOUTO
INFLUENCETHE#05PRIORITYOFAPROCESSATTHEOPERATING SYSTEMLEVEL!NUMBEROFYEARSAGO WEWORKED
INA$"!GROUPSUPPORTINGAPARTICULARLYHEAVILYLOADEDDATAWAREHOUSE4HEaT]XRTCOMMANDWASUSED
FREQUENTLYTOTHROTTLEBACK#05PRIORITYFORDATABASESESSIONSTHATWEREDOMINATINGTHESYSTEM4HERE
WEREACOUPLEOFOBVIOUSPROBLEMSWITHTHISAPPROACH&IRSTOFALL ITWASAPRIVILEGEDCOMMANDAVAILABLE
ONLYTOTHEROOTUSER ANDSYSTEMADMINISTRATORSWERERELUCTANTTOGRANT$"!SACCESSTOIT4HESECOND
PROBLEMWASTHATAUTOMATINGITTOMANAGE#05RESOURCESWASDIFFICULTATBEST/RACLES$ATABASE
2ESOURCE-ANAGERISAMUCHMOREELEGANTSOLUTIONTOTHEPROBLEM)TALLOWS$"!STOADDRESSRESOURCE
ALLOCATIONWITHINTHEDOMAINOFTHEDATABASEITSELF)TISAWELL ORGANIZED FRAMEWORKTHATISAUTOMATED
BYDESIGN)TENSURESTHATCRITICALSYSTEMRESOURCESLIKE#05AND)/WILLBEAVAILABLETOYOURIMPORTANT
APPLICATIONSWHENEVERTHEYARENEEDED EVENWHENTHESYSTEMISUNDERAHEAVYWORKLOAD4HISISDONE
BYCREATINGRESOURCEALLOCATIONSCHEMESTHATDEFINEPRIORITIESBASEDONTHENEEDSOFTHEBUSINESS
!NOTHERCASEFORRESOURCEMANAGEMENTISCONSOLIDATION)TWASINEVITABLETHATAPLATFORMWITHTHE
PERFORMANCE CAPACITY ANDSCALABILITYOF%XADATAWOULDBEVIEWEDBYMANYASANIDEALCONSOLIDATION
PLATFORM"UTCONSOLIDATINGDATABASESISACHALLENGE MAINLYBECAUSEOFTHEDIFFICULTYOFMANAGING
RESOURCESACROSSDATABASES7EVEWORKEDWITHANUMBEROFCLIENTSWHOHAVEUSED%XADATATO
CONSOLIDATEMULTIPLEDATABASESERVERSONTOTHE%XADATAPLATFORM/NESUCHCLIENTCONSOLIDATED
DATABASESFROMDATABASESERVERSONTOTWO%XADATAFULLRACKS.EEDLESSTOSAY WITHOUT/RACLES
RESOURCEMANAGEMENTCAPABILITIES ITWOULDBEEXTREMELYDIFFICULT IFNOTIMPOSSIBLE TOBALANCESYSTEM
RESOURCESAMONGSOMANYDATABASEENVIRONMENTS5NTILRECENTLYTHEREWASREALLYNOWAYTOPRIORITIZE
)/ACROSSDATABASES7ITH%XADATA6 /RACLEINTRODUCED)/2ESOURCE-ANAGER)/2- ANDFORTHE
FIRSTTIMEWECANVIRTUALLYGUARANTEE)/SERVICELEVELSWITHINANDAMONGDATABASES
3OWHETHERYOUARECONSOLIDATINGMULTIPLEDATABASESONTOYOUR%XADATAPLATFORMORHANDLING
RESOURCEINTENSIVEAPPLICATIONSWITHINASINGLEDATABASE EFFECTIVERESOURCEMANAGEMENTWILLPLAYAN


#(!04%2 2%3/52#%-!.!'%-%.4

IMPORTANTROLEINYOURSUCCESS)NTHISCHAPTERWEWILLREVIEWANDDEMONSTRATETHEMAINCOMPONENTSOF
$"2-ANDHOWITISUSEDTOMANAGEANDALLOCATE#05RESOURCESEFFECTIVELYWITHINADATABASE7ELLALSO
TAKEALOOKATinstance cagingANDHOWITCANBEUSEDTOSETLIMITSONTHEAMOUNTOF#05ADATABASEMAY
USEINORDERTOPROVIDEPREDICTABLESERVICELEVELSFORMULTI TENANTDATABASEENVIRONMENTS)NTHELASTHALF
OFTHECHAPTERWELLCOVERTHENEW%XADATA SPECIFICFEATURECALLED)/2ESOURCE-ANAGER WHICHALLOCATES
ANDPRIORITIZESDISK)/ATTHESTORAGECELL
/RACLE2ESOURCE-ANAGER FORALLITSBENEFITS HASBEENANINFREQUENTLYUSEDFEATUREOFTHEDATABASE
4HISISLARGELYDUETOITSCOMPLEXITYANDAGENERALLACKOFUNDERSTANDINGAMONGTHE$"!COMMUNITY
"EYONDINTRODUCINGTHENEW%XADATA SPECIFICFEATURESOF2ESOURCE-ANAGER OURGOALSINPRESENTINGTHIS
MATERIALARETWOFOLD&IRSTWEWANTTOPROVIDEENOUGHDETAILTODEMYSTIFY/RACLE2ESOURCE-ANAGER
WITHOUTOVERWHELMINGTHEREADER3ECOND WEINTENDTODEMONSTRATEHOWTOBUILDAFULLYFUNCTIONAL
RESOURCEMANAGEMENTMODEL4HESEGOALSPRESENTAUNIQUECHALLENGE0ROVIDETOOLITTLEINFORMATION
ANDTHEREADERWILLONLYBEABLETOSETUPVERYSIMPLECONFIGURATIONS4OOMUCHDETAIL ANDWERISK
CONVOLUTINGTHETOPICANDLOSINGTHEAUDIENCE4HEMOSTDIFFICULTPARTOFWRITINGTHISCHAPTERHASBEEN
STRIKINGABALANCEBETWEENTHETWO!SYOUREADTHROUGHTHEEXAMPLESYOUWILLNOTICETHATWEUSED
MULTI LEVELRESOURCEPLANS4HISISNOTTOSUGGESTTHATINORDERTOBEEFFECTIVE YOUMUSTUSECOMPLEX
MULTI LEVELPLANS)NFACT SIMPLE SINGLE LEVELRESOURCEPLANSWILLSOLVEAVASTMAJORITYOFTHERESOURCE
MANAGEMENTPROBLEMSWESEEINTHEREALWORLD-OREOVER MULTI LEVELRESOURCEPLANSCANBEDIFFICULTTO
DESIGNANDTEST)NTHISCHAPTERWEDEMONSTRATEMULTI LEVELPLANSBECAUSEITISIMPORTANTTOUNDERSTAND
HOWTHEYWORK"UTIFYOUARECONSIDERINGUSING/RACLE2ESOURCE-ANAGER THEBESTAPPROACHISTOKEEP
ITSIMPLE ANDADDFEATURESONLYASTHEYARENEEDED

Database Resource Manager


$ATABASE2ESOURCE-ANAGER$"2- HASBEENAROUNDFORANUMBEROFYEARSANDISBASICALLYGEARED
TOWARDMANAGING#05RESOURCESAND)/INDIRECTLY ATTHEDATABASETIER%XADATA6INTRODUCEDANEW
FEATURECALLED)/2ESOURCE-ANAGER)/2- WHICH ASYOUMIGHTEXPECT ISGEAREDTOWARDMANAGING
ANDPRIORITIZING)/ATTHESTORAGECELL7HENDATABASESON%XADATAREQUEST)/FROMTHESTORAGECELLS
THEYSENDADDITIONALINFORMATIONALONGWITHTHEREQUESTTHATIDENTIFIESTHEDATABASEMAKINGTHEREQUEST
ASWELLASTHECONSUMERGROUPMAKINGTHEREQUEST4HESOFTWAREONTHESTORAGECELLS#ELLSERVORRT[[bae
KNOWSABOUTTHEPRIORITIESYOUESTABLISHINSIDETHEDATABASE$"2- ANDORATTHE3TORAGE#ELL)/2-
ANDITMANAGESHOW)/ISSCHEDULED$"2-AND)/2-ARETIGHTLYKNITTOGETHER SOITISIMPORTANTTO
HAVEASOLIDUNDERSTANDINGOF$"2-BEFORE)/2-ISGOINGTOMAKEANYSENSETOYOU.OW $ATABASE
2ESOURCE-ANAGERISALENGTHYTOPICANDCOULDEASILYJUSTIFYABOOKALLBYITSELF3OHERE WELLFOCUSON
THEBASICCONSTRUCTSTHATWEWILLNEEDFORCONSTRUCTINGANEFFECTIVE)/2-2ESOURCE0LAN)FYOUALREADY
HAVEEXPERIENCEWITH$"2- YOUMAYBEABLETOSKIPOVERTHISTOPIC BUTBEAWARETHATTHEEXAMPLESIN
THISSECTIONWILLBEUSEDASWEDISCUSS)/2-INTHELASTHALFOFTHECHAPTER
"EFOREWEBEGIN LETSREVIEWTHETERMINOLOGYTHATWILLBEUSEDINTHISTOPIC4ABLE DESCRIBESTHE
VARIOUSCOMPONENTSOF$ATABASE2ESOURCE-ANAGER7ELLDISCUSSTHESEINMOREDETAILASWEGOALONG


#(!04%2 2%3/52#%-!.!'%-%.4

Table 7-1. Resource Manager Components

Name Description

2ESOURCECONSUMERGROUP 4HESEARETHEVARIOUSNAMESBYWHICHYOUMAYSEERESOURCE
CONSUMERGROUPSREFERRED2ESOURCE-ANAGERALLOCATES
#ONSUMERGROUP RESOURCESTOCONSUMERGROUPS RATHERTHANUSERSESSIONS!
CONSUMERGROUPISASETOFDATABASESESSIONSTHATMAYBE
GROUPEDTOGETHERBASEDONTHEIRPRIORITY ANDORRESOURCE
REQUIREMENTS

2ESOURCEPLANDIRECTIVE 4HESEARETHENAMESBYWHICHYOUMAYSEERESOURCEPLAN
DIRECTIVESREFERRED2ESOURCEALLOCATIONSARENOTASSIGNED
0LANDIRECTIVE DIRECTLYTOCONSUMERGROUPS4HEYAREDEFINEDINARESOURCE
$IRECTIVE PLANDIRECTIVE!CONSUMERGROUPISTHENASSIGNEDTOTHEPLAN
DIRECTIVESOTHATRESOURCEALLOCATIONSMAYBEENFORCED

2ESOURCEPLAN 2ESOURCEPLANSARESOMETIMESREFERREDTOSIMPLYAShPLANSv OR


hTHEPLANv0LANDIRECTIVESAREGROUPEDTOGETHERTOCREATEA
0LAN RESOURCEPLAN THUSDEFININGTHEOVERARCHINGALLOCATIONOF
RESOURCESTOALLSESSIONSWITHINTHEDATABASE


!SSHOWNINTHETABLE $"2-CONSISTSOFTHREEMAINCOMPONENTSRESOURCECONSUMERGROUPS
CONSUMERGROUPS RESOURCEPLANDIRECTIVESPLANDIRECTIVES ANDRESOURCEPLANS
Consumer groups: !CONSUMERGROUPCANREPRESENTASINGLEDATABASESESSIONORA
GROUPOFSESSIONS'ENERALLYSPEAKING CONSUMERGROUPSCONSISTOFENDUSERSOR
APPLICATIONGROUPSTHATSHAREACOMMONBUSINESSPRIORITY'ROUPINGSESSIONS
TOGETHERINTHISMANNERALLOWRESOURCESTOBEASSIGNEDANDMANAGEDCOLLECTIVELY
&OREXAMPLE INAMIXED WORKLOADDATABASEENVIRONMENT CONSUMERGROUP
ASSIGNMENTSALLOWYOUTOCOLLECTIVELYASSIGNMORE#05AND)/RESOURCESTOYOUR
HIGH PRIORITYBUSINESSAPPLICATIONSWHILEREDUCINGTHERESOURCESALLOCATEDTOLOW
PRIORITYAPPLICATIONS
Plan directives: 0LANDIRECTIVESAREWHEREYOUDEFINEYOURRESOURCEALLOCATIONS!
PLANDIRECTIVEISCREATEDUSINGTHE2A40C4N?;0=N38A42C8E4PROCEDURE)NADDITIONTO
DEFININGTHERESOURCEALLOCATIONITSELFPERCENTAGEOF#05 FOREXAMPLE THE
PROCEDUREALSOREQUIRESYOUTONAMEONERESOURCEPLANANDONECONSUMERGROUP
)NTHISWAY APLANDIRECTIVEhLINKS vORASSIGNSACONSUMERGROUPTOARESOURCEPLAN
/NLYONECONSUMERGROUPMAYBEASSIGNEDTOADIRECTIVE ANDRESOURCEPLANS
TYPICALLYCONSISTOFMULTIPLEDIRECTIVES9OUCANSAYTHATACONSUMERGROUPIS
ASSIGNEDTOARESOURCEPLANTHROUGHTHECREATIONOFAPLANDIRECTIVE
Resource plan:4HERESOURCEPLANISTHECOLLECTIONOFDIRECTIVESTHATDETERMINEHOW
ANDWHERERESOURCESAREALLOCATED/NLYONEPLANMAYBEACTIVATEDINTHEDATABASE
INSTANCEATANYGIVENTIME4HERESOURCEPLANISACTIVATEDBYASSIGNINGITTOTHE
A4B>DA24N<0=064AN?;0=INSTANCEPARAMETER&OREXAMPLE THEFOLLOWINGP[cTa
bhbcT\COMMANDACTIVATESTHERESOURCEPLAN@\h_[P]


#(!04%2 2%3/52#%-!.!'%-%.4

B@;-P[cTabhbcT\bTcaTb^daRTN\P]PVTaN_[P],z\h_[P]z*
!DATABASESRESOURCEPLANMAYBECHANGEDATANYTIME ALLOWINGYOUTOREALLOCATE
RESOURCESATVARIOUSTIMESOFTHEDAY WEEK ORMONTHINORDERTOMEETTHEVARYING
WORKLOADREQUIREMENTSOFYOURBUSINESS7HENTHERESOURCEPLANISACTIVATED NO
RESOURCESAREALLOCATEDTOINDIVIDUALUSERSESSIONS)NSTEAD RESOURCESAREALLOCATED
TOTHECONSUMERGROUPSACCORDINGTOTHEDIRECTIVESINTHERESOURCEPLAN

#ONSUMER'ROUPS
7HENARESOURCEPLANISACTIVATED $"2-EXAMINESKEYATTRIBUTESOFALLSESSIONSINTHEDATABASEAND
ASSIGNSTHEMTOCONSUMERGROUPS3ESSIONSAREASSIGNEDTOCONSUMERGROUPSBYMEANSOFMAPPINGRULES
THATYOUDEFINE&OREXAMPLE ASETOFUSERACCOUNTSCANBEMAPPEDTOACONSUMERGROUPBASEDONTHEIR
USERNAMEORTHEMACHINEFROMWHICHTHEYARELOGGINGIN!USERMAYBELONGTOMANYDIFFERENT
CONSUMERGROUPSANDMAYBEDYNAMICALLYREASSIGNEDFROMONECONSUMERGROUPTOANOTHEREVENINTHE
MIDDLEOFEXECUTINGA31,STATEMENTORQUERY3INCEDATABASERESOURCESAREALLOCATEDONLYTOCONSUMER
GROUPS REASSIGNINGASESSIONTOANOTHERGROUPIMMEDIATELYCHANGESITSRESOURCEALLOCATION!LLSESSIONS
INACONSUMERGROUPSHARETHERESOURCESOFTHATGROUP&OREXAMPLE IFTHE0??BCONSUMERGROUPIS
ALLOCATEDOFTHETOTAL#05ONTHESERVER ALLSESSIONSBELONGINGTOTHATCONSUMERGROUPWILLEQUALLY
SHARETHEALLOCATIONOF#054HEREARETWOBUILT INCONSUMERGROUPSINEVERYDATABASEBHBN6A>D?
AND>C74AN6A>D?B4HESEGROUPSCANNOTBEMODIFIEDORDROPPED
BHBN6A>D?:4HISISTHEDEFAULTCONSUMERGROUPFORTHE393AND3934%-USER
ACCOUNTS4HESEACCOUNTSMAYBEASSIGNEDTOANOTHERCONSUMERGROUPUSING
MAPPINGRULESWELLDISCUSSINTHENEXTSECTION
>C74AN6A>D?B:4HISISTHEDEFAULTCONSUMERGROUP!NYSESSIONSTHATBELONGTOA
CONSUMERGROUPTHATISNOTDEFINEDINTHECURRENTLYACTIVERESOURCEPLANWILL
AUTOMATICALLYBEMAPPEDTOTHISCONSUMERGROUP4HISIS/RACLESWAYOFMAKING
SUREALLUSERSESSIONSAREASSIGNEDTOACONSUMERGROUPINTHEACTIVERESOURCEPLAN

 .OTE7EWOULDHAVEPREFERREDANAMELIKE/4(%2FORTHATLASTCONSUMERGROUP BUTYES ITREALLYISNAMED


h/4(%2?'2/503 vNOT/4(%2?'2/50 OR/4(%27EMUSTHAVEBEENOUTOFTOWNWHEN,ARRYCALLEDTOASKOUR
OPINIONONTHISONE

Consumer Group Mapping Rules


!LLUSERSESSIONSEXCEPT393AND3934%- AREMAPPEDBYDEFAULTTOTHECONSUMERGROUP>C74AN6A>D?B
4HISBEHAVIORCANBEMODIFIEDUSINGMAPPINGRULESSOTHATSESSIONSAREAUTOMATICALLYREASSIGNEDTO
OTHERCONSUMERGROUPS)FTHEREISNOMAPPINGRULEFORASESSION ORIFTHEMAPPINGRULESASSIGNTHE
SESSIONTOACONSUMERGROUPTHATISNOTNAMEDINTHECURRENTLYACTIVEPLAN THENITWILLBEAUTOMATICALLY
ASSIGNEDTOTHISBUILT INCONSUMERGROUP%VERYRESOURCEPLANMUSTHAVETHE>C74AN6A>D?BRESOURCE
GROUPTOHANDLETHISCONDITION4HEFOLLOWINGEXAMPLESHOWSHOWAMAPPINGRULEISCREATED4HIS
MAPPINGRULECALLSFORTHEC?>34AACCOUNTTOBEAUTOMATICALLYASSIGNEDTOTHEA4?>ACBCONSUMERGROUP
WHILEANYONELOGGINGINUSINGTHE?Pha^[[TgTAPPLICATIONWILLBEMAPPEDTOTHE0??BCONSUMERGROUP


#(!04%2 2%3/52#%-!.!'%-%.4

1468=
31<BNA4B>DA24N<0=064AB4CN2>=BD<4AN6A>D?N<0??8=6
31<BNA4B>DA24N<0=064A>A02;4NDB4AC?>34AA4?>ACB*
31<BNA4B>DA24N<0=064AB4CN2>=BD<4AN6A>D?N<0??8=6
31<BNA4B>DA24N<0=064A2;84=CN?A>6A0<_Pha^[[TgT0??B*
4=3*
4HEREARETWOTYPESOFSESSIONATTRIBUTESTHATCANBEUSEDTOCREATEMAPPINGRULESloginATTRIBUTES
ANDruntimeATTRIBUTES,OGINATTRIBUTESARESETWHENTHEUSERLOGSINANDDONOTCHANGEDURINGTHELIFEOF
THESESSION2ESOURCE-ANAGERUSESLOGINATTRIBUTESTODETERMINEWHICHCONSUMERGROUPTHESESSION
SHOULDINITIALLYBEASSIGNEDTO2UNTIMEATTRIBUTESARESETATRUNTIMEANDCANBECHANGEDATANYTIME
DURINGTHELIFEOFTHESESSIONBYTHECLIENTAPPLICATION4ABLE DESCRIBESTHESESSIONATTRIBUTES
2ESOURCE-ANAGERCANUSEFORCREATINGSESSION TO CONSUMER GROUPMAPPINGRULES

Table 7-2. Consumer Group Mapping Rule Attributes

Session Attribute Type Description

4G?;828C NA 4HISATTRIBUTEREFERSTOTHEEXPLICITREQUESTBYAUSERTO


SWITCHTOANOTHERCONSUMERGROUPUSINGONEOFTHE
FOLLOWINGSTOREDPROCEDURESINTHE31<BNB4BB8>=
PACKAGE
v BF8C27N2DAA4=CN2>=BD<4AN6A>D?
v BF8C27N2>=BD<4AN6A>D?N5>ANB4BB
v BF8C27N2>=BD<4AN6A>D?N5>ANDB4A
)TISACOMMONPRACTICETOSETTHEPRIORITYOFTHIS
MAPPINGATTRIBUTETOTHEHIGHESTLEVEL

>A02;4NDB4A ,OGIN 4HISISTHEDB4A=0<4COLUMNFROMebTbbX^])TISTHE


USERNAMETHESESSIONUSEDTOAUTHENTICATETOTHE
DATABASEDURINGLOGIN

B4AE824N=0<4 ,OGIN 4HISISTHEDATABASESERVICENAMEUSEDTOCONNECTTOTHE


DATABASE)TISTHEB4AE824N=0<4COLUMNINTHEebTbbX^]
VIEW

2;84=CN>BNDB4A ,OGIN 4HISISTHEOPERATINGSYSTEMUSERACCOUNTOFTHE


MACHINETHEUSERISCONNECTINGFROM)TISTHE>BDB4A
COLUMNFROMTHEebTbbX^]VIEW

2;84=CN?A>6A0< ,OGIN 4HISISTHEEXECUTABLEFILETHEENDUSERISUSINGTO


CONNECTTOTHEDATABASEFOREXAMPLE b`[_[dbfTgT
2ESOURCE-ANAGEREVALUATESTHISVALUEWITHOUT
CONSIDERATIONOFCASE UPPERORLOWER 


#(!04%2 2%3/52#%-!.!'%-%.4

Session Attribute Type Description

2;84=CN<0278=4 ,OGIN 4HISISTHEMACHINEFROMWHICHTHEUSERISCONNECTINGTO


THEDATABASE)TAPPEARSINTHE<0278=4COLUMNOFTHE
ebTbbX^]VIEW

<>3D;4N=0<4 2UNTIME 4HISISTHEMODULENAMESETBYTHEAPPLICATION


CONNECTINGTOTHEDATABASE)TISSTOREDINTHE<>3D;4
COLUMNOFTHEebTbbX^]VIEWANDISSETBYCALLINGTHE
31<BN0??;820C8>=N8=5>B4CN<>3D;4PROCEDURE4HISIS
ANOPTIONALSETTING ANDSOMEAPPLICATIONSDONOTUSEIT

<>3D;4N=0<4N02C8>= 2UNTIME 4HISISACONCATENATIONOFTHEMODULEANDACTIONINTHE


FORMmodule.action.4HEAPPLICATIONSETSTHESE
ATTRIBUTESBYCALLINGTHEFOLLOWINGPROCEDURES
v 31<BN0??;820C8>=N8=5>B4CN<>3D;4
v 31<BN0??;820C8>=N8=5>B4CN02C8>=
B4AE824N<>3D;4 2UNTIME 4HISATTRIBUTEISTHECONCATENATIONOFTHESERVICENAME
USEDTOCONNECTTOTHEDATABASE ANDTHE<>3D;4
ATTRIBUTEINTHEFORMservice.module

B4AE824N<>3D;4N02C8>= 2UNTIME 4HISATTRIBUTEISTHECONCATENATIONOFTHESERVICENAME


MODULE ANDACTIONINTHEFORMservice.module.action

>A02;4N5D=2C8>= 2UNTIME 4HISISASPECIALATTRIBUTETHATISMAINTAINEDINTERNALLY


BYTHEDATABASE)TISSETWHENRUNNING2-!.OR$ATA
0UMP4HISATTRIBUTECANBESETTO102:D? TOPERFORMA
QPRZd_qPbQPRZd_bTc OR2>?H TOPERFORMAQPRZd_q
PbR^_h7HEN$ATA0UMPISUSEDTOLOADDATAINTOTHE
DATABASE THISATTRIBUTEISSETTO30C0;>034HESE
ATTRIBUTESAREAUTOMATICALLYMAPPEDTOBUILT IN
CONSUMERGROUPSSUCHAS10C27N6A>D?AND%4,?'2/50

 4IPB4AE824N<>3D;4 02C8E4NB4BBN?>>;N? AND@D4D48=6N? ARENOTCOMMONLYUSEDANDMAYBE


DEPRECATEDINFUTURERELEASES&ORATTRIBUTESOTHERTHAN>A02;4NDB4AANDB4AE824N=0<4IN4ABLE  YOUCAN
ALSOUSEWILDCARDSSUCHAS?ANDFORSINGLEANDMULTIPLECHARACTERS RESPECTIVELY

#ONFLICTSCANOCCURBETWEENMAPPINGRULESWHENAUSERACCOUNTMATCHESMORETHANONERULE
/RACLERESOLVESTHESECONFLICTSBYALLOWINGYOUTOSPECIFYTHERELATIVEPRIORITYOFEACHATTRIBUTE4HISWAY
/RACLECANAUTOMATICALLYDETERMINEWHICHRULEATTRIBUTE SHOULDTAKEPRECEDENCEWHENSESSION
ATTRIBUTESSATISFYMULTIPLEMAPPINGRULES4HEDEFAULTPRIORITIESFORTHE>A02;4NDB4AAND
2;84=CN0??;820C8>=ATTRIBUTESAREAND RESPECTIVELY)NTHEFOLLOWINGEXAMPLE )VEPROMOTEDTHE


#(!04%2 2%3/52#%-!.!'%-%.4

2;84=CN?A>6A0<TOPOSITION ANDTHE>A02;4NDB4ATOPOSITION.OWTHECLIENTAPPLICATIONESTABLISHING
ADATABASECONNECTIONWILLTAKEPRECEDENCEOVERTHECLIENTSDB4A=0<4
1468=
SQ\bNaTb^daRTN\P]PVTaR[TPaN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTabTcNR^]bd\TaNVa^d_N\P__X]VN_aX
4G?;828C,- 
CLIENT_PROGRAM => 2,
ORACLE_USER => 3,
B4AE824N<>3D;4N02C8>=,-#
B4AE824N<>3D;4,-$
<>3D;4N=0<4N02C8>=,-%
<>3D;4N=0<4,-&
B4AE824N=0<4,-'
2;84=CN<0278=4,-(
2;84=CN>BNDB4A,- *
SQ\bNaTb^daRTN\P]PVTabdQ\XcN_T]SX]VNPaTP*
4=3*

&OREXAMPLE USINGTHEMAPPINGRULESANDPRIORITIESWEVECREATEDSOFAR LETSSAYC?>34ALOGSINTOTHE
DATABASE!CCORDINGTOTHE>A02;4NDB4AMAPPINGRULE THISUSERWOULDORDINARILYBEASSIGNEDTOTHE
A4?>ACBCONSUMERGROUP"UTIFC?>34ALOGSINFROMTHECOMPANYS0AYROLLAPPLICATION HISSESSIONWILLBE
MAPPEDTOTHE0??BCONSUMERGROUP4HISISBECAUSEACCORDINGTOTHERULEPRIORITIES THE
2;84=CN0??;820C8>=MAPPINGRULETAKESPRECEDENCEOVER>A02;4NDB4A4HEFOLLOWINGQUERYSHOWSHOW
TWODIFFERENTSESSIONSFROMTHESAMEUSERACCOUNTGETMAPPEDACCORDINGTOTHEUSERNAMEANDCLIENT
PROGRAMMAPPINGPRIORITIES.OTICEHOWONLYTHE0AYROLLAPPLICATION _Pha^[[TgTOVERRIDESTHE
A4?>ACBMAPPINGRULE

BHB)B2A0C27-bT[TRcbdbTa]P\TDbTa
b_a^VaP\?a^VaP\
baTb^daRTNR^]bd\TaNVa^d_ATb^daRT6a^d_
5A><ebTbbX^]be_a^RTbb_
F74A4bdbTa]P\T8B=>C=D;;
0=3=E;b^bdbTag+-BHBC4<
0=3bCH?4,102:6A>D=3
0=3_PSSa,b_PSSa
0=3bdbTa]P\T,C?>34A
>A34A1HbaTb^daRTNR^]bd\TaNVa^d_bdbTa]P\T*

DbTa?a^VaP\ATb^daRT6a^d_

C?>34A_Pha^[[TgT0??B
C?>34Ab`[_[db/T]ZSQ!T]ZXcTRR^\C=BE E"A4?>ACB
C?>34Ac^PSTgTA4?>ACB
C?>34Ab`[_[dbfTgTA4?>ACB

0LAN$IRECTIVES
$"2-ALLOCATESDATABASERESOURCESTOCONSUMERGROUPSTHROUGHplan directives!PLANDIRECTIVE
CONSISTSOFONECONSUMERGROUPANDONEORMOREMANAGEMENTATTRIBUTES4HEREISAONE TO ONE


#(!04%2 2%3/52#%-!.!'%-%.4

RELATIONSHIPBETWEENAPLANDIRECTIVEANDACONSUMERGROUP ANDNOTWODIRECTIVESMAYBEASSIGNEDTO
THESAMERESOURCEGROUPWITHINTHESAMEPLAN !PLANDIRECTIVEISMADEUPOFALISTOFMANAGEMENT
ATTRIBUTESINAkey=valueFASHION&OREXAMPLE THEFOLLOWINGLISTINGSHOWSHOWASETOFDIRECTIVESMAYBE
DEFINEDIN$"2-
31<BNA4B>DA24N<0=064A2A40C4N?;0=N38A42C8E4
?;0=,-TgP\_[TN_[P]
6A>D?N>ANBD1?;0=,-0??B
2><<4=C,->;C?0__[XRPcX^]BTbbX^]b
<6<CN? ,-&
<0GNDC8;8I0C8>=N;8<8C,-(
<0GN4BCN4G42NC8<4,-"%
*
MGMT_Pn
%XADATAS)/2ESOURCE-ANAGERWORKSWITH$"2-THROUGHPLANDIRECTIVESUSINGTHE#05MANAGEMENT
ATTRIBUTES<6<CN?n WHEREnMAYBEn AND<0GNDC8;8I0C8>=N;8<8C SOGOINGFORWARDTHESEATTRIBUTES
WILLBETHEFOCUSOURDISCUSSION#05ISALLOCATEDINALEVEL PERCENTAGEMANNER5SAGEOFTHE<6<CN?n
ATTRIBUTEDETERMINESTHERELATIVEPRIORITYINWHICH#05ISALLOCATEDTOCONSUMERGROUPSACROSSTHE
VARIOUSLEVELS WHEREISTHEHIGHESTLEVELPRIORITY4HEPERCENTAGEASSIGNEDTOTHE<6<CN?nATTRIBUTE
DETERMINESHOWAVAILABLE#05RESOURCESUNALLOCATEDPLUSUNUSED AREALLOCATEDWITHINAPARTICULAR
LEVEL7HATEVER#05ISUNUSEDORUNALLOCATEDFROMLEVELISALLOCATEDTOLEVEL5NUSEDANDUNALLOCATED
#05FROMLEVELISTHENPASSEDTOTHECONSUMERGROUPSONLEVEL)FTHEREARETWOCONSUMERGROUPSON
LEVELANDONEOFTHEMDOESNTUSEITSALLOCATION THEUNUSED#05ISALWAYSPASSEDTOTHENEXTLEVELIN
THE0LAN4HEOTHERCONSUMERGROUPONLEVELCANTUTILIZEIT
&IGURE SHOWSASIMPLERESOURCEPLANANDILLUSTRATESHOWTHISLEVEL PERCENTAGEMETHODOF
ALLOCATING#05RESOURCESWORKS
Management Attributes
MGMT_P1 MGMT_P2 MGMT_P3

Consumer Level 1 CPU Level 2 CPU Level 3 CPU


Group Allocation Allocation Allocation

APPS 70%
Resource Directives

REPORTS 50%

MAINTENANCE 50%

OTHER_GROUPS 50%

Figure 7-1. Resource directives

)N&IGURE THE0??BGROUPISALLOCATEDOFTOTAL#05AVAILABLETOTHEDATABASE3ESSIONSINTHE
A4?>ACBGROUPARETHENEXTHIGHESTPRIORITYATLEVELANDWILLBEALLOCATEDHALFOFTHEUNALLOCATED#05
 FROMLEVEL3ESSIONSINTHERESOURCEGROUPS<08=C4=0=24AND>C74AN6A>D?BEQUALLYSHARE
UNALLOCATED#05 FROMLEVEL4HISCANBEEXPRESSEDINFORMULAFORMASFOLLOWS
0??B ¾
A4?>ACB n ¾


#(!04%2 2%3/52#%-!.!'%-%.4

<08=C4=0=24  ¾ ¾


>C74AN6A>D?B  ¾ ¾
2ESOURCE-ANAGERISDESIGNEDTOMAXIMIZE#05UTILIZATION4HISISIMPORTANTTOUNDERSTANDBECAUSEIT
MEANSTHATTHEREARETIMESWHENCONSUMERGROUPSMAYACTUALLYEXCEEDTHEIRALLOCATION7HEN#05
RESOURCESARELIMITED PLANDIRECTIVESDEFINEGUARANTEEDSERVICELEVELSFORCONSUMERGROUPS"UTWHEN
EXTRA#05ISAVAILABLE PLANDIRECTIVESALSODETERMINEHOWUNUSED#05RESOURCESAREALLOCATEDAMONG
CONSUMERGROUPS&OREXAMPLE IF#05UTILIZATIONINTHE0??BGROUPFALLSBELOW HALFOFTHEUNUSED
#05ISREDISTRIBUTEDTOTHEA4?>ACBGROUPONLEVELMGMT?P ANDHALFISDISTRIBUTEDTOTHE
CONSUMERGROUPSONLEVEL)FTHEA4?>ACBGROUPDOESNOTFULLYUTILIZEITSALLOCATIONOF#05 THEUNUSED
#05ISALSOREDISTRIBUTEDTOTHECONSUMERGROUPSONLEVEL)FYOUNEEDTOSETANABSOLUTELIMITON#05
FORACONSUMERGROUP USETHE<0GNDC8;8I0C8>=N;8<8CDIRECTIVE

2ESOURCE0LAN
!resource planISACOLLECTIONOFPLANDIRECTIVESTHATDETERMINEHOWDATABASERESOURCESARETOBE
ALLOCATED9OUMAYCREATEANYNUMBEROFRESOURCEPLANSFORYOURDATABASETHATALLOWYOUTOMEETTHE
SPECIFICSERVICELEVELSOFYOURBUSINESS BUTONLYONEMAYBEACTIVEATANYGIVENTIME9OUMAYDEACTIVATE
THECURRENTRESOURCEPLANANDACTIVATEANOTHERPLANWHENEVERTHENEEDSOFTHEBUSINESSCHANGE7HEN
THEACTIVERESOURCEPLANCHANGES ALLCURRENTANDFUTURESESSIONSWILLBEALLOCATEDRESOURCESBASEDON
DIRECTIVESINTHENEWPLAN3WITCHINGBETWEENVARIOUSRESOURCEPLANSISCOMMONLYDONETOPROVIDE
SUITABLEALLOCATIONSFORPARTICULARTIMESOFTHEDAY WEEK ORMONTH&OREXAMPLE ANAFTER HOURSPLAN
MAYBEACTIVATEDINTHEEVENINGTOFAVORDATABASEBACKUPS BATCHJOBS EXTRACTS ANDDATA LOADING
ACTIVITIES/THERAPPLICATIONSFORMAINTAININGMULTIPLEPLANSMAYINCLUDEMONTH ENDPROCESSING YEAR
ENDPROCESSING ANDTHELIKE

The Pending Area


2ESOURCEPLANSINTHEDATABASECANNOTBEDIRECTLYMODIFIEDNORCANYOUDIRECTLYDEFINENEWPLAN
DIRECTIVESORRESOURCEGROUPS/RACLEPROVIDESAWORKSPACECALLEDTHEpending areaFORCREATINGAND
MODIFYINGALLTHEELEMENTSOFARESOURCEPLAN9OUCANTHINKOFITASALOADINGZONEWHEREALLTHE
ELEMENTSOFYOURRESOURCEPLANARESTAGEDANDVALIDATEDTOGETHERBEFORETHEYARESUBMITTEDTO$"2-
4HEREMAYBEONLYONEPENDINGAREAINTHEDATABASEATANYGIVENTIME)FAPENDINGAREAISALREADYOPEN
WHENYOUTRYTOCREATEONE /RACLEWILLDISPLAYTHEERRORMESSAGE h>A0!("&)_T]SX]VPaTPXbP[aTPSh
PRcXeTv4HEPENDINGAREAISNOTAPERMANENTFIXTUREINTHEDATABASE9OUMUSTEXPLICITLYCREATEITBEFORE
YOUCANCREATEORMODIFYRESOURCEPLANS4HEFOLLOWINGLISTINGSHOWSTHETYPICALPROCESSOFCREATINGA
PENDINGAREA VALIDATINGYOURCHANGES ANDTHENSUBMITTINGIT!FTERTHEPENDINGAREAISSUBMITTED ITIS
AUTOMATICALLYREMOVEDANDANEWONEMUSTBECREATEDIFYOUWANTTOPERFORMANYADDITIONALWORKON
$"2-COMPONENTS4HEFOLLOWINGLISTINGSHOWSHOWTHE0ENDING!REAISCREATED VALIDATED AND
SUBMITTED
1468=
31<BNA4B>DA24N<0=064A2A40C4N?4=38=6N0A40*Å2aTPcTcWT_T]SX]VPaTP
+RaTPcT\^SXUhST[TcTh^daaTb^daRT_[P]-
31<BNA4B>DA24N<0=064AE0;830C4N?4=38=6N0A40*ÅEP[XSPcTh^daf^aZ
31<BNA4B>DA24N<0=064ABD1<8CN?4=38=6N0A40*Å8]bcP[[h^daf^aZX]c^31A<
4=3*


#(!04%2 2%3/52#%-!.!'%-%.4

2ESOURCE-ANAGER6IEWS
/RACLESUPPLIESANUMBEROFVIEWSTHATREPORTCONFIGURATION HISTORY ANDMETRICSFOR2ESOURCE-ANAGER
,ETSTAKEALOOKATAFEWOFTHEVIEWSTHATAREUSEFULFORREVIEWINGANDMONITORINGRESOURCESINYOUR
$"2-CONFIGURATION
EABA2N2>=BD<4AN6A>D?: 4HEEABA2N2>=BD<4AN6A>D?VIEWDISPLAYSINFORMATION
ABOUTTHEACTIVERESOURCECONSUMERGROUPS)TALSOCONTAINSPERFORMANCEMETRICS
THATAREUSEFULFORTUNINGPURPOSES7ELLTAKEACLOSERLOOKATTHISVIEWWHENWE
TESTARESOURCEPLANLATERONINTHECHAPTER
EABA2N?;0=: 4HISVIEWDISPLAYSTHECONFIGURATIONOFTHECURRENTLYACTIVERESOURCE
PLAN
EABA2N?;0=N78BC>AH: 4HEEABA2N?;0=N78BC>AHVIEWSHOWSHISTORICALINFORMATION
FORYOURRESOURCEPLANS INCLUDINGWHENTHEYWEREACTIVATEDANDDEACTIVATED AND
WHETHERTHEYWEREENABLEDBYTHEDATABASESCHEDULERORSCHEDULERWINDOWS
EABA2NB4BB8>=N8=5>: 4HISVIEWSHOWSPERFORMANCESTATISTICSFORSESSIONSAND
HOWTHEYWEREAFFECTEDBYTHE2ESOURCE-ANAGER
EB4BB8>=: 4HEEB4BB8>=VIEWISNOTSPECIFICALLYA2ESOURCE-ANAGERVIEWBUTITS
A4B>DA24N2>=BD<4AN6A>D?FIELDISUSEFULFORDETERMININGWHATRESOURCEGROUPA
SESSIONISASSIGNEDTO
310NABA2N20C46>A84B) 4HISVIEWDISPLAYSTHERESOURCECATEGORIESTHATARE
CONFIGUREDINTHEDATABASE#ATEGORIESAREUSEDBYTHE)/2ESOURCE-ANAGERFOR
CONTROLLINGSTORAGECELL)/ALLOCATIONWITHINADATABASE
310NABA2N2>=BD<4AN6A>D?B) 4HISVIEWDISPLAYSALLTHECONSUMERGROUPSDEFINEDIN
THEDATABASE
310NABA2N2>=BD<4AN6A>D?N?A8EB) 4HISVIEWREPORTSUSERS ANDTHERESOURCE
GROUPSTOWHICHTHEYHAVEBEENGRANTEDPERMISSION!USERMUSTHAVEPERMISSION
TOSWITCHTOACONSUMERGROUPBEFORETHESESSION TO CONSUMERGROUPMAPPING
RULESWILLWORK
310NABA2N6A>D?N<0??8=6B) 4HISVIEWLISTSALLTHEVARIOUSSESSION TO RESOURCE
GROUPMAPPINGRULESDEFINEDINTHEDATABASE
310NABA2N<0??8=6N?A8>A8CH) 4HISVIEWREPORTSTHEPRIORITYOFSESSIONATTRIBUTES
USEDINRESOLVINGOVERLAPSBETWEENMAPPINGRULES
310NABA2N8>N20;81A0C4) 4HISVIEWDISPLAYSTHE)/PERFORMANCEMETRICS$"2-
USESFOR)/RESOURCEMANAGEMENT-AXIMUMREADRATESARECAPTUREDFOR)/
OPERATIONSPERSECOND)/03 MEGABYTESPERSECOND-"03 ANDLATENCIESFOR
DATABLOCKREADREQUESTS
310NABA2N?;0=B) 4HISVIEWLISTSALLRESOURCEPLANSANDTHENUMBEROFPLAN
DIRECTIVESASSIGNEDTOEACHPLANINTHEDATABASE
310NABA2N?;0=N38A42C8E4B) 4HISVIEWLISTSALLRESOURCEPLANDIRECTIVES RESOURCE
ALLOCATIONPERCENTAGES ANDLEVELSDEFINEDINTHEDATABASE


#(!04%2 2%3/52#%-!.!'%-%.4

310NDB4AB) 4HISVIEWISNOTACTUALLYA2ESOURCE-ANAGERVIEWBUTITDOESDISPLAY
THEUSERNAMEANDINITIALRESOURCEGROUPASSIGNMENT INITS
8=8C80;NABA2N2>=BD<4AN6A>D?FIELD
310N78BCNABA2N2>=BD<4AN6A>D?) 4HISVIEWDISPLAYSHISTORICALPERFORMANCE
METRICSFOR2ESOURCECONSUMERGROUPS)TCONTAINS!72SNAPSHOTSOFTHE
EABA2N2>=BN6A>D?N78BC>AHVIEW
310N78BCNABA2N?;0=: 4HISISASIMPLEVIEWTHATDISPLAYSHISTORICALINFORMATION
ABOUTRESOURCEPLANSSUCHASWHENTHEYWEREACTIVATEDANDDEACTIVATED

4HE7AIT%VENTRESMGRCPUQUANTUM
$"2-ALLOCATES#05RESOURCESBYMAINTAININGANEXECUTIONQUEUESIMILARTOTHEWAYTHEOPERATING
SYSTEMSSCHEDULERQUEUESPROCESSESFORTHEIRTURNONTHE#054HETIMEASESSIONSPENDSWAITINGINTHIS
EXECUTIONQUEUEISASSIGNEDTHEWAITEVENTaTb\Va)R_d`dP]cd\!#05QUANTUMISTHEUNITOF#05
TIMEFRACTIONOF#05 THAT2ESOURCE-ANAGERUSESFORALLOCATING#05TOCONSUMERGROUPS4HISEVENT
OCCURSWHEN2ESOURCE-ANAGERISENABLEDANDISACTIVELYTHROTTLING#05CONSUMPTION)NCREASINGTHE
#05ALLOCATIONFORASESSIONSCONSUMERGROUPWILLREDUCETHEOCCURRENCEOFTHISWAITEVENTANDINCREASE
THEAMOUNTOF#05TIMEALLOCATEDTOALLSESSIONSINTHATGROUP&OREXAMPLE THE#05QUANTUMWAIT
EVENTSMAYBEREDUCEDFORTHE0??BRESOURCEGROUPCURRENTLYATLEVEL BYINCREASINGTHEGROUPS
#05ALLOCATIONTO

$"2-%XAMPLE
.OWTHATWEVEDISCUSSEDTHEKEYCOMPONENTSOF$"2-ANDHOWITWORKS LETSTAKEALOOKATAN
EXAMPLEOFCREATINGANDUTILIZINGRESOURCEPLANS)NTHISEXAMPLEWELLCREATETWORESOURCEPLANSSIMILAR
TOTHEONEIN&IGURE /NEALLOCATES#05RESOURCESSUITABLYFORCRITICAL30HC8<4PROCESSING ANDTHE
OTHERFAVORSNIGHT TIMEPROCESSING

Step 1: Create Resource Groups


4HEFIRSTTHINGWELLDOISCREATETHERESOURCEGROUPSFOROURPLAN4HEFOLLOWINGLISTINGCREATESTHREE
RESOURCEGROUPS 0??B A4?>ACBAND<08=C4=0=24/NCEWEHAVETHERESOURCEGROUPSCREATED WELLBE
ABLETOMAPUSERSESSIONSTOTHEM
1468=
SQ\bNaTb^daRTN\P]PVTaR[TPaN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTNR^]bd\TaNVa^d_
R^]bd\TaNVa^d_,-0??B
R^\\T]c,-2^]bd\TaVa^d_U^aRaXcXRP[>;C?P__[XRPcX^]b*
SQ\bNaTb^daRTN\P]PVTaRaTPcTNR^]bd\TaNVa^d_
R^]bd\TaNVa^d_,-A4?>ACB
R^\\T]c,-2^]bd\TaVa^d_U^a[^]Vad]]X]VaT_^acb*
SQ\bNaTb^daRTN\P]PVTaRaTPcTNR^]bd\TaNVa^d_
R^]bd\TaNVa^d_,-<08=C4=0=24
R^\\T]c,-2^]bd\TaVa^d_U^a\PX]cT]P]RTY^Qb*
SQ\bNaTb^daRTN\P]PVTaeP[XSPcTN_T]SX]VNPaTP*


#(!04%2 2%3/52#%-!.!'%-%.4

SQ\bNaTb^daRTN\P]PVTabdQ\XcN_T]SX]VNPaTP*
4=3*

Step 2: Create Consumer Group Mapping Rules


/KAY SOTHATTAKESCAREOFOURRESOURCEGROUPS.OWWELLCREATEOURSESSION TO RESOURCEGROUP
MAPPINGS4HEFOLLOWING0,31,BLOCKCREATESMAPPINGSFORTHREEUSERACCOUNTS:>B1>A=4 C?>34A AND
A9>7=B>= ANDJUSTFORGOODMEASURE WELLCREATEAMAPPINGFOROUR4/!$USERSOUTTHERE4HISWILLALSO
ALLOWUSTOSEEHOWATTRIBUTEMAPPINGPRIORITIESWORK
1468=
SQ\bNaTb^daRTN\P]PVTaR[TPaN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTabTcNR^]bd\TaNVa^d_N\P__X]V
PccaXQdcT,-SQ\bNaTb^daRTN\P]PVTa^aPR[TNdbTa
eP[dT,-:>B1>A=4
R^]bd\TaNVa^d_,-0??B*
SQ\bNaTb^daRTN\P]PVTabTcNR^]bd\TaNVa^d_N\P__X]V
PccaXQdcT,-SQ\bNaTb^daRTN\P]PVTa^aPR[TNdbTa
eP[dT,-A9>7=B>=
R^]bd\TaNVa^d_,-A4?>ACB*
SQ\bNaTb^daRTN\P]PVTabTcNR^]bd\TaNVa^d_N\P__X]V
PccaXQdcT,-SQ\bNaTb^daRTN\P]PVTa^aPR[TNdbTa
eP[dT,-C?>34A
R^]bd\TaNVa^d_,-<08=C4=0=24*
SQ\bNaTb^daRTN\P]PVTabTcNR^]bd\TaNVa^d_N\P__X]V
PccaXQdcT,-SQ\bNaTb^daRTN\P]PVTaR[XT]cN_a^VaP\
eP[dT,-c^PSTgT
R^]bd\TaNVa^d_,-A4?>ACB*
SQ\bNaTb^daRTN\P]PVTabdQ\XcN_T]SX]VNPaTP*
4=3*
/NEMOREIMPORTANTSTEPISTOGRANTEACHOFTHESEUSERSPERMISSIONTOSWITCHTHEIRSESSIONTOTHE
CONSUMERGROUPYOUSPECIFIEDINYOURMAPPINGRULES)FYOUDONT THEYWILLNOTBEABLETOSWITCHTHEIR
SESSIONTOTHEDESIREDRESOURCEGROUPANDWILLINSTEADBEASSIGNEDTOTHEDEFAULTCONSUMERGROUP
>C74AN6A>D?B3OIFYOUFINDTHATUSERSESSIONSARELANDINGIN>C74AN6A>D?BINSTEADOFTHERESOURCEGROUP
SPECIFIEDINYOURMAPPINGRULES YOUPROBABLYFORGOTTOGRANTTHEbfXcRWNR^]bd\TaNVa^d_PRIVILEGETOTHE
USER2EMEMBERTHATTHISWILLALSOHAPPENIFTHEMAPPINGRULEASSIGNSASESSIONTOACONSUMERGROUP
THATISNOTINTHEACTIVERESOURCEPLAN4HE6A0=CN>?8C>=PARAMETERINTHENEXTLISTINGDETERMINES
WHETHERORNOTTHEUSERWILLBEALLOWEDTOGRANTOTHERSPERMISSIONTOSWITCHTOTHECONSUMERGROUP
1468=
SQ\bNaTb^daRTN\P]PVTaN_aXebVaP]cNbfXcRWNR^]bd\TaNVa^d_
6A0=C44N=0<4,-A9>7=B>=
2>=BD<4AN6A>D?,-A4?>ACB
6A0=CN>?C8>=,-50;B4*
SQ\bNaTb^daRTN\P]PVTaN_aXebVaP]cNbfXcRWNR^]bd\TaNVa^d_
6A0=C44N=0<4,-:>B1>A=4
2>=BD<4AN6A>D?,-0??B
6A0=CN>?C8>=,-50;B4*
SQ\bNaTb^daRTN\P]PVTaN_aXebVaP]cNbfXcRWNR^]bd\TaNVa^d_
6A0=C44N=0<4,-C?>34A


#(!04%2 2%3/52#%-!.!'%-%.4

2>=BD<4AN6A>D?,-<08=C4=0=24
6A0=CN>?C8>=,-50;B4*
4=3*

 4IP)FYOUTRUSTYOURUSERSANDDEVELOPERSNOTTOSWITCHTHEIROWNSESSIONTOAHIGHER PRIORITYCONSUMERGROUP
YOUCANGRANTTHEbfXcRWNR^]bd\TaNVa^d_PERMISSIONTOTHEPUBLICANDMAKETHINGSALITTLEEASIERONYOURSELF

Step 3: Set Resource Group Mapping Priorities


3INCEWEWANTTOUSEMORETHANTHESESSIONSDB4A=0<4TOMAPSESSIONSTORESOURCEGROUPS WELLNEEDTO
SETPRIORITIESFORTHEMAPPINGRULES4HISTELLS$"2-WHICHRULESSHOULDTAKEPRECEDENCEWHENASESSION
MATCHESMORETHANONERULE4HEFOLLOWING0,31,BLOCKSETSAPRIORITYFORTHECLIENTPROGRAMATTRIBUTE
HIGHERTHANTHATOFTHEDATABASEUSERACCOUNT
1468=
SQ\bNaTb^daRTN\P]PVTaR[TPaN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTabTcNR^]bd\TaNVa^d_N\P__X]VN_aX
Tg_[XRXc,- 
R[XT]cN_a^VaP\,-!
^aPR[TNdbTa,-"
bTaeXRTN\^Sd[TNPRcX^],-#
bTaeXRTN\^Sd[T,-$
\^Sd[TN]P\TNPRcX^],-%
\^Sd[TN]P\T,-&
bTaeXRTN]P\T,-'
R[XT]cN^bNdbTa,-(
R[XT]cN\PRWX]T,- *
SQ\bNaTb^daRTN\P]PVTabdQ\XcN_T]SX]VNPaTP*
4=3*

Step 4: Create the Resource Plan and Plan Directives


'ENERALLYSPEAKING RESOURCEPLANSARECREATEDATTHESAMETIMEASTHEPLANDIRECTIVES4HISISBECAUSE
WECANNOTCREATEANEMPTYPLAN!RESOURCEPLANMUSTHAVEATLEASTONEPLANDIRECTIVE FORTHE
>C74AN6A>D?BRESOURCEGROUP4HEFOLLOWINGLISTINGCREATESARESOURCEPLANCALLED30HC8<4ANDDEFINES
DIRECTIVESFORTHERESOURCEGROUPS0??B A4?>ACB <08=C4=0=24 AND OFCOURSE >C74AN6A>D?B
1468=
SQ\bNaTb^daRTN\P]PVTaR[TPaN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]
_[P],-SPhcX\T
R^\\T]c,-ATb^daRT_[P]U^a]^a\P[QdbX]TbbW^dab*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT
_[P],-SPhcX\T
Va^d_N^aNbdQ_[P],-0??B


#(!04%2 2%3/52#%-!.!'%-%.4

R^\\T]c,-7XVW_aX^aXchdbTabP__[XRPcX^]b
\V\cN_ ,-&*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT
_[P],-SPhcX\T
Va^d_N^aNbdQ_[P],-A4?>ACB
R^\\T]c,-<TSXd\_aX^aXchU^aSPhcX\TaT_^acb_a^RTbbX]V
\V\cN_!,-$*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT
_[P],-SPhcX\T
Va^d_N^aNbdQ_[P],-<08=C4=0=24
R^\\T]c,-;^f_aX^aXchU^aSPhcX\T\PX]cT]P]RT
\V\cN_",-$*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT
_[P],-SPhcX\T
Va^d_N^aNbdQ_[P],->C74AN6A>D?B
R^\\T]c,-0[[^cWTaVa^d_b]^cTg_[XRXcT[h]P\TSX]cWXb_[P]
\V\cN_",-$*
SQ\bNaTb^daRTN\P]PVTaeP[XSPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTabdQ\XcN_T]SX]VNPaTP*
4=3*

Step 5: Create the Night-Time Plan


/RGANIZATIONSTYPICALLYHAVEDIFFERENTSCHEDULINGPRIORITIESFORAFTER HOURSWORK4HE=867CC8<4PLAN
SHIFTS#05ALLOCATIONAWAYFROMTHE0??BRESOURCEGROUPTOTHE<08=C4=0=24GROUP4HENEXTLISTING
CREATESTHE=867CC8<4PLANWITHPRIORITIESTHATFAVORMAINTENANCEPROCESSINGOVERAPPLICATIONSAND
REPORTING%VENSO OF#05RESOURCESARERESERVEDFORTHE0??BANDA4?>ACBRESOURCEGROUPSTO
ENSURETHATBUSINESSAPPLICATIONSANDREPORTSGETSUFFICIENT#05DURINGOFF PEAKHOURS
1468=
SQ\bNaTb^daRTN\P]PVTaR[TPaN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]
_[P],-]XVWccX\T
R^\\T]c,-ATb^daRT_[P]U^a]^a\P[QdbX]TbbW^dab*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT
_[P],-]XVWccX\T
Va^d_N^aNbdQ_[P],-<08=C4=0=24
R^\\T]c,-;^f_aX^aXchU^aSPhcX\T\PX]cT]P]RT
\V\cN_ ,-$*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT
_[P],-]XVWccX\T
Va^d_N^aNbdQ_[P],-0??B
R^\\T]c,-7XVW_aX^aXchdbTabP__[XRPcX^]b
\V\cN_!,-$*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT
_[P],-]XVWccX\T
Va^d_N^aNbdQ_[P],-A4?>ACB
R^\\T]c,-<TSXd\_aX^aXchU^aSPhcX\TaT_^acb_a^RTbbX]V
\V\cN_!,-$*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_[P]NSXaTRcXeT


#(!04%2 2%3/52#%-!.!'%-%.4

_[P],-]XVWccX\T
Va^d_N^aNbdQ_[P],->C74AN6A>D?B
R^\\T]c,-0[[^cWTaVa^d_b]^cTg_[XRXcT[h]P\TSX]cWXb_[P]
\V\cN_",- *
SQ\bNaTb^daRTN\P]PVTaeP[XSPcTN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTabdQ\XcN_T]SX]VNPaTP*
4=3*

Step 6: Activate the Resource Plan


/NCEOURRESOURCEPLANSARECREATED ONEOFTHEMMUSTBEACTIVATEDFOR$"2-TOSTARTMANAGING
RESOURCES2ESOURCEPLANSAREACTIVATEDBYSETTINGTHEINSTANCEPARAMETERA4B>DA24N<0=064AN?;0= USING
THE0;C4ABHBC4<COMMAND)FTHEPLANDOESNTEXIST THEN$"2-ISNOTENABLED
0;C4ABHBC4<B4CaTb^daRTN\P]PVTaN_[P],30HC8<4B2>?4,1>C7B83,B2A0C27*
9OUCANAUTOMATICALLYSETTHEACTIVATERESOURCEPLANUSINGSCHEDULERWINDOWS4HISMETHODENSURESTHAT
BUSINESSRULESFORRESOURCEMANAGEMENTAREENFORCEDCONSISTENTLY4HEFOLLOWINGLISTINGMODIFIESTHE
BUILT INSCHEDULERWINDOWF44:=867CNF8=3>FSOTHATITENABLESOUR]XVWccX\TRESOURCEPLAN4HEWINDOW
STARTSAT0-HOUR ANDRUNSTHROUGH!-MINUTES 
1468=
31<BNB2743D;4AB4CN0CCA81DC4
=P\T,-BHBF44:=867CNF8=3>F
0ccaXQdcT,-A4B>DA24N?;0=
EP[dT,-NIGHTTIME*

31<BNB2743D;4AB4CN0CCA81DC4
]P\T,-BHBF44:=867CNF8=3>F
PccaXQdcT,-A4?40CN8=C4AE0;
eP[dT,-5A4@,F44:;H*1H30H,<>=CD4F43C7D5A8*1H7>DA,18*1H<8=DC4,*1HB42>=3,*

31<BNB2743D;4AB4CN0CCA81DC4
]P\T,-BHBF44:=867CNF8=3>F
PccaXQdcT,-3DA0C8>=
eP[dT,-]d\c^SbX]cTaeP[780\X]dcT*

31<BNB2743D;4A4=01;4]P\T,-BHBF44:=867CNF8=3>F*
4=3*

.OWWELLCREATEANEWWINDOWTHATCOVERSNORMALBUSINESSHOURS CALLEDF44:30HNF8=3>F4HISWINDOW
WILLAUTOMATICALLYSWITCHTHEACTIVERESOURCEPLANTOOUR30HC8<4RESOURCEPLAN4HEWINDOWSTARTSAT
!-HOUR ANDRUNSUNTIL0-MINUTES ATWHICHPOINTOURF44:=867CNF8=3>FBEGINS



#(!04%2 2%3/52#%-!.!'%-%.4

1468=
31<BNB2743D;4A2A40C4NF8=3>F
fX]S^fN]P\T,-F44:30HNF8=3>F
aTb^daRTN_[P],-DAYTIME
bcPacNSPcT,-bhbcX\TbcP\_PccX\Ti^]T%)
SdaPcX^],-]d\c^SbX]cTaeP[660\X]dcT
aT_TPcNX]cTaeP[,-5A4@,F44:;H*1H30H,<>=CD4F43C7D5A8*1H7>DA,7*1H<8=DC4,*1HB42>=3,
T]SNSPcT,-]d[[
fX]S^fN_aX^aXch,-;>F
R^\\T]cb,-FTTZSPhfX]S^fBTcbcWTPRcXeTaTb^daRT_[P]c^30HC8<4*

31<BNB2743D;4A4=01;4]P\T,-BHBF44:30HNF8=3>F*
4=3*

4ESTINGA2ESOURCE0LAN
"EFOREWEFINISHWITH$ATABASE2ESOURCE-ANAGER LETSTESTONEOFOURRESOURCEPLANSTOSEEIFITWORKSAS
ADVERTISED6ALIDATINGTHEPRECISE#05ALLOCATIONTOEACHOFOURRESOURCEGROUPSISAVERYCOMPLICATED
UNDERTAKING SOWEWONTBEDIGGINGINTOITTOODEEPLY"UTWEWILLTAKEALOOKATTHE
EABA2N2>=BD<4AN6A>D?VIEWTOSEEIFWECANACCOUNTFORHOWTHE#05RESOURCESWEREALLOCATEDAMONG
OURCONSUMERGROUPS&ORTHETEST WELLUSETHEB2A0C27DATABASE ANDTHE30HC8<4RESOURCEPLANWE
CREATEDEARLIER4HERESULTSOFTHETESTWILL
v 6ERIFYTHATSESSIONSMAPPROPERLYTOTHEIR2ESOURCE'ROUPS
v 3HOWHOWTOIDENTIFY$"2-WAITEVENTSINASESSIONTRACE
v 6ERIFYTHAT#05ISALLOCATEDACCORDINGTOOURRESOURCEPLAN
&IGURE SHOWSRESOURCEALLOCATIONDIRECTIVESFORTHE30HC8<4RESOURCEPLANWELLBETESTING


Figure 7-2. DAYTIME resource plan allocation

)FOUR30HC8<4RESOURCEPLANISWORKING #05WILLBEALLOCATEDACCORDINGTOTHEFOLLOWINGFORMULA.OTE
THATTHE   ANDALLOCATIONSREFLECTTHEPERCENTOFTOTAL#05
,EVEL 0??B ¾
,EVEL A4?>ACB   ¾
,EVEL <08=C4=0=24   ¾ ¾
,EVEL >C74AN6A>D?B   ¾ ¾


#(!04%2 2%3/52#%-!.!'%-%.4

Test Outline
.OWTHATWEgVECREATEDOURRESOURCEPLAN WECANTESTTOSEEHOWITWORKS&OLLOWINGARETHESTEPSWE
WILLFOLLOWTOTESTOURRESOURCEPLAN
 4URNOFFTHE$ATABASE2ESOURCE-ANAGER
 3TARTASESSIONUSINGTHEA9>7=B>=ACCOUNT
 3TARTCONCURRENT#05INTENSIVEQUERIESFROMEACHOFTHEUSERACCOUNTSTHAT
MAPTOOURCONSUMERGROUPS4HESEUSERACCOUNTSMAPTORESOURCEGROUPSAS
FOLLOWS
:>B1>A=4 Æ0??B
A9>7=B>= ÆA4?>ACB
C?>34A Æ<08=C4=0=24
5A43 Æ>C74AN6A>D?B
 #HECKTHECONSUMERGROUPASSIGNMENTSINTHE6B4BB8>=
A4B>DA24N2>=BD<4AN6A>D?VIEW4HISCOLUMNSHOULDBENULL SINCE$"2-IS
INACTIVE
 3TARTASESSIONTRACEONANA9>7=B>=SESSION
 2UNA#05INTENSIVEQUERYFROMTHEA9>7=B>=SESSION
 4AILTHESESSIONTRACEFILEANDWATCHFORaTb\Va)R_d`dP]cd\WAITEVENTS4HERE
SHOULDNTBEANYATTHISPOINT BECAUSE$"2-ISINACTIVE
 7HILETHELOADTESTISSTILLRUNNING ACTIVATETHE30HC8<4RESOURCEPLAN
 #HECKTHECONSUMERGROUPASSIGNMENTSAGAIN.OWTHAT$"2-ISACTIVE
SESSIONSSHOULDBEASSIGNEDTOTHEIRRESPECTIVECONSUMERGROUPS
 #HECKTHEA9>7=B>=SESSIONTRACEFILEAGAIN7ESHOULDSEEaTb\Va)R_d`dP]cd\
WAITEVENTSNOWTHATTHE30HC8<4RESOURCEPLANISACTIVE
 2EVIEWTHE2ESOURCE-ANAGERMETRICSINTHEEABA2N2>=BD<4AN6A>D?VIEWTO
SEEHOW#05RESOURCESWEREALLOCATEDDURINGTHETEST7ESHOULDSEE#05
ALLOCATEDACCORDINGTOTHEDIRECTIVESINOURRESOURCEPLAN

3TEP$EACTIVATE$"2-
.OW WELLBEGINOURTESTOFTHERESOURCEPLAN4HEFIRSTTHINGWELLDOISTURNOFF$"2-BYSETTINGTHE
INSTANCEDATABASEPARAMETERA4B>DA24N<0=064AN?;0=TOggANEMPTYSTRING 
BHB)B2A0C27-P[cTabhbcT\bTcaTb^daRTN\P]PVTaN_[P],*

3TEP,OG)NAS2*/(.3/.
.OW WELLSTARTA31,
0LUSSESSION LOGGINGINASA9>7=B>=


#(!04%2 2%3/52#%-!.!'%-%.4

JT]ZSQ!)aY^W]b^])B2A0C27LW^\TaY^W]b^]\hbRaX_cb
-b`[_[dbaY^W]b^]g
q
A9>7=B>=)B2A0C27-

3TEP3TART,OAD4EST
)NFOURSEPARATETERMINALWINDOWS WELLGENERATEALOADONTHESYSTEMBYRUNNINGASHELLSCRIPTTHAT
SPINSUP31,
0LUSSESSIONSFOREACHUSERACCOUNT%ACHSESSIONKICKSOFFTHEFOLLOWINGQUERY WHICH
CREATESA#ARTESIANPRODUCT4HESKEWTABLEHAS  ROWS SOTHEJOINWILLCREATEBILLIONSOFLOGICAL
)/OPERATIONS4HAT ALONGWITHTHESUMON2>; SHOULDCREATESUFFICIENT#05LOADFOROURTESTS4HE
FOLLOWINGLISTINGSHOWSTHEDEFINITIONOFTHEB:4FTABLE WITHINDEXESONTHE2>; AND2>;!COLUMNS
2A40C4C01;4B:4F
?:N2>;=D<14A
2>; =D<14A
2>;!E0A270A!"1HC4
2>;"30C4
2>;#E0A270A! 1HC4*

2A40C48=34GB:4FN2>;!>=B:4F2>;!*
2A40C48=34GB:4FN2>;!>=B:4F2>;!*
.OW LETSSTARTTHETESTQUERIESANDTAKEALOOKATTHE#05UTILIZATION4HEFOLLOWINGLISTINGSHOWSTHE
QUERYWELLBEUSINGFORTHETEST
CTbc@dTah
bT[TRcPR^[!bd\PR^[ 
Ua^\aY^W]b^]bZTfP
aY^W]b^]bZTfQ
Va^d_QhPR^[!*

CWTQda]NR_dbWSHELLSCRIPT SHOWNNEXT EXECUTESCONCURRENTCOPIESOFTHEQda]NR_db`[SCRIPT7ELL
RUNTHISSCRIPTONCEFOREACHOFTHEUSERACCOUNTS 5A43 :>B1>A=4 A9>7=B>= ANDC?>34A/URTEST
CONFIGURATIONISASINGLEDATABASEB2A0C27 ONAQUARTERRACK%XADATA62ECALLTHATTHE6IS
CONFIGUREDWITHTWOQUAD CORE#05S

QX]QPbW
Tg_^acdbTa, 
Tg_^ac_PbbfS,!
Tg_^ac_PaP[[T[,"

Qda]NR_dj
b`[_[dbb++4>5
dbTa_PbbfS
/Qda]NR_db`[
TgXc
4>5
l


#(!04%2 2%3/52#%-!.!'%-%.4

9>1B,
fWX[T)*S^
Qda]NR_d

9>1B,OY^QbkfR[O
fWX[TJ9>1BVT_PaP[[T[L*S^
b[TT_$
9>1B,OY^QbkfR[O
S^]T
S^]T
7ITH$"2-DISABLED OURTESTSESSIONSPUTAHEAVYLOADONTHE#05/UTPUTFROMTHEc^_COMMAND
SHOWSRUNNINGPROCESSESANDUSER#05TIMEAT
c^_!!)!) #d_ SPhb()"' "dbTab[^PSPeTaPVT) "' !!&"!$('
CPbZb) !""c^cP[26 running !&b[TT_X]Vbc^__TSi^\QXT
2_db)80.8%us##bh]X #&XSfPWX bXbc

3TEP#HECK#ONSUMER'ROUP!SSIGNMENTS
,ETSTAKEALOOKATOURSESSION TO CONSUMERGROUPMAPPINGS7HEN$"2-ISINACTIVE SESSIONSWILL
SHOWNOCONSUMERGROUPASSIGNMENT4HISISANOTHERWAYTOVERIFYTHAT2ESOURCE-ANAGERISNOTACTIVE
BHB)B2A0C27-B4;42CbdbTa]P\TbaTb^daRTNR^]bd\TaNVa^d_R^d]c
5A><ebTbbX^]be_a^RTbb_
F74A4bdbTa]P\T8B=>C=D;;
0=3=E;b^bdbTag+-BHBC4<
0=3bCH?4+-102:6A>D=3
0=3_PSSa,b_PSSa
0=3bdbTa]P\T]^cX]BHB31B=<?
6A>D?1HbdbTa]P\TbaTb^daRTNR^]bd\TaNVa^d_
>A34A1HbdbTa]P\T*

DB4A=0<4A4B>DA24N2>=BD<4AN6A>D?2>D=C

5A43!
:>B1>A=4!
A9>7=B>=! 
C?>34A!
4HEQUERYOUTPUTSHOWSATOTALOFSESSIONS CONSISTINGOFTWENTYSESSIONSPERUSERACCOUNT PLUSONE
INTERACTIVEA9>7=B>=SESSIONTHATWELLTRACEINTHENEXTSTEP.OSESSIONSARECURRENTLYMAPPEDTOTHE
RESOURCEGROUPS BECAUSE$"2-ISINACTIVE

3TEP3TART3ESSION4RACEFORTHEINTERACTIVEA9>7=B>=SESSION
.OWWELLSTARTATRACEFORTHEINTERACTIVEA9>7=B>=SESSIONSOWECANSEETHE2ESOURCE-ANAGER
WAITEVENTSTHATWOULDINDICATE$"2-ISACTIVELYREGULATING#05FORTHISSESSION2EMEMBERTHAT$"2-
ISSTILLINACTIVE SOWESHOULDNTSEEANY2ESOURCE-ANAGERWAITEVENTSINTHETRACEFILEYET
A9>7=B>=)B2A0C27-P[cTabTbbX^]bTccaPRTUX[TNXST]cXUXTa,A9>7=B>=*
A9>7=B>=)B2A0C27-P[cTabTbbX^]bTcTeT]cb #%caPRT]P\TR^]cTgcU^aTeTa[TeT[ !*


#(!04%2 2%3/52#%-!.!'%-%.4

3TEP%XECUTEA1UERYFROMTHEA9>7=B>=3ESSION
.EXT WELLEXECUTEALONG RUNNING #05 INTENSIVEQUERY FROMTHEINTERACTIVEA9>7=B>=SESSION4HISIS
THESAMEQUERYWEUSEDFORTHELOADTESTIN3TEP
A9>7=B>=)B2A0C27-bT[TRcPR^[!bd\PR^[ 
Ua^\aY^W]b^]bZTfP
aY^W]b^]bZTfQ
Va^d_QhPR^[!*

3TEP%XAMINETHE3ESSION4RACE&ILE
3INCEOURRESOURCEPLANISNOTACTIVEYET WEDONTSEEANY2ESOURCE-ANAGERWAITEVENTSINTHETRACEFILE
ATTHISPOINT
JT]ZSQ!)aY^W]b^])B2A0C27L
-cPX[$UB2A0C27N^aPN!%( NA9>7=B>=caRkVaT_aTb\Va)R_d`dP]cd\

3TEP!CTIVATE2ESOURCE-ANAGER
.OW WHILETHELOADTESTISSTILLRUNNING LETSENABLE$"2-BYSETTINGTHEACTIVERESOURCEPLANTOOUR
30HC8<4PLAN7HENTHERESOURCEPLANISACTIVATED OURRESOURCEMAPPINGRULESSHOULDENGAGEANDSWITCH
THERUNNINGSESSIONSTOTHEIRRESPECTIVECONSUMERGROUPS
BHB)B2A0C27-P[cTabhbcT\bTcaTb^daRTN\P]PVTaN_[P],30HC8<4*

3TEP#HECK#ONSUMER'ROUP!SSIGNMENTS
.OW LETSRUNTHATQUERYAGAINANDSEEWHATOURCONSUMERGROUPASSIGNMENTSLOOKLIKE
BHB)B2A0C27-B4;42CbdbTa]P\TbaTb^daRTNR^]bd\TaNVa^d_R^d]c
5A><ebTbbX^]be_a^RTbb_
F74A4bdbTa]P\T8B=>C=D;;
0=3=E;b^bdbTag+-BHBC4<
0=3bCH?4+-102:6A>D=3
0=3_PSSa,b_PSSa
0=3bdbTa]P\T]^cX]BHB31B=<?
6A>D?1HbdbTa]P\TbaTb^daRTNR^]bd\TaNVa^d_
>A34A1HbdbTa]P\T*



#(!04%2 2%3/52#%-!.!'%-%.4

DB4A=0<4A4B>DA24N2>=BD<4AN6A>D?2>D=C

5A43>C74AN6A>D?B!
:>B1>A=40??B!
A9>7=B>=A4?>ACB!
C?>34A<08=C4=0=24! 
/URUSERSESSIONSAREMAPPINGPERFECTLY4HEQUERYSHOWSTHATALLUSERSESSIONSHAVEBEENSWITCHED
TOTHEIRCONSUMERGROUPACCORDINGTOTHEMAPPINGRULESWEDEFINEDEARLIER

3TEP%XAMINETHE3ESSION4RACE&ILE
.OW LETSTAKEANOTHERLOOKATTHESESSIONTRACEWESTARTEDINSTEPANDWATCHFOR$"2-WAITEVENTS
aTb\Va)R_d`dP]cd\ 4HEOUTPUTFROMTHETRACEFILESHOWSTHEWAITEVENTS/RACLEUSEDTOACCOUNTFOR
THETIMEOURINTERACTIVEA9>7=B>=SESSIONSPENTINTHE$"2-EXECUTIONQUEUE WAITINGFORITSTURNONTHE
#05
JT]ZSQ!)aY^W]b^])B2A0C27LW^\TaY^W]b^]
-R[TPa*cPX[$UB2A0C27N^aPN &" NA9>7=B>=caRkVaT_aTb\Va)R_d`dP]cd\

F08C#&((#''%'#&"%')]P\,aTb\Va)R_d`dP]cd\ela= 120[^RPcX^],!R^]bd\TaVa^d_XS,&'$%',
^QY,&'$&#cX\, !('((""( '$'&%$
F08C#&((#''%'#&"%')]P\,aTb\Va)R_d`dP]cd\ela= 14471[^RPcX^],!R^]bd\TaVa^d_XS,&'$%'
,^QY,&'$&#cX\, !('((""( '&#&(!
F08C#&((#''%'#&"%')]P\,aTb\Va)R_d`dP]cd\ela= 57357[^RPcX^],!R^]bd\TaVa^d_XS,&'$%'
,^QY,&'$&#cX\, !('((""( (#$% 
F08C#&((#''%'#&"%')]P\,aTb\Va)R_d`dP]cd\ela= 109930[^RPcX^],!R^]bd\TaVa^d_XS,&'$%'
,^QY,&'$&#cX\, !('((""(!$!!$(
F08C#&((#''%'#&"%')]P\,aTb\Va)R_d`dP]cd\ela= 84908[^RPcX^],!R^]bd\TaVa^d_XS,&'$%'
,^QY,&'$&#cX\, !('((""(! # ( #

!SYOUCANSEE THEA9>7=B>=USERSESSIONISBEINGGIVENALIMITEDAMOUNTOFTIMEONTHE#054HET[P,
ATTRBUTEINTHETRACERECORDSSHOWSTHEAMOUNTOFTIMEINMICROSECONDS THATTHESESSIONSPENTINTHE
aTb\Va)R_d`dP]cd\WAITEVENT)NTHESNIPPETFROMTHETRACEFILE WESEETHATTHEA9>7=B>=SESSIONWAS
FORCEDTOWAITFORATOTALOF MICROSECONDS OR#05SECONDS.OTETHATTHEOUTPUTSHOWNHERE
REPRESENTSAVERYSMALLSAMPLEOFTHETRACEFILE4HEREWEREACTUALLYTHOUSANDSOFOCCURRENCESOFTHEWAIT
EVENTINTHETRACEFILE4HESUMOFTHET[PTIMEINTHESEWAITEVENTSREPRESENTSTHEAMOUNTOFTIMETHE
SESSIONWASFORCEDOFFTHE#05INORDERTOENFORCETHEALLOCATIONDIRECTIVESINTHE30HC8<4PLAN

3TEP#HECK$"2--ETRICS
!NDFINALLY IFWELOOKATTHEEABA2N2>=BD<4AN6A>D?VIEW WECANSEETHEVARIOUSMETRICSTHAT/RACLE
PROVIDESFORMONITORING$"2-4HESECOUNTERSARERESETWHENANEWRESOURCEPLANISACTIVATED3OME
ACCUMULATEOVERTHELIFEOFTHEACTIVEPLAN WHILEOTHERSAREEXPRESSEDASAPERCENTAGEANDREPRESENTA
CURRENTREADING


#(!04%2 2%3/52#%-!.!'%-%.4

 4IP4HEENABA2<6A<4CA82ANDENABA2<6A<4CA82N78BC>AHVIEWSAREALSOVERYUSEFULFORMONITORINGTHE
EFFECTSTHATYOUR$"2-RESOURCEALLOCATIONSHAVEONSESSIONSINTHEDATABASE

4ABLE SHOWSTHEDEFINITIONSOFTHE#05 RELATEDCOLUMNSWEREINTERESTEDIN

Table 7-3. CPU-Related Columns in the V$RSRC_CONSUMER_GROUP View

Column Description

=0<4 4HERESOURCEGROUPNAME

02C8E4NB4BB8>=B 4HENUMBEROFACTIVESESSIONSINTHECONSUMERGROUP

4G42DC8>=NF08C4AB 4HENUMBEROFACTIVESESSIONSWAITINGFORATIMESLICEINWHICHTHEY
CANUSETHE#05

A4@D4BCB 4HECUMULATIVENUMBEROFREQUESTSMADEBYSESSIONSINTHE
CONSUMERGROUP

2?DNF08CNC8<4 4HECUMULATIVEAMOUNTOFTIMETHAT2ESOURCE-ANAGERMADE
SESSIONSINTHE2ESOURCE'ROUPWAITFOR#054HISWAITTIMEDOES
NOTINCLUDE)/WAITS DELAYSFROMQUEUEORLATCHCONTENTION ORTHE
LIKE2?DNF08CNC8<4ISTHESUMOFTHEELAPSEDTIMEALLOCATEDTOTHE
aTb\Va)R_dQUANTUMWAITEVENTFORTHECONSUMERGROUP

2?DNF08CB 4HECUMULATIVENUMBEROFTIMESSESSIONSWEREMADETOWAIT
BECAUSEOFRESOURCEMANAGEMENT

2>=BD<43N2?DNC8<4 4HETOTALAMOUNTOF#05TIMEACCUMULATEDINMILLISECONDS BY


SESSIONSINTHECONSUMERGROUP

H84;3B 4HECUMULATIVENUMBEROFTIMESSESSIONSINTHECONSUMERGROUP
HADTOYIELDTHE#05TOOTHERSESSIONSBECAUSEOFRESOURCE
MANAGEMENT


4HEFOLLOWINGLISTINGISAREPORTYOUMAYUSETODISPLAYTHEMETRICSCOLLECTEDINTHE
EABA2N2>=BD<4AN6A>D?VIEW4HESEMETRICSAREAVALUABLETOOLFORDETERMININGTHEEFFECTOURRESOURCE
ALLOCATIONSHADONTHECONSUMERGROUPSDURINGTHETEST
R^[]P\TU^a\PcP !WTPSX]V=P\T
R^[PRcXeTNbTbbX^]bU^a\Pc(((WTPSX]V0RcXeTkBTbbX^]b
R^[TgTRdcX^]NfPXcTabU^a\Pc(((WTPSX]V4gTRdcX^]kFPXcTab
R^[aT`dTbcbU^a\Pc(((((((WTPSX]VAT`dTbcb
R^[R_dNfPXcNcX\TU^a\Pc(((((((((WTPSX]V2?DFPXckCX\T


#(!04%2 2%3/52#%-!.!'%-%.4

R^[R_dNfPXcbU^a\Pc((((((((WTPSX]V2?DkFPXcb
R^[R^]bd\TSNR_dNcX\TU^a\Pc((((((((WTPSX]V2^]bd\TSk2?DCX\T
R^[hXT[SbU^a\Pc(((((((WTPSX]VHXT[Sb

B4;42C342>34]P\TN>A02;4N102:6A>D=3N6A>D?N102:6A>D=3]P\T]P\T
PRcXeTNbTbbX^]bTgTRdcX^]NfPXcTabaT`dTbcb
R_dNfPXcNcX\TR_dNfPXcbR^]bd\TSNR_dNcX\ThXT[Sb
5A><eabaRNR^]bd\TaNVa^d_
>A34A1HR_dNfPXcNcX\T*

0RcXeT4gTRdcX^]2?DFPXc2?D2^]bd\TS
=P\TBTbbX^]bFPXcTabAT`dTbcbCX\TFPXcb2?DCX\THXT[Sb

102:6A>D=3"#&%
0??B" ""'& $&&"( #('!'%#&(%"'("%$% 
A4?>ACB"!&"  #$$%%$!#!#&%%$  &""!&#&'($
<08=C4=0=24"!(" $$ '( " !' !&($&%"&%## "%'
>C74AN6A>D?B"#!( "  $$#"&& $ !$(&%%$$&%%! # %'

)NTHISREPORTYOUCANSEEHOW2ESOURCE-ANAGERALLOCATED#05RESOURCESTOTHECONSUMERGROUPS
ACCORDINGTOOURPLANDIRECTIVES.OTICETHE102:6A>D=3RESOURCEGROUP
NAMED?>A02;4N102:6A>D=3N6A>D?N $ATABASEBACKGROUNDPROCESSESAREASSIGNEDTOTHISSPECIALGROUP
0ROCESSESINCLUDEDINTHISGROUPINCLUDE_\^] b\^] SQf [Vfa ANDAHOSTOFOTHERFAMILIARBACKGROUND
PROCESSESTHATMANAGETHEDATABASE!SSIGNINGPERFORMANCE CRITICALPROCESSESTOTHISGROUPISTHEWAY
2ESOURCE-ANAGEREXCLUDESTHEMFROMRESOURCEMANAGEMENT&ORALLOTHERCONSUMERGROUPS YOUCAN
SEETHAT2ESOURCE-ANAGERFORCEDSESSIONSTOYIELDTHEPROCESSORINORDERTODISTRIBUTE#05RESOURCES
ACCORDINGTOOURRESOURCEDIRECTIVES4HENUMBEROFYIELDSAND#05WAITSAREOFINTEREST BUTNOTAS
TELLINGASTHE#05WAITTIMEAND#05TIMECONSUMED4HEPERCENTAGESIN&IGURE SHOWHOW#05AND
WAITTIMEWEREALLOCATEDAMONGOURCONSUMERGROUPS


Figure 7-3. DAYTIME resource plan allocation


#(!04%2 2%3/52#%-!.!'%-%.4

!CCORDINGTO2ESOURCE-ANAGER THE0??BGROUPCONSUMEDOFTHETOTAL#05USEDBYFOREGROUND
PROCESSES WHICHISVERYCLOSETOTHEWEALLOCATEDITINOURRESOURCEPLAN!T THEA4?>ACB
GROUPWASALMOSTAPERFECTMATCHTOTHEOURPLANCALLEDFOR4HE<08=C4=0=24GROUPUSED
WHICHWASALITTLEHIGHBUTSTILLAVERYGOODFITWITHTHEWEDEFINEDFORIT4HE>C74AN6A>D?BUSED
#05 WHICHAGAINWASNEARLYAPERFECTMATCHWITHOURPLANDIRECTIVEOF7ESHOULDMENTION
THATATFIRSTTHEALLOCATIONSINTHISREPORTWERENOTPROPORTIONEDVERYCLOSELYTOTHEALLOCATIONSINOUR
RESOURCEPLAN7EHADTOLETTHESTRESSTESTRUNFORSEVERALMINUTESBEFORE$"2-WASABLETOGETTHE
NUMBERSFINE TUNEDTOTHELEVELSWESEEIN&IGURE 

 .OTE)NORDERTOGET#05UTILIZATIONTOLINEUPWITHTHERESOURCEPLAN EACHCONSUMERGROUPMUSTBEFULLY
CAPABLEOFUTILIZINGITSALLOCATION'ETTINGAMATCHBETWEEN#05UTILIZATIONANDCONSUMERGROUP#05ALLOCATIONIS
FURTHERCOMPLICATEDBYMULTI LEVELRESOURCEPLANSANDTHEWAY2ESOURCE-ANAGERREDISTRIBUTESUNCONSUMED#05
TOOTHERCONSUMERGROUPS-ULTI LEVELRESOURCEPLANSARENOTCOMMONINREAL WORLDSITUATIONS-OSTOFTHETIME
SIMPLESINGLE LEVELRESOURCEPLANSARESUFFICIENTANDMUCHEASIERTOMEASURE 

)NCONCLUSION EVENTHOUGHTHETESTRESULTSSHOWMINORVARIANCESBETWEEN#05ALLOCATEDINOURPLAN
DIRECTIVESAND#05UTILIZATIONREPORTED YOUCANSEETHAT$"2-WAS INFACT MANAGING#05RESOURCES
ACCORDINGTOOURPLAN4HETESTALSOVERIFIEDTHATUSERSESSIONSPROPERLYSWITCHEDTOTHEIRRESPECTIVE
CONSUMERGROUPSACCORDINGTOOURMAPPINGRULESWHENTHERESOURCEPLANWASACTIVATED
$ATABASE2ESOURCE-ANAGERHASBEENAVAILABLEFORANUMBEROFYEARSNOW)TISAVERYELEGANT
COMPLEX ANDEFFECTIVETOOLFORMANAGINGTHESERVERRESOURCESTHATARETHEVERYLIFEBLOODOFYOUR
DATABASES5NFORTUNATELY INOUREXPERIENCE ITISRARELYUSED4HEREAREPROBABLYSEVERALREASONSFORTHIS
$"!SARECONTINUALLYBARRAGEDBYCOMPLAINTSTHATQUERIESRUNTOOLONGANDAPPLICATIONSSEEMSLUGGISH
7EAREOFTENRELUCTANTTOIMPLEMENTANYTHINGTHATWILLSLOWANYONEDOWN4HISISOFTENCOMPOUNDED
WHENMULTIPLEORGANIZATIONSWITHINTHECOMPANYSHARETHESAMEDATABASEORSERVER)TISADIFFICULTTASK
TOADDRESSPRIORITIESWITHINACOMPANYWHEREITCOMESTODATABASEPERFORMANCEANDTHEDECISIONIS
USUALLYOUTOFTHECONTROLOF$"!S WHOARERESPONSIBLEFORSOMEHOWPLEASINGEVERYONE3OUNDFAMILIAR
/URSUGGESTIONWOULDBETOSTARTSMALL3EPARATETHEMOSTOBVIOUSGROUPSWITHINYOURDATABASEBY
PRIORITY0RIORITIZINGAD HOCQUERIESFROM/,40APPLICATIONSWOULDBEAGOODPLACETOSTART7ITHEACH
STEPYOUWILLLEARNWHATWORKSANDDOESNTWORKFORYOURBUSINESS3OSTARTSMALL+EEPITSIMPLE AND
IMPLEMENTRESOURCEMANAGEMENTINSMALL INCREMENTALSTEPS

Instance Caging
7HILE2ESOURCE-ANAGERPLANDIRECTIVESPROVISION#05USAGEBYCONSUMERGROUPWITHINTHEDATABASE
instance cagingPROVISIONS#05ATTHEDATABASEINSTANCELEVEL7ITHOUTINSTANCECAGING THEOPERATING
SYSTEMTAKESSOLERESPONSIBILITYFORSCHEDULINGPROCESSESTORUNONTHE#05SACCORDINGTOITSOWN
ALGORITHMS&OREGROUNDANDBACKGROUNDPROCESSESAMONGALLDATABASESINSTANCESARESCHEDULEDONTHE
#05SWITHOUTRESPECTTOBUSINESSPRIORITIES7ITHOUTINSTANCECAGING SESSIONSFROMONEDATABASECAN
MONOPOLIZE#05RESOURCESDURINGPEAKPROCESSINGPERIODSANDDEGRADEPERFORMANCEOFOTHERDATABASES
ONTHESERVER#ONVERSELY PROCESSESRUNNINGWHENTHELOADONTHESYSTEMISVERYLIGHTTENDTOPERFORM
DRAMATICALLYBETTER CREATINGWIDESWINGSINRESPONSETIMEFROMONEMOMENTTOTHENEXT)NSTANCE
CAGINGALLOWSYOUTODYNAMICALLYSETANABSOLUTELIMITONTHEAMOUNTOF#05ADATABASEMAYUSE!ND
BECAUSEINSTANCECAGINGENFORCESAMAXIMUMLIMITONTHE#05AVAILABLETOTHEINSTANCE ITTENDSTO
SMOOTHOUTTHOSEWIDEPERFORMANCESWINGSANDPROVIDEMUCHMORECONSISTENTRESPONSETIMESTOEND


#(!04%2 2%3/52#%-!.!'%-%.4

USERS4HISISNOTTOSAYTHATINSTANCECAGINGLOCKSTHEDATABASEPROCESSESDOWNONASPECIFICSETOF
PHYSICAL#05CORESATECHNIQUECALLEDCPU affinity ALL#05CORESARESTILLUTILIZEDBYALLDATABASE
BACKGROUNDANDFOREGROUNDPROCESSES2ATHER INSTANCECAGINGREGULATESTHEAMOUNTOF#05TIMEOF
#05 ADATABASEMAYUSEATANYGIVENTIME
)NSTANCECAGINGALSOSOLVESSEVERALLESSOBVIOUSPROBLEMSCAUSEDBY#05STARVATION3OMEINSTANCE
PROCESSESARECRITICALTOOVERALLHEALTHANDPERFORMANCEOFTHE/RACLEDATABASE&OREXAMPLE IFTHELOG
WRITERPROCESS;6FA DOESNTGETENOUGHTIMEONTHEPROCESSOR THEDATABASECANSUFFERDRAMATIC
SYSTEM WIDEBROWNOUTSBECAUSEALLDATABASEWRITEACTIVITYCOMESTOASCREECHINGAHALTWHILE;6FAWRITES
CRITICALRECOVERYINFORMATIONTOTHEONLINEREDOLOGS)NSUFFICIENT#05RESOURCESCANCAUSESIGNIFICANT
PERFORMANCEPROBLEMSANDSTABILITYISSUESIF0ROCESS-ONITOR?<>= CANNOTGETENOUGHTIMEONTHE
#05&OR2!#SYSTEMS THE,OCK-ANAGEMENT3ERVER;<B PROCESSCANEVENCAUSESPORADICNODE
EVICTIONSDUETO#05STARVATION WEVESEENTHISONEANUMBEROFTIMES 

 .OTE#LUSTERWAREWASHEAVILYUPDATEDINVERSIONANDRENAMED'RID)NFRASTRUCTURE !CCORDINGTOOUR
/RACLESOURCES #05STARVATIONLEADINGTONODEEVICTIONISRARELYANISSUEANYMORETHANKSTOCHANGESIN

)NSTANCECAGINGDIRECTLYADDRESSES#05PROVISIONINGFORMULTITENANTDATABASEENVIRONMENTS
MAKINGITAVERYUSEFULTOOLFORDATABASECONSOLIDATIONEFFORTS&OREXAMPLE LETSSAYYOUHAVEFOUR
DATABASES EACHRUNNINGONASEPARATESERVER4HESESERVERSEACHHAVEFOUROUTDATED#05S SO
CONSOLIDATINGTHEMONTOANEWSERVERWITHBRAND NEW#05CORESSHOULDEASILYPROVIDEPERFORMANCE
THATISATLEASTONPARWITHWHATTHEYCURRENTLYHAVE7HENYOUMIGRATETHEFIRSTDATABASE THEENDUSERS
AREECSTATIC1UERIESTHATUSEDTORUNFORANHOURBEGINCOMPLETINGINLESSTHANMINUTES9OUMOVE
THESECONDDATABASE ANDPERFORMANCESLOWSDOWNABITBUTISSTILLMUCHBETTERTHANITWASONTHEOLD
SERVER4HEQUERIESNOWCOMPLETEINALITTLELESSTHANMINUTES!SYOUPROCEEDTOMIGRATETHE
REMAININGTWODATABASES PERFORMANCEDECLINESEVENFURTHER4OAGGRAVATETHESITUATION YOUNOWFIND
YOURSELFWITHMIXEDWORKLOADSALLCOMPETINGFORTHESAME#05RESOURCESDURINGPEAKPERIODSOFTHEDAY
4HISISACOMMONTHEMEINDATABASECONSOLIDATIONPROJECTS0ERFORMANCESTARTSOFFGREAT BUTDECLINESTO
APOINTWHEREYOUWONDERIFYOUVEMADEABIGMISTAKEBRINGINGSEVERALDATABASESTOGETHERUNDERTHE
SAMEROOF!NDEVENIFOVERALLPERFORMANCEISBETTERTHANITWASBEFORE THEPERCEPTIONOFTHEFIRSTCLIENTS
TOBEMIGRATEDISTHATITISACTUALLYWORSE ESPECIALLYDURINGPEAKPERIODSOFTHEDAY)FYOUHADUSED
INSTANCECAGINGTOSETTHE#05LIMITFOREACHDATABASETOFOURCORESWHENTHEYWEREMOVED RESPONSE
TIMESWOULDHAVEBEENMUCHMORESTABLE

#ONFIGURINGAND4ESTING)NSTANCE#AGING
#ONFIGURINGINSTANCECAGINGISVERYSIMPLE!CTIVATINGARESOURCEPLANANDSETTINGTHENUMBEROF#05
CORESAREALLTHATISREQUIRED2ECALLTHATTHEACTIVERESOURCEPLANISSETUSINGTHEDATABASEPARAMETER
A4B>DA24N?;0=4HENUMBEROF#05SISSETUSINGTHE2?DN2>D=CPARAMETER WHICHDETERMINESTHENUMBER
OF#05STHEINSTANCEMAYUSEFORALLFOREGROUNDANDBACKGROUNDPROCESSES"OTHPARAMETERSARE
DYNAMIC SOADJUSTMENTSCANBEMADEATANYTIME)NFACT SCHEDULINGTHESECHANGESTOOCCUR
AUTOMATICALLYISAVERYUSEFULWAYTOADJUSTDATABASEPRIORITIESATVARIOUSTIMESOFTHEDAYORWEEK
ACCORDINGTOTHENEEDSOFYOURBUSINESS&OREXAMPLE MONTH ENDANDYEAR ENDPROCESSINGARECRITICAL
TIMESFORACCOUNTINGSYSTEMS)FYOURDATABASESERVERISBEINGSHAREDBYMULTIPLEDATABASES ALLOCATING
ADDITIONALPROCESSINGPOWERTOYOURFINANCIALDATABASEDURINGHEAVYPROCESSINGCYCLESMIGHTMAKEALOT
OFSENSE


#(!04%2 2%3/52#%-!.!'%-%.4

.OW LETSTAKEALOOKATINSTANCECAGINGINACTION&ORTHISEXAMPLEWELLUSEOURB2A0C27ANDB=855
DATABASESTODEMONSTRATEHOWITWORKS4HESEARESTANDALONENON 2!# DATABASESRUNNINGONAN
%XADATA6DATABASESERVERWITHTWOQUADCORE#05S4HE.EHALEMCHIPSETISHYPER THREADED SOTHE
DATABASEACTUALLYhSEESvVIRTUALCORESOR#05THREADS ASYOUCANSEEINTHEFOLLOWINGLISTING
BHB)B2A0C27-bW^f_PaP\TcTaR_dNR^d]c

=0<4CH?4E0;D4

R_dNR^d]cX]cTVTa %

 .OTE-ANY#05CHIPSETSTODAYIMPLEMENTHYPER THREADING7HENA#05USESHYPER THREADING EACH#05


THREADISSEENBYTHEOPERATINGSYSTEMANDSUBSEQUENTLY/RACLEDATABASEINSTANCES ASASEPARATE#054HISIS
WHYTWOQUADCORECHIPSAPPEARAS#05S RATHERTHANTHEEXPECTED%XADATA6 8 AND8 MODELSFEATURE
CHIPSETSTHATEMPLOYHYPER THREADING SOFORPURPOSESOFOURDISCUSSION WEWILLUSETHETERMSCPU coreANDCPU
threadsSYNONYMOUSLY

7ELLBEUSINGTHEBUILT INRESOURCEPLAN 3450D;CN?;0= FORTHESETESTS&IGURE SHOWSTHE#05


RESOURCEALLOCATIONFORTHISPLAN.OTETHATUNDERTHESTUPd[cN_[P] ALLUSERSOTHERTHANBHBANDBHBC4<
WILLBEMAPPEDTOTHE>C74AN6A>D?BRESOURCEGROUP
BHB)B2A0C27-bW^f_PaP\TcTaaTb^daRTN_[P]

=0<4CH?4E0;D4

aTb^daRTN\P]PVTaN_[P]bcaX]V3450D;CN?;0=



Figure 7-4. DEFAULT_PLAN resource allocation

&ORTHISTEST WELLUSETHESAMESCRIPTWEUSEDFORTESTINGOUR$"2-RESOURCEPLANSINTHEPREVIOUS
SECTION!GAIN THEQda]NR_dbWSCRIPTWITHAPARAMETEROFWILLSPINUPCONCURRENTSESSIONS EACH
RUNNINGTHETESTQUERY4HISSHOULDDRIVETHE#05UTILIZATIONUPTOAPPROXIMATELY/NCETHE
SESSIONSARERUNNING WELLUSETHEc^_COMMANDTOSEETHEEFFECTINSTANCECAGINGHASONTHESERVER#05
LOAD,ETSSTARTOUTBYGETTINGABASELINE4ODOTHIS WELLRUNTHETESTWITHINSTANCECAGINGAND2ESOURCE
-ANAGERTURNEDOFF2ECALLTHATTHESETESTSARERUNNINGONAQUARTERRACK%XADATA6 WHICHISCONFIGURED
WITHTWOQUAD COREHYPER THREADED#05S3OTHEDATABASEINSTANCESSEEA2?DN2>D=COF


#(!04%2 2%3/52#%-!.!'%-%.4

-Qda]NR_dbWZ^bQ^a]Tg!

c^_ ')#') d_!SPhb%)$"#dbTab[^PSPeTaPVT) $( $$ !(
CPbZb)("c^cP[25 running'&'b[TT_X]Vbc^__TSi^\QXT
2_db)82.9%us 'bh]X15.1%idfP WX!bXbc
!SYOUCANSEE RUNNINGTHEQda]NR_dbWSCRIPTDROVETHE#05USAGEUPFROMARELATIVELYIDLE
TO WITHRUNNINGPROCESSES.OW LETSSEEWHATHAPPENSWHENWERESETTHER_dNR^d]cTO
WHICHISOFTHETOTAL#05ONTHESERVER.OTICETHATTHENUMBEROFRUNNINGPROCESSESHASDROPPED
FROMTO4HE#05TIMEINUSERSPACEHASDROPPEDTO JUSTOVERHALFOFWHATITWAS
BHB)B2A0C27-P[cTabhbcT\bTcR_dNR^d]c,'*

c^_ () $) d_!SPhb&)!#dbTab[^PSPeTaPVT)#'!$$!''
CPbZb)''&c^cP[10 running'&&b[TT_X]Vbc^__TSi^\QXT
2_db)46.1%us&bh]X52.3%id'fPWX bXbc
.OW WELLSETTHE2?DN2>D=CPARAMETERTO4HATISHALFOFTHEPREVIOUSSETTING SOWESHOULDSEETHE
#05UTILIZATIONDROPBYABOUT!FTERTHAT WELLDROPTHE2?DN2>D=CTOTOILLUSTRATETHEDRAMATIC
EFFECTINSTANCECAGINGHASONDATABASE#05UTILIZATION.OTICETHATWHENWESETTHENUMBEROF#05STO
 OURUTILIZATIONDROPPEDFROMTO&INALLY SETTING2?DN2>D=CTOFURTHERREDUCES#05
UTILIZATIONTO
BHB)B2A0C27-P[cTabhbcT\bTcR_dNR^d]c,#*

c^_ () #)"d_!SPhb&) '#dbTab[^PSPeTaPVT)!%$$%('
CPbZb)''%c^cP[5 running'' b[TT_X]Vbc^__TSi^\QXT
2_db)25.1%us'bh]X74.1%idfPWXbXbc

BHB)B2A0C27-P[cTabhbcT\bTcR_dNR^d]c, *

c^_ () ()"!d_!SPhb&)!##dbTab[^PSPeTaPVT)#(&$(&' 
CPbZb)''#c^cP[2 running''!b[TT_X]Vbc^__TSi^\QXT
2_db)4.8%us'bh]X94.0%id!fPWX bXbc
4HISTESTILLUSTRATEDTHEEFFECTOFINSTANCECAGINGONASINGLEDATABASE.OWLETSCONFIGURETWO
DATABASESANDSEEHOWINSTANCECAGINGCONTROLS#05RESOURCESWHENMULTIPLEDATABASESAREINVOLVED
)NTHENEXTTWOTESTSWELLADDANOTHERDATABASETOTHEMIX4HEB=855DATABASEISIDENTICALTOTHE
B2A0C27DATABASEWEUSEDINTHEPREVIOUSTEST)NTHEFIRSTOFTHENEXTTWOTESTS WELLRUNABASELINEWITH
INSTANCECAGINGTURNEDOFFBYSETTING2?DN2>D=CSETTOINBOTHDATABASES4HEBASELINEWILLRUN
CONCURRENTCOPIESOFTHETESTQUERYONEACHDATABASE7ELLLETITRUNFORAFEWMINUTESANDTHENTAKEA
LOOKATTHE#05UTILIZATIONOFTHESEDATABASESASWELLASTHEREADINGSFROMTHEc^_COMMAND4HEACTIVE
RESOURCEPLANFORBOTHDATABASESISSETTO3450D;CN?;0= AND2?DN2>D=CISSETTO
JT]ZSQ!)B2A0C27L-Qda]NR_dbWZ^bQ^a]Tg %

JT]ZSQ!)B=855L-Qda]NR_dbWZ^bQ^a]Tg %
&IGURE SHOWSASUMMARYOFOURSECONDTEST%ACHLINE REPRESENTINGASESSIONFOREGROUNDPROCESS
SHOWSTHEPERCENTAGEOFONE#05CORE4HISISSUMMEDANDDIVIDEDBY#05CORES TOGETTHE
PERCENTAGEOFTOTAL#05CONSUMED!SEXPECTED THEDISTRIBUTIONOF#05BETWEENOURTWODATABASESIS
APPROXIMATELYEQUALATAND,OOKINGATTHE4OTAL#ONNECTION#05 WECANSEETHATTHE
DATABASESACCOUNTEDFORABOUTOFTOTAL#05TIMEFORTHESERVER


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-5. Test summary: two databases, instance caging turned off

4HESOURCEFORTHEDATAREFLECTEDINTHISSUMMARYWASCOLLECTEDASFOLLOWS
% of 1 Core:)NDIVIDUALPROCESS#05FROMTHE2?DCOLUMNFROMTHEc^_COMMAND
% of Total CPU:2ESULTOFOF#ORECORES#05THREADS 
User:2_db)]]]]dbFROMTHEc^_COMMAND
Kernel:2_db)]]]]bhFROMTHEc^_COMMAND
Idle:2_db)]]]]XSFROMTHEc^_COMMAND
Total CPU:3UMOF5SER +ERNEL AND)DLE
Total Connection CPU:3UMOFOF4OTAL#05FOREACHDATABASE
Total Other + Idle CPU: 4OTAL#05n4OTAL#ONNECTION#05
SCRATCH %:OF4OTAL#05B2A0C27 4OTAL#ONNECTION#05
SNIFF %:OF4OTAL#05B=855 4OTAL#ONNECTION#05
4HE@B2A0C27 AND@B=855NUMBERSAREWHATWEREINTERESTEDIN4HEYREPRESENTTHEPERCENTAGE
OFTOTAL#05USEDBYALLSESSIONSINEACHOFTHESEDATABASES!SYOUCANSEEFROMTHESUMMARY THE
DATABASESWERESPLITATAPPROXIMATELYEACH


#(!04%2 2%3/52#%-!.!'%-%.4

.OWLETSRUNTHESAMELOADTESTWITHINSTANCECAGINGCONFIGUREDFORASPLITONTHENUMBEROF
CORESASSIGNEDTOB2A0C27ANDB=855RESPECTIVELY)NTHISTEST B2A0C27GETS#05SOFCORES AND
B=855GETS#05SOFCORES 
BHB)B2A0C27-P[cTabhbcT\bTcR_dNR^d]c, !*
BHB)B=855-P[cTabhbcT\bTcR_dNR^d]c,#*
&IGURE SHOWSTHERESULTSOFOURSECONDTEST4HESPLITISNTPERFECT)TISCLOSERTOANSPLIT
.OTCAPTUREDINTHESETESTSWASTHEAMOUNTOF#05CONSUMEDBYALLTHEDATABASEBACKGROUNDPROCESSES
SOTHATMAYACCOUNTFORTHESOMEOFTHEDIFFERENCE)TISALSOIMPORTANTTOUNDERSTANDTHAT/RACLES
2ESOURCE-ANAGEROPERATESINTHEUSERSPACEOFTHE/3PROCESSMODEL RATHERTHANTHEKERNELSPACE3O
ITCANNOTDIRECTLYCONTROLTHEAMOUNTOF#05APROCESSCONSUMESINSIDETHEKERNELITCANONLYINFLUENCE
THISBYTHROTTLINGPROCESSESINTHEUSERSPACE)NOURSUMMARY WESEETHATTHEB2A0C27DATABASESESSIONS
CONSUMEDOFTOTALSESSION#05 WHILETHEB=855DATABASEUSEDOFTOTALSESSION#05%VEN
THOUGHTHESPLITISNTPERFECT ITDOESSHOWTHATINSTANCECAGINGMADEASOLIDEFFORTTOMANAGETHESE
DATABASESTOTHESPLITWEDEFINED.OW THISISNOTTOSAYTHATINSTANCECAGINGLOCKSTHEDATABASE
PROCESSESDOWNONASPECIFICSETOFPHYSICAL#05CORES!LL#05CORESARESTILLUTILIZEDBYALLDATABASE
BACKGROUNDANDFOREGROUNDPROCESSES2ATHER INSTANCECAGINGREGULATESTHEAMOUNTOF#05TIMEOF
#05 ADATABASEMAYUSEATANYGIVENTIME



Figure 7-6. Test summary: two databases, instance caging, 75% / 25% split


#(!04%2 2%3/52#%-!.!'%-%.4

/VER 0ROVISIONING
Over-provisioningREFERSTOTHEPRACTICEOFALLOCATINGMORE#05STOTHEDATABASESTHANAREACTUALLY
INSTALLEDINTHESERVER4HISISUSEFULWHENYOURSERVERHOSTSMULTIPLEDATABASESWITHCOMPLEMENTING
WORKLOADSCHEDULES&OREXAMPLE IFALLTHEHEAVYPROCESSINGFORTHEB2A0C27DATABASEOCCURSATNIGHT
ANDTHEB=855DATABASEISONLYBUSYDURING30HC8<4HOURS ITWOULDNTMAKESENSETOARTIFICIALLYLIMIT
THESEDATABASESTO#05THREADSEACH¾ !BETTER#05ALLOCATIONSCHEMEMIGHTBEMOREONTHE
ORDEROF¾4HISWOULDALLOWEACHDATABASETOFULLYUTILIZECORESDURINGBUSYPERIODS WHILESTILL
hRESERVINGvCORESFOROFF PEAKPROCESSINGBYTHEOTHERDATABASE$"!SWHOCONSOLIDATEMULTIPLE
DATABASESONTOASINGLESERVERAREAWARETHATTHEIRDATABASESDONTUSETHEIRFULL#05ALLOCATION
2?DN2>D=C ALLOFTHETIME/VER PROVISIONINGALLOWSUNUSED#05TOBEUTILIZEDBYOTHERDATABASESRATHER
THANSITTINGIDLE/VER PROVISIONINGHASBECOMEAPOPULARWAYOFMANAGING#05RESOURCESINMIXED
WORKLOADENVIRONMENTS/BVIOUSLY OVER PROVISIONING#05INTRODUCESTHERISKOFSATURATING#05
RESOURCES+EEPTHISINMINDIFYOUARECONSIDERINGTHISTECHNIQUE"ESUREYOUUNDERSTANDTHEWORKLOAD
SCHEDULESOFEACHDATABASEWHENDETERMININGTHEMOSTBENEFICIAL#05COUNTFOREACHDATABASE
)NSTANCECAGINGLIMITSTHENUMBEROF#05CORESADATABASEMAYUSEATANYGIVENTIME ALLOWING
$"!STOALLOCATE#05TODATABASESBASEDONTHENEEDSANDPRIORITIESOFTHEBUSINESS)TDOESTHISTHROUGH
THEUSEOFTHEINSTANCEPARAMETER2?DN2>D=C/URPREFERENCEWOULDHAVEBEENTOALLOCATE#05BASEDON
APERCENTAGEOF#05RATHERTHENUMBEROFCORES4HISWOULDGIVETHE$"!MUCHFINER GRAINEDCONTROL
OVER#05RESOURCESANDWOULDBEESPECIALLYUSEFULFORSERVERENVIRONMENTSTHATSUPPORTNUMEROUS
DATABASES"UT2?DN2>D=CISTIGHTLYCOUPLEDWITH/RACLES#OST"ASED/PTIMIZER#"/ WHICHUSESTHE
NUMBEROF#05SFORITSINTERNALCOSTINGALGORITHMS)TWOULDNTMAKESENSETOALLOWTHE$"!TOSETTHE
PERCENTAGEOFPROCESSINGPOWERWITHOUTMATCHINGTHATWITHTHEVALUETHE#"/USESFORSELECTINGOPTIMAL
EXECUTIONPLANS)TPROBABLYWOULDHAVEBEENAMUCHMOREDIFFICULTEFFORTTOIMPLEMENTSUCHACHANGE
TOTHEOPTIMIZER"ETHATASITMAY INSTANCECAGINGISAPOWERFULNEWFEATURETHATWEVEBEENWAITINGFOR
FORALONGTIMEANDISAMAJORADVANCEMENTDATABASERESOURCEMANAGEMENT

I/O Resource Manager


%ARLIERINTHISCHAPTERWEDISCUSSED/RACLES$ATABASE2ESOURCE-ANAGER WHICHMANAGES#05
RESOURCESWITHINADATABASETHROUGHCONSUMERGROUPSANDPLANDIRECTIVES3ESSIONSAREASSIGNEDTO
RESOURCEGROUPS ANDPLANDIRECTIVESMANAGETHEALLOCATIONOFRESOURCESBYASSIGNINGVALUESSUCHAS#05
PERCENTAGETORESOURCEMANAGEMENTATTRIBUTESSUCHAS<6<CN? '$"2- HOWEVER ISLIMITEDTO
MANAGINGRESOURCESWITHINTHEDATABASE
$"2-MANAGES)/RESOURCESINASOMEWHATINDIRECTMANNERBYLIMITING#05ANDPARALLELISM
AVAILABLETOUSERSESSIONSTHROUGHCONSUMERGROUPS 4HISISBECAUSEUNTIL%XADATACAMEALONG /RACLE
HADNOPRESENCEATTHESTORAGETIER%XADATALIFTS)/2ESOURCE-ANAGEMENTABOVETHEDATABASETIERAND
MANAGES)/ATTHESTORAGECELLINAVERYDIRECTWAY$ATABASESINSTALLEDON%XADATASEND)/REQUESTSTO
RT[[baeONTHESTORAGECELLSUSINGAPROPRIETARYPROTOCOLKNOWNAS)NTELLIGENT$ATABASEPROTOCOLI$" 
5SINGI$" THEDATABASEPACKSADDITIONALATTRIBUTESINEVERY)/CALLTOTHESTORAGECELLS4HISADDITIONAL
INFORMATIONISUSEDINANUMBEROFWAYS&OREXAMPLE )/2-USESTHETYPEOFFILEREDO UNDO DATAFILE
CONTROLFILE ANDSOON FORWHICHTHE)/WASREQUESTEDTODETERMINEWHETHERCACHINGTHEBLOCKSINFLASH
CACHEWOULDBEBENEFICIALORNOT4HREEOTHERATTRIBUTESEMBEDDEDINTHE)/REQUESTIDENTIFYTHE
DATABASE THECONSUMERGROUP ANDTHECONSUMERGROUPSCATEGORY4HESETHREESMALLBITSOFADDITIONAL
INFORMATIONAREINVALUABLETO/RACLESINTELLIGENTSTORAGE+NOWINGWHICHDATABASEISMAKINGTHE
REQUESTALLOWS)/2-TOPRIORITIZE)/REQUESTSBYDATABASE#ATEGORIESEXTENDTHECONCEPTOFCONSUMER
GROUPSON%XADATAPLATFORMS#ATEGORIESAREASSIGNEDTOCONSUMERGROUPSWITHINTHEDATABASEUSING
$ATABASE2ESOURCE-ANAGER#OMMONCATEGORIES DEFINEDINMULTIPLEDATABASES CANTHENBEALLOCATED
ASHARED)/PRIORITY&OREXAMPLE YOUMAYHAVESEVERALDATABASESTHATMAPUSERSESSIONSTOAN


#(!04%2 2%3/52#%-!.!'%-%.4

8=C4A02C8E4CATEGORY)/REQUESTSCOMINGFROMTHE8=C4A02C8E4CATEGORYMAYNOWBEPRIORITIZEDOVER
OTHERCATEGORIESSUCHASA4?>ACB 10C27 OR<08=C4=0=24
)/2-PROVIDESTHREEDISTINCTMETHODSFOR)/RESOURCEMANAGEMENT)NTERDATABASE #ATEGORY AND
)NTRADATABASE4HESEMETHODSMAYBEUSEDINDIVIDUALLYORINCOMBINATION&IGURE ILLUSTRATESTHE
RELATIONSHIPOFTHESETHREE)/RESOURCEMANAGEMENTMETHODS

Exadata I/O
Resource
Management

Inside
One Across Databases
Database

Intradatabase Interdatabase Category


Resource Resource Resource
Plan Plan Plan

IORM Plan

Figure 7-7. Three methods for I/O resource management

Interdatabase IORM (Interdatabase Resource Plan):)/2-DETERMINESTHEPRIORITY


OFAN)/REQUESTBASEDONTHENAMEOFTHEDATABASEINITIATINGTHEREQUEST
)NTERDATABASE)/2-ISUSEFULWHEN%XADATAISHOSTINGMULTIPLEDATABASESANDYOU
NEEDTOMANAGE)/PRIORITIESAMONGTHEDATABASES
IORM Categories (Category Resource Plan): )/2-DETERMINESTHEPRIORITYOFAN
)/REQUESTAMONGMULTIPLEDATABASESBYTHECATEGORYTHATINITIATEDTHEREQUEST
-ANAGING)/BYCATEGORYISUSEFULWHENYOUWANTTOMANAGE)/PRIORITIESBY
WORKLOADTYPE&OREXAMPLE YOUCANCREATECATEGORIESLIKE0??B 10C27 A4?>ACB
<08=C4=0=24INEACHOFYOURDATABASESANDTHENSETAN)/ALLOCATIONFORTHESE
CATEGORIESACCORDINGTOTHEIRIMPORTANCETOYOURBUSINESS)FTHE0??BCATEGORYIS
ALLOCATED THENSESSIONSASSIGNEDTOTHE0??BCATEGORYINALLDATABASESSHARE
THISALLOCATION
Intradatabase IORM (Intradatabase Resource Plan):5NLIKE)NTERDATABASEAND
#ATEGORY)/2- )NTRADATABASE)/2-ISCONFIGUREDATTHEDATABASETIERUSING
$"2-$"2-HASBEENENHANCEDTOWORKINPARTNERSHIPWITH)/2-TOPROVIDE
FINE GRAINED)/RESOURCEMANAGEMENTAMONGRESOURCEGROUPSWITHINTHE
DATABASE4HISISDONEBYALLOCATING)/PERCENTAGEANDPRIORITYTOCONSUMER
GROUPSUSINGTHESAMEMECHANISMUSEDTOALLOCATE#05 THE<6<CN?]ATTRIBUTE&OR
EXAMPLE THEB0;4BDATABASEMAYBEALLOCATEDUSING)NTERDATABASE)/2-4HAT


#(!04%2 2%3/52#%-!.!'%-%.4

MAYBEFURTHERDISTRIBUTEDTOTHE0??B A4?>ACB 10C27 AND>C74AN6A>D?B


CONSUMERGROUPSWITHINTHEDATABASE4HISENSURESTHAT)/RESOURCESAREAVAILABLE
FORCRITICALAPPLICATIONS ANDITPREVENTSMISBEHAVINGOR)/ INTENSIVEPROCESSES
FROMSTEALING)/FROMHIGHER PRIORITYSESSIONSINSIDETHEDATABASE

(OW)/2-7ORKS
)/2-MANAGES)/ATTHESTORAGECELLBYORGANIZINGINCOMING)/REQUESTSINTOQUEUESACCORDINGTHE
DATABASENAME CATEGORY ORCONSUMERGROUPTHATINITIATEDTHEREQUEST)TTHENSERVICESTHESEQUEUES
ACCORDINGTOTHEPRIORITYDEFINEDFORTHEMINTHERESOURCEPLAN)/2-ONLYACTIVELYMANAGES)/
REQUESTSWHENNEEDED7HENACELLDISKISNOTFULLYUTILIZED RT[[baeISSUES)/REQUESTSTOIT
IMMEDIATELY"UTWHENADISKISHEAVILYUTILIZED RT[[baeINSTEADREDIRECTSTHE)/REQUESTSTOTHE
APPROPRIATE)/2-QUEUESANDSCHEDULES)/FROMTHERETOTHECELLDISKQUEUESACCORDINGTOTHEPOLICIES
DEFINEDINYOUR)/2-PLANS&OREXAMPLE USINGOURB2A0C27ANDB=855DATABASESFROMEARLIERINTHIS
CHAPTER WECOULDDEFINEA)/DIRECTIVEFORTHEB2A0C27DATABASE ANDA)/DIRECTIVEFORTHE
B=855DATABASE7HENTHESTORAGECELLSHAVEEXCESSCAPACITYAVAILABLE THE)/QUEUESWILLBESERVICEDIN
AFIRST IN FIRST OUT&)&/ MANNER$URINGOFF PEAKHOURS THESTORAGECELLSWILLPROVIDEMAXIMUM
THROUGHPUTTOALLDATABASESINANEVEN HANDEDMANNER"UTWHENTHESTORAGECELLBEGINSTOSATURATE THE
B2A0C27QUEUEWILLBESCHEDULEDOFTHETIME ANDTHEB=855QUEUEWILLBESCHEDULEDOFTHETIME
)/REQUESTSFROMDATABASEBACKGROUNDPROCESSESARESCHEDULEDACCORDINGTOTHEIRRELATIVEPRIORITYTO
THEFOREGROUNDPROCESSESCLIENTSESSIONS &OREXAMPLE WHILETHEDATABASEWRITERPROCESSES31Fn ARE
GIVENPRIORITYEQUALTOTHATOFFOREGROUNDPROCESSES PERFORMANCECRITICAL)/REQUESTSFROMBACKGROUND
PROCESSESTHATMAINTAINCONTROLFILES ANDREDOLOGFILESAREGIVENHIGHERPRIORITY

 .OTE)/2-ONLYMANAGES)/FORPHYSICALDISKS)/REQUESTSFOROBJECTSINTHEFLASHCACHEORONFLASH BASED
GRIDDISKSARENOTMANAGEDBY)/2-

IORM Architecture
&IGURE ILLUSTRATESTHEARCHITECTUREOF)/2-&OREACHCELLDISK RT[[bae#ELLSERV MAINTAINSAN)/2-
QUEUEFOREACHCONSUMERGROUP ANDEACHBACKGROUNDPROCESSHIGH MEDIUM ANDLOWPRIORITY FOR
EACHDATABASEACCESSINGTHESTORAGECELL"YMANAGINGTHEFLOWOF)/REQUESTSBETWEENTHE)/2-
QUEUESANDTHEDISKQUEUES RT[[baePROVIDESVERYEFFECTIVE)/PRIORITIZATIONATTHESTORAGECELLS)/
REQUESTSSENTTOTHESTORAGECELLINCLUDETAGSTHATIDENTIFYTHEDATABASEANDTHECONSUMERGROUPISSUING
THEREQUEST ASWELLASTHETYPEOF)/REDO CONTROLFILE ANDSOON &ORDATABASESTHATDONOTHAVEAN
)NTRADATABASERESOURCEPLANDEFINED FOREGROUNDPROCESSESAREAUTOMATICALLYMAPPEDTOTHECONSUMER
GROUP>C74AN6A>D?B4HREESEPARATEQUEUESAREMAINTAINEDFORBACKGROUNDPROCESSESSOTHATRT[[bae
MAYPRIORITIZESCHEDULINGACCORDINGTOTHETYPEOF)/REQUEST&OREXAMPLE REDOANDCONTROLFILE)/
OPERATIONSARESENTTOTHEHIGH PRIORITYQUEUEFORBACKGROUNDPROCESSES)/2-SCHEDULES)/REQUESTS
FROMTHECONSUMERGROUPQUEUESACCORDINGTOTHE)/DIRECTIVESINYOUR)/2-0LAN


#(!04%2 2%3/52#%-!.!'%-%.4

SCRATCH - Cell Disk 4 Cellserv Storage Cell


SCRATCH - Cell Disk 3
SCRATCH - Cell Disk 2
SCRATCH - Cell Disk 1 IORM Plan
Foreground Queues
SCRATCH APPS
REPORTS
MAINTENANCE
IO request from
OTHER_GROUPS
the database
Background Queues Disk Queues
High Cell Disk
Medium
IO request tag: Low Cell Disk
o Db Name IORM
o Type SNIF - Cell Disk 4 Cell Disk
o Consumer Group
SNIF - Cell Disk 3
SNIF - Cell Disk 2 Cell Disk
SNIF - Cell Disk 1
IO request from
Foreground Queues
the database
APPS
REPORTS
SNIF Performance
MAINTENANCE
Statistics
OTHER_GROUPS

Background Queues
High
Medium
Low

Figure 7-8. IORM architecture

Limiting Excess I/O Utilization


/RDINARILY WHENEXCESS)/RESOURCESAREAVAILABLEALLOCATEDBUTUNUSEDBYOTHERCONSUMERGROUPS
)/2-ALLOWSACONSUMERGROUPTOUSEMORETHANITSALLOCATION&OREXAMPLEIFTHEB2A0C27DATABASEIS
ALLOCATEDATLEVEL ITMAYCONSUME)/RESOURCESABOVETHATLIMITIFOTHERDATABASESHAVENOTFULLY
UTILIZEDTHEIRALLOCATION9OUMAYCHOOSETOOVERRIDETHISBEHAVIORBYSETTINGANABSOLUTELIMITONTHE)/
RESOURCESALLOCATEDTOSPECIFICDATABASES4HISPROVIDESMOREPREDICTABLE)/PERFORMANCEFORMULTI
TENANTDATABASESERVERENVIRONMENTS4HE;8<8C)/2-ATTRIBUTEISUSEDTOSETACAPONTHE)/RESOURCES
ADATABASEMAYUSEEVENWHENEXCESS)/CAPACITYISAVAILABLE4HEFOLLOWINGLISTINGSHOWSAN)/2-
PLANTHATCAPSTHEB2A0C27DATABASEAT
P[cTaX^a\_[P]SQ?[P],
]P\T,B2A0C27[TeT[, P[[^RPcX^],%[X\Xc,'
]P\T,^cWTa[TeT[,!P[[^RPcX^], 
"YTHEWAY MAXIMUM)/LIMITSMAYALSOBEDEFINEDATTHECONSUMERGROUPLEVEL BYUSINGTHE
<0GNDC8;8I0C8>=N;8<8CATTRIBUTEINYOUR$"2-RESOURCEPLANS


#(!04%2 2%3/52#%-!.!'%-%.4

 .OTE)NMOSTCASES ASINGLE LEVEL)/RESOURCEPLANISSUFFICIENT!STHEYDOWITH$"2- MULTI LEVEL)/2-


RESOURCEPLANSINCREASETHECOMPLEXITYOFMEASURINGTHEEFFECTIVENESSOFYOURALLOCATIONSCHEME

7HENUSINGMULTI LEVELALLOCATIONSCHEMES ITSIMPORTANTTOUNDERSTANDTHAT)/RESOURCESALLOCATEDBUTUNUSEDBY


ADATABASE CATEGORY ORCONSUMERGROUPONLEVELAREIMMEDIATELYPASSEDTOTHENEXTLEVEL&OREXAMPLE IFYOU
HAVEDATABASES!AND"ALLOCATEDONLEVEL ANDDATABASE#ISALLOCATEDATLEVEL THENIF
DATABASE!USESONLYOFITSALLOCATION THEREMAININGISPASSEDTODATABASE#$ATABASE"CANNOT
CAPITALIZEON)/RESOURCESALLOCATEDBUTUNUSEDBYDATABASE! BECAUSE!AND"AREONTHESAMELEVEL4HISISA
SUBTLEBUTIMPORTANTDISTINCTIONOFMULTI LEVELPLANS)FYOUARENOTCAREFUL YOUCANFINDYOURSELFUNINTENTIONALLY
GIVINGEXCESS)/RESOURCESTOLESSIMPORTANTDATABASESATLOWERLEVELSRATHERTHANMAKINGTHOSERESOURCES
AVAILABLETOYOURHIGHER PRIORITYDATABASESONLEVEL

Workload Optimization
4OOPTIMIZE)/PERFORMANCE )/2-DISTINGUISHESBETWEENSMALLANDLARGE)/REQUESTS2EQUESTSLESS
THAN+INSIZE TYPICALLYASSOCIATEDWITH/,40TRANSACTIONS ARECATEGORIZEDASSMALLB< REQUESTS
2EQUESTS+INSIZEORGREATER WHICHAREGENERALLYASSOCIATEDWITH$7TRANSACTIONS ARECATEGORIZEDAS
LARGE;6 REQUESTS4HEDISTINCTIONBETWEENSMALLANDLARGE)/REQUESTSISIMPORTANTBECAUSETHE
ALGORITHMSUSEDFOROPTIMIZINGLOW LATENCY)/REQUESTSSMALLREQUESTS ANDHIGH THROUGHPUT)/
REQUESTSLARGEREQUESTS AREPOLAROPPOSITES&OR/,40TRANSACTIONS LOWLATENCYISMOSTIMPORTANT&OR
EXAMPLE CONSIDERANENDUSERWAITINGFORAQUICK:)0CODESEARCHTOPOPULATETHESCREEN4OPROVIDE
OPTIMIZEDPERFORMANCEFORLOW LATENCYREQUESTS LARGE)/REQUESTSMUSTBEMANAGEDINSUCHAWAYTHAT
THEYDONTFULLYCONSUMETHE)/RESOURCESOFTHESTORAGECELL#ONVERSELY $7TRANSACTIONSREQUIREHIGH
THROUGHPUTTOMAXIMIZEPERFORMANCE4OOPTIMIZE)/FORTHROUGHPUT THESTORAGECELLMUSTSERVICE
MANYCONCURRENTLARGE)/REQUESTSSOTHATITISFULLYCONSUMED"YCOMPARINGTHELARGE;6 ANDSMALL
B< )/REQUESTSINTHE)/2-METRICS YOUCANDETERMINEWHETHERYOURDATABASESLEANMORETOWARDA
$7WORKLOADORAN/,40WORKLOAD2ECENTLY /RACLEADDEDANEWATTRIBUTETO)/2- KNOWNASTHE
OPTIMIZATION^QYTRcXeT4HISATTRIBUTEDETERMINESTHEOPTIMIZATIONMODE)/2-WILLUSEWHEN
MANAGINGCELLDISK)/QUEUES4HEOPTIONALVALUESFORTHE)/2-^QYTRcXeTATTRIBUTEAREASFOLLOWS
low_latency: 4HISSETTINGPROVIDESOPTIMIZATIONFORAPPLICATIONSTHATAREEXTREMELY
SENSITIVETO)/LATENCY)TPROVIDESTHELOWESTPOSSIBLE)/LATENCIES BY
SIGNIFICANTLYLIMITINGDISKUTILIZATION)NOTHERWORDS THROUGHPUT HUNGRY
APPLICATIONSWILLBESIGNIFICANTLYNEGATIVELY IMPACTEDBYTHISOPTIMIZATION
OBJECTIVE
high_throughput: 4HISSETTINGPROVIDESTHEBESTPOSSIBLETHROUGHPUTFOR$7
TRANSACTIONS BYATTEMPTINGTOFULLYUTILIZETHE)/CAPACITYOFTHESTORAGECELLS)TIS
THEOPPOSITEOF[^fN[PcT]RhANDASSUCH ITWILLSIGNIFICANTLYNEGATIVELY IMPACT
DISK)/LATENCY
Balanced: 4HISSETTINGATTEMPTSTOSTRIKEABALANCEBETWEENLOWLATENCYANDHIGH
THROUGHPUT4HISISDONEBYLIMITINGDISKUTILIZATIONFORLARGE)/OPERATIONSTOA
LESSERDEGREETHANTHE[^fN[PcT]RhOBJECTIVEDESCRIBEDABOVE5SETHISOBJECTIVE


#(!04%2 2%3/52#%-!.!'%-%.4

WHENWORKLOADSAREMIXEDANDYOUHAVENOAPPLICATIONSTHATREQUIREEXTREMELY
LOWLATENCY
Auto: 4HISSETTINGALLOWS)/2-TODETERMINETHEBESTOPTIMIZATIONOBJECTIVEFOR
YOURWORKLOAD2T[[baeCONTINUOUSLYMONITORSTHELARGESMALL)/REQUESTSAND
APPLIESTHEOPTIMIZATIONMETHODONABEST FITBASIS)FORMOREOFTHE)/
OPERATIONSFROMACONSUMERGROUPARESMALL)/LESSTHAN+ THENITIS
CONSIDEREDTOBEALATENCY ORIENTEDCONSUMERGROUPANDISMANAGEDACCORDINGLY
4HEDEFAULTSETTINGFORAN)/2-PLANOBJECTIVEIS@ANEMPTYSTRING 4HEOBJECTIVEMAYBESETUSINGTHE
2T[[2;8P[cTaX^a\_[P]^QYTRcXeTobjectiveCOMMANDASFOLLOWS
2T[[2;8-P[cTaX^a\_[P]^QYTRcXeT,[^fN[PcT]Rh
8>A<?;0=bdRRTbbUd[[hP[cTaTS

2T[[2;8-[XbcX^a\_[P]PccaXQdcTb^QYTRcXeT
[^fN[PcT]Rh

-ETHODSFOR-ANAGING)/ON%XADATA
!SINTRODUCEDEARLIER THEREARETHREEMETHODSFORMANAGING)/ONTHE%XADATAPLATFORM)NTERDATABASE
)/2- #ATEGORY)/2- AND)NTRADATABASE)/2-!LLTHREEADDRESSSPECIFICNEEDSFORMANAGING)/
)NTERDATABASE)/2-ALLOCATES)/RESOURCESBYDATABASENAME #ATEGORY)/2-ALLOCATES)/RESOURCES
BYCOMMONCATEGORIESAMONGDATABASES AND)NTRADATABASE)/2-MANAGES)/WITHINTHEDATABASE
USING$"2-RESOURCEGROUPS9OUCANCHOOSETOUSEANYONEOFTHEMETHODSFORMANAGINGYOUR)/
RESOURCES ORYOUCOMBINETHEMTOIMPLEMENTAMORESOPHISTICATEDRESOURCEPLAN7HENTHESEMETHODS
AREUSEDTOGETHER /RACLESCHEDULES)/INTHEFOLLOWINGORDER ALLOCATIONAMONGCATEGORIES 
ALLOCATIONAMONGDATABASES AND ALLOCATIONAMONGCONSUMERGROUPSWITHINEACHCATEGORYWITHIN
EACHDATABASE7ELLSHOWHOWALLTHISWORKSALITTLELATER

Interdatabase I/O Resource Management


)NTERDATABASE)/RESOURCEMANAGEMENTREFERSTOTHE)/2-FEATURETHATMANAGES)/PRIORITYAMONG
MULTIPLEDATABASESBYDATABASENAME)NTERDATABASE)/2-ALLOCATES)/RESOURCESACROSSMULTIPLE
DATABASESBYMEANSOFAN)/2-PLANCONFIGUREDONEACHSTORAGECELL4HE)/2-PLANDEFINESALLOCATION
PRIORITIESUSING)/DIRECTIVES%ACHSTORAGECELLMANAGESITSOWN)/QUEUESBASEDONTHELOCAL)/2-
PLANDEFINEDINTHECELL)/2-PLANSSHOULDBEIDENTICALFORALLSTORAGECELLSINTHESTORAGEGRID)FYOU
HAVESPLITYOUR%XADATASTORAGECELLSINTOMULTIPLESTORAGEGRIDS THEN)/2-PLANSMAYDIFFERFROMGRIDTO
GRID BUTTHEYSHOULDSTILLBEIDENTICALAMONGSTORAGECELLMEMBERSWITHINEACHSTORAGEGRID7EDISCUSS
CONFIGURINGMULTIPLESTORAGEGRIDSIN#HAPTER&IGURE ILLUSTRATESHOW)/ALLOCATIONPOLICIESARE
ORGANIZEDWITHINTHE)/2-PLAN


#(!04%2 2%3/52#%-!.!'%-%.4

)/2ESOURCE0LAN
)/2ESOURCE$IRECTIVES

Level 1 I/O Level 2 I/O Level 3 I/O


Database
Allocation Allocation Allocation

SCRATCH 60%

SNIFF 80%

OTHER 100%

Figure 7-9. Interdatabase IORM plan

)N&IGURE  OURB2A0C27DATABASE THEHIGHEST PRIORITYDATABASE ISGUARANTEEDOFTHETOTAL)/ON


LEVEL/NLEVEL OURB=855DATABASETAKESITSSLICEOFTHEREMAININGOFUNALLOCATED)/FROM
LEVEL!NYUNUSED)/FROMLEVELALSOCASCADESDOWNTOLEVEL)NADDITIONTOANYUNCONSUMED)/
FROMLEVELSAND DATABASESONLEVELWILLEQUALLYSHARETHEUNALLOCATEDOFTOTAL)/ ¾
 .OTETHATANYDATABASESTHATDONOTEXPLICITLYAPPEARINTHEACTIVE)/RESOURCEPLANWILL
AUTOMATICALLYBEASSIGNEDTOTHE>C74AGROUP

#ONFIGURING)NTERDATABASE)/2-
)NTERDATABASE)/2ESOURCE-ANAGERISCONFIGUREDUSINGAN)/2-PLAN4HISPLANDETERMINESTHE
DATABASE)/PRIORITIESFORTHESTORAGECELL)/2-PLANSARECREATEDUSINGTHE2T[[2;8COMMAND0;C4A
8>A<?;0=4HERECANBEONLYONE)/2-PLANPERSTORAGECELL REGARDLESSOFHOWMANY!3-INSTANCES
CLUSTEREDORSINGLEINSTANCE USEITFORSTORAGE#REATINGAN)NTERDATABASE)/2-PLANISFAIRLYSIMPLE4HE
FIRSTSTEPISTODETERMINEWHATYOURALLOCATIONPOLICYSHOULDBEFOREACHDATABASE9OUWILLUSETHESE
ALLOCATIONPOLICIESTODEFINETHEDIRECTIVESFORYOUR)/2-PLAN4HE;4E4;ATTRIBUTESPECIFIESTHEPRIORITYA
DATABASESHOULDBEGIVENRELATIVETOOTHERDATABASESINTHEPLAN4HE0;;>20C8>=ATTRIBUTEDETERMINES
THEPERCENTAGEOF)/ADATABASEWILLBEGIVENOUTOFTHETOTAL)/AVAILABLEONITSLEVEL4HEFOLLOWING
EXAMPLEDEMONSTRATESHOWYOUTOCREATEAN)/2-PLANTOIMPLEMENTTHEALLOCATIONPOLICIESILLUSTRATED
IN&IGURE 
2T[[2;8-0;C4A8>A<?;0=
SQ?[P],
]P\T,B2A0C27[TeT[, P[[^RPcX^],%
]P\T,B=855[TeT[,!P[[^RPcX^],'
]P\T,^cWTa[TeT[,"P[[^RPcX^], 

8>A<?;0=bdRRTbbUd[[hP[cTaTS

4HE2T[[2;8COMMAND[XbcX^a\_[P]STcPX[DISPLAYSOURNEW)/2-PLAN.OTICETHATTHERPc?[P]
ATTRIBUTEISEMPTY4HISISAPLACEHOLDERFORTHE#ATEGORY)/2-PLANWELLBELOOKINGINTHENEXTTOPIC

2T[[2;8-[XbcX^a\_[P]STcPX[
]P\T)T]ZRT[ N8>A<?;0=
RPc?[P])
SQ?[P])]P\T,B2A0C27eT[, P[[^RPcX^],%
]P\T,B=855eT[,!P[[^RPcX^],'
]P\T,^cWTaeT[,"P[[^RPcX^], 
bcPcdb)X]PRcXeT


#(!04%2 2%3/52#%-!.!'%-%.4

4HEAGGREGATEALLOCATIONFORALLDATABASESONALEVELMAYNOTEXCEED)FTHESUMOFALLOCATIONSON
ANYLEVELEXCEEDS 2T[[2;8WILLTHROWANERROR&OREXAMPLE THEFOLLOWINGLISTINGSHOWSTHEERROR
2T[[2;8PRODUCESWHENOVERISALLOCATEDONLEVEL
2T[[2;8-0;C4A8>A<?;0=
SQ?[P],
]P\T,B2A0C27[TeT[, P[[^RPcX^],%
]P\T,B=855[TeT[, P[[^RPcX^],'
]P\T,^cWTa[TeT[,"P[[^RPcX^], 

24;;%)8>A<?;0=R^]cPX]bP]X]eP[XSP[[^RPcX^]c^cP[

"EFOREOUR)NTERDATABASE)/2-0LANCANMANAGE)/RESOURCES ITMUSTBEACTIVATEDUSINGTHE2T[[2;8
COMMAND0;C4A8>A<?;0=02C8E4&ORNOW WELLLEAVEITTURNEDOFF,ATER INTHEh5NDERSTANDING)/2-
-ETRICSvSECTIONOFTHECHAPTER WELLTESTOUR)NTERDATABASE)/2-0LANANDDISCUSSHOWTHEEFFECTSOF
)/2-CANBEMONITOREDATTHESTORAGECELLS

Category IORM
4HE)/2ESOURCE-ANAGER)/2- EXTENDSTHECONCEPTOFRESOURCEGROUPSWITHANEWATTRIBUTEKNOWN
ASAcategory7HILERESOURCEGROUPSALLOW$"2-TOMANAGERESOURCESWITHINADATABASE CATEGORIES
PROVIDE)/RESOURCEMANAGEMENTAMONGMULTIPLEDATABASES&OREXAMPLE SUPPOSEOURTWODATABASES
B2A0C27ANDB=855 HAVESIMILARWORKLOADS4HEYBOTHHOST/,40APPLICATIONSTHATDOSHORT TIME
SENSITIVETRANSACTIONS$URINGBUSINESSHOURS THESETRANSACTIONSMUSTTAKEPRIORITY4HESEDATABASES
ALSODOAFAIRAMOUNTOFBATCHPROCESSING SUCHASRUNNINGREPORTSANDMAINTENANCEJOBS4HEBATCH
PROCESSINGTAKESALOWERPRIORITYDURINGBUSINESSHOURS4HESETWOWORKLOADSCANBEMANAGEDAND
PRIORITIZEDUSING)/2-CATEGORIES4HECATEGORIES0??BN20C46>AHAND10C27N20C46>AHCANBEDEFINEDIN
BOTHDATABASESFORHIGH PRIORITYAPPLICATIONSANDLONG RUNNING LOWER PRIORITYACTIVITIES RESPECTIVELY)F
0??BN20C46>AHISALLOCATEDONLEVEL THENNOMATTERHOWHEAVILYLOADEDTHESTORAGEGRIDIS SESSIONS
ASSIGNEDTOTHISCATEGORY FORBOTHDATABASES WILLBEGUARANTEEDAMINIMUMOFOFALL)/

#ONFIGURING#ATEGORY)/2-
3ETTINGUP#ATEGORY)/2-ISFAIRLYSTRAIGHTFORWARD/NCEYOUVECREATEDYOUR$"2-CONSUMERGROUPS
YOUWILLCREATECATEGORIESINTHEDATABASEANDASSIGNTHEMTOYOURCONSUMERGROUPS4HEFINALSTEPISTO
CREATEAN)/2-PLANINTHESTORAGECELLSTOESTABLISH)/ALLOCATIONANDPRIORITYFOREACHCATEGORY9OU
CANDEFINEASMANYASEIGHTLEVELSINYOUR#ATEGORY)/2-0LAN&IGURE ILLUSTRATESTHERELATIONSHIP
BETWEENCONSUMERGROUPS CATEGORIES ANDTHE#ATEGORY)/2-0LAN


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-10. IORM resource management by category

&ORTHISEXERCISE WELLCREATETWONEWCATEGORIES 0??BN20C46>AH AND10C27N20C46>AH ANDASSIGN


THEMTOTHE0??B A4?>ACB AND<08=C4=0=24RESOURCEGROUPSWECREATEDEARLIERINTHECHAPTER4HE
FOLLOWINGLISTINGCREATESOURNEWCATEGORIESANDASSIGNSTHEMTOTHERESOURCEGROUPS2EMEMBERTHAT
YOUWILLNEEDTORUNTHESECOMMANDSONALLDATABASESPARTICIPATINGINTHE)/2-#ATEGORY0LAN&OR
ILLUSTRATIONPURPOSES WELLKEEPTHENUMBEROFCATEGORIESTOTWO4HEA4?>ACBAND<08=C4=0=24RESOURCE
GROUPSWILLBEASSIGNEDTOTHECATEGORY10C27N20C46>AH
1468=
SQ\bNaTb^daRTN\P]PVTaR[TPaN_T]SX]VNPaTP*
SQ\bNaTb^daRTN\P]PVTaRaTPcTN_T]SX]VNPaTP*

2aTPcT2PcTV^aXTb
SQ\bNaTb^daRTN\P]PVTaRaTPcTNRPcTV^ah
RPcTV^ah,-0??BN20C46>AH
R^\\T]c,-2PcTV^ahU^a8]cTaPRcXeT0__[XRPcX^]b*
SQ\bNaTb^daRTN\P]PVTaRaTPcTNRPcTV^ah
RPcTV^ah,-10C27N20C46>AH
R^\\T]c,-AT_^acb<PX]cT]P]RT9^Qb*

0bbXV]2^]bd\Ta6a^d_bc^2PcTV^aXTb
SQ\bNaTb^daRTN\P]PVTad_SPcTNR^]bd\TaNVa^d_
R^]bd\TaNVa^d_,-0??B
]TfNRPcTV^ah,-0??BN20C46>AH*
SQ\bNaTb^daRTN\P]PVTad_SPcTNR^]bd\TaNVa^d_
R^]bd\TaNVa^d_,-A4?>ACB
]TfNRPcTV^ah,-10C27N20C46>AH*
SQ\bNaTb^daRTN\P]PVTad_SPcTNR^]bd\TaNVa^d_
R^]bd\TaNVa^d_,-<08=C4=0=24
]TfNRPcTV^ah,-10C27N20C46>AH*



#(!04%2 2%3/52#%-!.!'%-%.4

SQ\bNaTb^daRTN\P]PVTabdQ\XcN_T]SX]VNPaTP*
4=3*


?;B@;_a^RTSdaTbdRRTbbUd[[hR^\_[TcTS
4OCHECKYOURRESOURCE GROUP TO CATEGORYMAPPINGS QUERYTHE310NABA2N2>=BD<4AN6A>D?BVIEWAS
FOLLOWS.OTICETHATTHE>C74AN6A>D?BCONSUMERGROUPWASASSIGNEDTOTHE>C74ACATEGORY4HATMAPPING
ISCREATEDAUTOMATICALLYBY/RACLEANDCANNOTBEALTERED
BHB)B2A0C27-B4;42CR^]bd\TaNVa^d_RPcTV^ah
5A><310NABA2N2>=BD<4AN6A>D?B
F74A4R^]bd\TaNVa^d_
X]0??BA4?>ACB<08=C4=0=24>C74AN6A>D?B
>A34A1HRPcTV^ah*

2>=BD<4AN6A>D?20C46>AH

0??B0??BN20C46>AH
A4?>ACB10C27N20C46>AH
<08=C4=0=2410C27N20C46>AH
>C74AN6A>D?B>C74A
.OWWECANCREATEANEW#ATEGORY)/2-0LANONTHESTORAGECELLSANDSET)/LIMITSONTHESECATEGORIES
"EFOREWEDO THOUGH WELLDROPTHE)NTERDATABASE)/2-0LANWECREATEDINTHEPREVIOUSEXAMPLE
2EMEMBERTHATEACHSTORAGECELLMAINTAINSITSOWN)/2-PLAN SOYOUWILLNEEDTORUNTHESECOMMANDS
ONEVERYCELLINYOURSTORAGEGRID
2T[[2;8-P[cTaX^a\_[P]SQ_[P],

8>A<?;0=bdRRTbbUd[[hP[cTaTS
.OWWEREREADYTOCREATEOUR#ATEGORY)/2-0LAN4HEFOLLOWINGCOMMANDCREATESAPLANINWHICH
0??BN20C46>AHAND10C27N20C46>AHAREALLOCATEDAND RESPECTIVELY OFTHETOTAL#ELL)/ATLEVEL
4HEDEFAULTCATEGORY >C74A ISALLOCATEDONLEVEL

2T[[2;8-P[cTaX^a\_[P]RPc_[P],
]P\T,0??BN20C46>AH[TeT[, P[[^RPcX^],&
]P\T,10C27N20C46>AH[TeT[, P[[^RPcX^],"
]P\T,>C74A[TeT[,!P[[^RPcX^], 


8>A<?;0=bdRRTbbUd[[hP[cTaTS
!GAIN WELLUSETHE2T[[2;8COMMAND[XbcX^a\STcPX[ANDCONFIRMTHATOUR#ATEGORY)/2-0LAN
ISCONFIGUREDTHEWAYWEWANTIT

2T[[2;8-[XbcX^a\_[P]STcPX[
]P\T)T]ZRT[ N8>A<?;0=
RPc?[P])]P\T,0??BN20C46>AHeT[, P[[^RPcX^],&
]P\T,10C27N20C46>AHeT[, P[[^RPcX^],"
]P\T,>C74AeT[,!P[[^RPcX^], 


#(!04%2 2%3/52#%-!.!'%-%.4

SQ?[P])
bcPcdb)X]PRcXeT
"ECAUSEWEDROPPEDTHE)NTERDATABASEPLANFROMTHEPREVIOUSEXERCISE THESQ?[P]FIELDISEMPTY
7ELLREINSTALLTHATPLANAGAINWHENWEAREREADYTOTESTOURRESOURCEPLANS.OTETHATTHE)/2-0LANIS
INACTIVE7ELLLEAVEOUR#ATEGORY0LANINACTIVEFORNOW,ATER INTHE)/2-METRICSSECTIONOFTHE
CHAPTER WELLTESTOUR#ATEGORY)/2-0LANANDDISCUSSHOWTHEEFFECTSOF)/2-CANBEMONITOREDATTHE
STORAGECELLS

Intradatabase IORM
)NTHECASEOF)NTERDATABASE)/RESOURCEMANAGEMENT RT[[baeIDENTIFIES)/REQUESTSBYATAG
CONTAININGTHEDATABASENAMEISSUINGTHEREQUEST#ATEGORY)/RESOURCEMANAGEMENTWORKSINA
SIMILARWAY USINGATAGINTHE)/REQUESTTOIDENTIFYTHECATEGORYISSUINGTHEREQUEST4HETHIRD AND
FINAL TYPEOF)/RESOURCEMANAGEMENTAVAILABLEONTHE%XADATAPLATFORMIS)NTRADATABASE)/2-
)NTRADATABASE)/RESOURCEMANAGEMENTISCONFIGUREDINEACHDATABASEUSING$"2-SMANAGEMENT
ATTRIBUTES <6<CN? '9OUMAYRECALLFROMEARLIERINTHECHAPTERTHATTHE<6<CN?nATTRIBUTESAREWHAT
$"2-USESTOMANAGE#05RESOURCES$"2-USES#05ALLOCATIONDIRECTIVESTODEFINEPRIORITIESAMONG
CONSUMERGROUPSWITHINTHEDATABASE"YTYING)/ALLOCATIONSTO#05ALLOCATIONS )/2-CARRIESFORWARD
THESEPRIORITIESTOTHESTORAGELAYER THUSMAINTAININGACONSISTENTPROVISIONINGSCHEMEFORBOTH

#ONFIGURING)NTRADATABASE)/2-
)NTRADATABASE)/2-ISNOTTERRIBLYDIFFICULTTOIMPLEMENT)NFACT INAMANNEROFSPEAKING WEHAVE
ALREADYDONESO)NTHE$"2-SECTIONOFTHISCHAPTER WECREATEDCONSUMERGROUPS RESOURCEPLANS AND
PLANDIRECTIVESTHATMANAGED#05RESOURCESWITHINTHEB2A0C27DATABASE/NTHE%XADATAPLATFORM
WHENA$"2-RESOURCEPLANISACTIVATED THEDATABASETRANSMITSADESCRIPTIONOFTHEPLAN INCLUDING
<6<CN?nDIRECTIVES TOALLCELLSINTHESTORAGEGRID4HISALSOHAPPENSANYTIMERT[[baeISSTARTEDONTHE
STORAGECELLS3OWHETHERYOUREINSTALLINGANEWCELLINTOTHESTORAGEGRID REBOOTINGACELL ORBOUNCING
RT[[baeSERVICES YOUR)NTRADATABASERESOURCEPLANWILLBEPUSHEDTOTHECELLAUTOMATICALLY)F)/2-IS
ACTIVEONTHECELL ITWILLGENERATEAN)NTRADATABASE0LANANDBEGINMANAGING)/PRIORITIESACCORDINGTO
YOURRESOURCEDIRECTIVES&IGURE ILLUSTRATESTHEPROCESSOFCONFIGURINGANDACTIVATING)NTRADATABASE
)/2-


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-11. An Intradatabase I/O resource plan

)N&IGURE  WESEETHECALLSTO$"-3?2%3/52#%?-!.!'%2THATCREATEDOURRESOURCEPLANAND
PLANDIRECTIVESFORTHEB2A0C27ANDB=855DATABASES4HESEDIRECTIVESAREUSEDTOASSIGN#05AND)/
ALLOCATIONFORTHERESOURCEGROUPS0??B A4?>ACB <08=C4=0=24 AND>C74AN6A>D?B7HENTHE30HC8<4PLAN
ISACTIVATED ITSDEFINITIONISSENTTORT[[baeONTHESTORAGECELLS7HENRT[[baeRECEIVESTHERESOURCE
PLAN ITGENERATESAN)NTRADATABASE)/2-0LAN CONFIGURES)/QUEUESFOREACHCONSUMERGROUP AND
BEGINSTOMANAGE)/RESOURCES

"RINGING)T!LL4OGETHER
!SDISCUSSEDEARLIER EACHOFTHETHREE)/2-MANAGEMENTMETHODSMAYBEUSEDINDIVIDUALLYORIN
COMBINATION,ETSTAKEALOOKATHOWALLTHREEMETHODSWORKTOGETHERTOMANAGE)/.OW THISISTHE
PARTWHEREYOURCOLLEGEACCOUNTINGPROFESSORWOULDSAYhEACHLESSONBUILDSONTHELAST SOIFYOUSKIPPED
CLASSLASTWEEK YOUMAYFEELALITTLELOSTTODAYv)NTHISEXERCISE WELLBEUSINGALLOFTHEELEMENTSOF
$"2-AND)/2-WEVEDISCUSSEDINTHISCHAPTER4OAVOIDCONFUSIONANDSAVEYOUTHETROUBLEOF


#(!04%2 2%3/52#%-!.!'%-%.4

THUMBINGTHROUGHTHEPAGESYOUVEALREADYREAD 4ABLE SHOWSASUMMARYOFHOWWEVECONFIGURED


/RACLE2ESOURCE-ANAGERFORTHEB2A0C27ANDB=855DATABASESINTHISCHAPTER

Table 7-4. Summary of DBRM / IORM Resource Allocation

I/O Management Type Allocation Assignment

Category IORM
Categories Consumer Groups
ƒ 0??BN20C46>AH ATLEVEL ƒ 0??B
ƒ 10C27N20C46>AH ATLEVEL ƒ A4?>ACB <08=C4=0=24
ƒ >C74A ATLEVEL ƒ >C74AN6A>D?B

Interdatabase IORM
Databases Databases
ƒ B2A0C27 ATLEVEL ƒ B2A0C27
ƒ B=855 ATLEVEL ƒ B=855
ƒ >C74A ATLEVEL ƒ !LLOTHERS

Intradatabase IORM
Consumer Groups User Accounts
ƒ 0??B ATLEVEL ƒ :>B1>A=4
ƒ A4?>ACB ATLEVEL ƒ A9>7=B>=
ƒ <08=C4=0=24 ATLEVEL ƒ C?>34A
ƒ >C74AN6A>D?B ATLEVEL ƒ !LLOTHERUSERACCOUNTS

4HEREISAFIXEDORDEROFPRECEDENCEBETWEENTHETHREE)/2-METHODSWEVEDISCUSSED!S)/
REQUESTSTRAVERSETHELAYERSOFTHE)/2-STACK THEYAREDIVIDEDANDALLOCATEDBYTHENEXTMETHOD!TTHE
TOPOFTHE)/2-HIERARCHY OF)/RESOURCESAREAVAILABLEBECAUSETHESTORAGECELLISNOTSATURATED
BY)/REQUESTS4HENEXTLEVELOFTHEHIERARCHYIS#ATEGORY)/2- WHICHALLOCATES)/ATASPLIT
BETWEENTHECATEGORIES0??BN20C46>AHAND10C27N20C46>AHATLEVEL !NYUNCONSUMED)/BETWEEN
THESETWOGROUPSISAVAILABLETOTHE>C74ACATEGORYATLEVEL
.EXTINTHE)/2-HIERARCHYISTHE)NTERDATABASE0LAN!TTHEDATABASELEVEL THEALLOCATEDTOTHE
0??BN20C46>AHCATEGORYISFURTHERDIVIDED GIVINGTOTHEB2A0C27DATABASEONLEVEL ANDTOTHE
B=855DATABASEATLEVEL!NYOTHERDATABASERECEIVESOFTHEUNALLOCATED)/FROMLEVEL ASWELLAS
ACCESSTOANY)/THATWASNOTCONSUMEDBYTHEB2A0C27ANDB=855DATABASESONLEVELSAND
4HETHIRDANDFINALTIEROFTHE)/2-HIERARCHYIS)NTRADATABASE)/2-/UR)NTRADATABASEPLAN
FURTHERDIVIDES)/ALLOCATIONINTOTHEFOUR$"2-CONSUMERGROUPSWECREATEDINTHEDATABASES4HE
0??BCONSUMERGROUPGETSTOPPRIORITYATONLEVEL4HEA4?>ACBGROUPISALLOCATEDATLEVEL
<08=C4=0=24AND>C74AN6A>D?BSHAREASPLITOF)/THATWASUNALLOCATEDORUNCONSUMEDATLEVELS
AND


#(!04%2 2%3/52#%-!.!'%-%.4

.OW THISISNOTTOIMPLYTHATALLRESOURCEMANAGEMENTMETHODSMUSTBECONFIGUREDTOGETHER9OU
MAYINSTEADCHOOSETOUSEJUSTONEOFTHEMETHODS ORANYCOMBINATIONOFTWO FORMANAGING)/&OR
EXAMPLEIFWEHADCONFIGURED#ATEGORY)/2-ALONETHENASILLUSTRATEDIN&IGURE  NOFURTHER
RESTRICTIONOF)/RESOURCESWOULDBEPERFORMED)/RESOURCESWOULDBESPLITATBETWEENTHE
CATEGORIES 0??BN20C46>AHAND10C27N20C46>AH3IMILARLY YOUMAYCHOOSETOIMPLEMENT)NTERDATABASE
)/2-BYITSELF INWHICHCASE)/WILLBEALLOCATEDSTRICTLYATASPLITBETWEENSESSIONSINTHEB2A0C27
ANDB=855DATABASES RESPECTIVELY)FYOUHAVEONLYONEDATABASEANDNEEDTOMANAGEDIFFERING
WORKLOADS THEN)NTRADATABASE)/2-ISYOURONLYOPTION7HEN)NTRADATABASE)/2-ISUSEDBYITSELF )/
ISMANAGEDACCORDINGTOYOUR$"2-0LANDIRECTIVESALONE&IGURE SHOWSHOW)/CALLSAREALLOCATED
ASTHEYFILTERTHROUGHEACHLAYEROF)/2-

No IORM
All User IO
100%

Category APPS_CATEGORY BATCH_CATEGORY


IORM
70% 30%

 
Interdatabase
IORM
60% 80% 60% 80%

   

Intradatabase
IORM
70%

50%

50%

70%

50%

50%

70%

50%

50%

70%

50%

!003 2043 -!).4 !003 2043 -!).4 !003 2043 -!).4 !003 2043 50%
-!).4
           

3#2!4#( 3.)&& 3#2!4#( 3.)&&


Figure 7-12. IORM method heirarchy

)N&IGURE  ALLOCATIONSFORTHEDEFAULTCONSUMERGROUP>C74AN6A>D?BANDTHEDEFAULTCATEGORY>C74A
ARENOTSHOWN BECAUSEOFSPACECONSTRAINTS)N&IGURES   ANDWESEETHECALCULATIONSUSEDTO
ALLOCATE)/RESOURCESASSHOWNIN&IGURE 4HE>C74AN6A>D?BCONSUMERGROUPAND>C74ACATEGORY
ARESHOWNHEREALONGWITHTHEIRALLOCATION&IGURES THROUGH SHOWSATABULARREPRESENTATIONOF
THERESOURCEPLANSALONGWITHTHEIRALLOCATIONPERCENTAGE!LSODISPLAYEDINTHESEEXAMPLESARETHE
FORMULASUSEDTOCALCULATETHEALLOCATION


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-13. Category IORM calculations


Figure 7-14. Interdatabase IORM calculations


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-15. Intradatabase IORM calculations

)/2--ONITORINGAND-ETRICS
)/PERFORMANCEMETRICSARECOLLECTEDANDMAINTAINEDFOR)/2-INTHESTORAGECELL4HESEMETRICS
MAYBEUSEDTODETERMINETHEEFFECTSYOUR)/2-PLANHASONTHEDATABASES CATEGORIES ANDRESOURCE
GROUPRESOURCEDIRECTIVESYOUDEFINEDINYOURENVIRONMENT&OREXAMPLE YOUCANSEEHOWMUCH)/A
PARTICULARDATABASEISUSINGCOMPAREDTOOTHERDATABASES"YOBSERVINGTHEACTUAL)/DISTRIBUTIONFOR
YOUR)/2-CONSUMERGROUPS YOUCANDETERMINEWHETHERADJUSTMENTSNEEDTOBEMADETOPROVIDE
ADEQUATE)/RESOURCESFORAPPLICATIONSUSINGYOURDATABASES)NTHISSECTIONWELLLOOKATHOWTHESE
METRICSAREORGANIZEDANDTAPINTOTHEVALUABLEINFORMATIONSTOREDTHERE

Understanding IORM Metrics


7HENAN)/2-PLANISDEFINEDINTHESTORAGECELL RT[[baeCREATES)/CONSUMERGROUPSCORRESPONDING
TOTHE)/DIRECTIVESDEFINEDINTHE)NTRADATABASE #ATEGORY AND)NTRADATABASE)/2-0LANS&OR
EXAMPLE THEFOLLOWING)/CONSUMERGROUPSWERECREATEDINTHESTORAGECELLSFROMOUR)/2-PLANFOR
THEB2A0C27ANDB=855DATABASES


#(!04%2 2%3/52#%-!.!'%-%.4

)NTERDATABASE B2A0C27
B=855
>C74A

#ATEGORY 0??BN20C46>AH
10C27N20C46>AH
>C74A

)NTRADATABASE 0??B
A4?>ACB
<08=C4=0=24
>C74AN6A>D?B

%VERYSECONDS RT[[baeCOLLECTSKEYPERFORMANCEMETRICSFROMTHE)/QUEUESANDSTORESTHEMIN
THE<4CA822DAA4=COBJECT.OTETHATWESAIDobject NOTtableORfile2T[[baeISA*AVAPROGRAM WRITTENBY
*AVADEVELOPERS NOT31,DEVELOPERS3OUNFORTUNATELY THESEMETRICSARENOTSTOREDINTHEFAMILIAR
TABULARFORMAT$"!SHAVECOMETOKNOWANDLOVE)NSTEADOFTABLES COLUMNS ANDROWS THESEMETRICS
ARESTOREDINOBJECTSANDATTRIBUTES4HEFOLLOWINGLISTINGSHOWSTHESTRUCTUREOFTHE<4CA822DAA4=COBJECT
ALONGWITHAFEWSAMPLERECORDS
2T[[2;8-STbRaXQT\TcaXRRdaaT]c
]P\T
P[TacBcPcT
R^[[TRcX^]CX\T
\TcaXR>QYTRc=P\T
\TcaXRCh_T
\TcaXREP[dT
^QYTRcCh_T

2T[[2;8-;8BC<4CA822DAA4=C~
F74A4]P\T,2CN8>NA@N;6~
0=3^QYTRcch_T,8>A<N20C46>AH
0CCA81DC4B]P\T^QYTRcch_T\TcaXR>QYTRc=P\T\TcaXREP[dT

=P\T^QYTRcCh_T\TcaXR>QYTRc=P\T\TcaXREP[dT

2CN8>NA@N;68>A<N20C46>AH0??BN20C46>AH8>aT`dTbcb
2CN8>NA@N;68>A<N20C46>AH10C27N20C46>AH %&(8>aT`dTbcb
2CN8>NA@N;68>A<N20C46>AH>C74A!#('8>aT`dTbcb


#(!04%2 2%3/52#%-!.!'%-%.4

 .OTE-ETRICSARECOLLECTEDFOR)/REQUESTSTOFLASHCACHE FLASH BASEDGRIDDISKS ANDPHYSICALDISKSGRID


DISKS (OWEVER )/2-ONLYMANAGES)/RESOURCESFORPHYSICALDISKS SOMETRICSFORTHEPHYSICALDISKSWILLBETHE
FOCUSOFTHISDISCUSSION

7HENANEWCOLLECTIONISRUN THEPREVIOUSSETOFMETRICSISMOVEDTOTHE<4CA8278BC>AHOBJECT
WHEREITISKEPTFORAPERIODOFTIME-ETRICHISTORYISRETAINEDFORTHENUMBEROFDAYSSPECIFIEDINTHE
<4CA8278BC>AH30HB ATTRIBUTEOFCELL THEDEFAULTISDAYS &OREXAMPLE THENEXTLISTINGSHOWSTHAT
CELLSRVWILLMAINTAINAROLLINGHISTORYOFDAYS
2T[[2;8-[XbcRT[[PccaXQdcTb]P\T\TcaXR7Xbc^ah3Phb
T]ZRT[ &
)FYOUDETERMINETHATDAYSISNOTSUFFICIENTHISTORYFORYOURNEEDS YOUCANMODIFYTHERETENTIONPERIOD
WITHTHE2T[[2;8COMMANDP[cTaRT[[4HEFOLLOWINGLISTINGSHOWSHOWYOUCANCHANGETHERETENTION
FORYOURSTORAGECELLSTODAYS
2T[[2;8-P[cTaRT[[\TcaXR7Xbc^ah3Phb, #
2T[[T]ZRT[ bdRRTbbUd[[hP[cTaTS

2T[[2;8-[XbcRT[[PccaXQdcTb]P\T\TcaXR7Xbc^ah3Phb
T]ZRT[  #

7ORKLOAD-ANAGEMENT
)/2-METRICSPROVIDEINSIGHTINTOHOWRT[[baeISALLOCATING)/RESOURCESAMONGTHECONSUMERSINYOUR
STORAGEGRID2T[[baeKEEPSTRACKOF)/REQUESTSBROADLYCATEGORIZEDAShSMALLREQUESTSvANDhLARGE
REQUESTSv"YCOMPARINGTHELARGE;6 ANDSMALLB< )/REQUESTSINTHE)/2-METRICS YOUCAN
DETERMINEWHETHERYOURDATABASESLEANMORETOWARDA$7WORKLOADHIGHTHROUGHPUT ORAN/,40
WORKLOADLOWLATENCY /RACLERECENTLYADDEDANEWOPTIONTOTHE)/2-PLANCALLED^QYTRcXeTTHATTELLS
)/2-TOOPTIMIZETHECELLDISK)/QUEUESFORLOWLATENCY HIGHTHROUGHPUT ORSOMETHINGINBETWEEN
4HE)/2-METRIC8>A<N<>34WASADDEDTOCAPTURETHEOBJECTIVEINUSEDURINGTHECOLLECTIONPERIOD"Y
COMPARINGTHE8>A<N<>34WITHTHEACTUALWORKLOADONYOURSTORAGECELLS YOUCANDETERMINEWHETHERTHE
CURRENT)/2-OBJECTIVEISAPPROPRIATEORNOT&OREXAMPLE IFYOUFINDTHATAMAJORITYOF)/OPERATIONS
INTHESTORAGECELLSAREGREATERTHAN+ANDTHUSLARGE;6 THEN)/2-SHOULDBESETTOOPTIMIZEFOR
HIGHTHROUGHPUT^QYTRcXeT,WXVWNcWa^dVW_dc /RACLEUSESATHRESHOLDOFLARGE)/WHENTHE)/2-
OBJECTIVEISSETTOPdc^ SOTHATSHOULDGIVEYOUANIDEAOFWHATISMEANTBYhMAJORITYv&ORMORE
INFORMATIONONTHE)/2-OBJECTIVEANDPOSSIBLESETTINGS REFERTOTHE7ORKLOAD/PTIMIZATIONSECTION
EARLIERINTHISCHAPTER4HE8>A<N<>34METRICCANBEOBSERVEDUSINGTHEFOLLOWING2T[[2;8COMMAND
2T[[2;8-[Xbc\TcaXRRdaaT]cX^a\N\^ST
8>A<N<>34T]ZRT[ 
0OSSIBLESETTINGSFORTHE8>A<N<>34ATTRIBUTEAREASFOLLOWS
v  )/2-OBJECTIVEWASSETTO[^fN[PcT]Rh
v  )/2-OBJECTIVEWASSETTOQP[P]RTS
v  )/2-MODEWASSETTOWXVWNcWa^dVW_dc


#(!04%2 2%3/52#%-!.!'%-%.4

!N8>A<N<>34RANGINGBETWEENAND ORBETWEENAND INDICATESTHEMODEWASCHANGEDDURING


THEPOLLINGPERIOD)TALSOINDICATESTHEPROXIMITYTOTHE)/2-OBJECTIVE4HISMIGHTOCCUR FOREXAMPLE IF
THEOBJECTIVEWASSETTOPdc^ANDDURINGTHEPOLLINGPERIODTHEWORKLOADSHIFTEDSIGNIFICANTLYFROMSMALL
)/REQUESTSTOLARGE)/REQUESTS"YCOMPARINGTHE8>A<N<>34METRICOVERTIME YOUCANDETERMINEHOW
VOLATILEYOURWORKLOADIS!CONSTANTLYCHANGINGWORKLOADMAYGIVEINSIGHTINTOWHERE)/2ESOURCE
-ANAGEMENTISNEEDEDTHEMOST
4HEMETRICSWEREINTERESTEDINFOR)/2-MONITORINGHAVEAN^QYTRcCh_TOF8>A<N30C010B4
8>A<N20C46>AH AND8>A<N2>=BD<4AN6A>D?4HESEMETRICSAREFURTHERORGANIZEDBYTHE]P\TATTRIBUTEIN
THE<4CA822DAA4=COBJECT4HENAMEOFTHEMETRICISACONCATENATIONOFABBREVIATIONSTHATINDICATETHE
TYPEOF)/CONSUMERGROUP THETYPEOFSTORAGEDEVICE ANDADESCRIPTIVENAME4HEELEMENTSOFTHE]P\T
ATTRIBUTEAPPEARASFOLLOWS
jconsumer_typelNjdevice typelNjmetricl
7HEREconsumer_typeREPRESENTSTHE)/2-RESOURCEGROUPANDISONEOFTHESE
31)NTERDATABASE)/2-0LAN
2C#ATEGORY)/2-0LAN
26)NTRADATABASE)/2-0LAN
!NDdevice_typeISTHETYPEOFSTORAGETHATSERVICEDTHE)/REQUESTANDISONEOFTHEFOLLOWING
52FLASHCACHE
53&LASH BASEDGRIDDISK
yz)FNEITHEROFTHEABOVE THENTHEMETRICREPRESENTS)/TOPHYSICALDISKS
4HELASTPARTOFTHEATTRIBUTE {metricl ISTHEDESCRIPTIVENAMEOFTHEMETRIC4HEMETRICNAMEMAYBE
FURTHERQUALIFIEDBYB<zOR;6INDICATINGTHATITREPRESENTSSMALL)/REQUESTSORLARGE)/REQUESTS&OR
EXAMPLE
CG_FC_IO_RQ_LG: 4HETOTALNUMBEROFLARGE)/REQUESTSSERVICEDFROMFLASH
CACHE&# FOR$"2-CONSUMERGROUPS
CG_FD_IO_RQ_LG: 4HETOTALNUMBEROFLARGE)/REQUESTSSERVICEDFROMFLASH
BASEDGRIDDISKS&$ FOR$"2-CONSUMERGROUPS
CG_IO_RQ_LG: 4HETOTALNUMBEROFLARGE)/REQUESTSSERVICEDFROMPHYSICALDISKS
GRIDDISKS FOR$"2-CONSUMERGROUPS
4ABLE DESCRIBESEACHOFTHE)/2-CONSUMERGROUPPERFORMANCEMETRICSCAPTUREDBYRT[[baeUSING
THESEABBREVIATIONS


#(!04%2 2%3/52#%-!.!'%-%.4

Table 7-5. Description of the Name Attribute of IORM METRICCURRENT

Name Description

jCGCTDBlN8>N1HNB42 -EGABYTESPERSECONDSCHEDULEDFORTHIS)/CONSUMER

jCGCTDBlN8>N;>03 !VERAGE)/LOADFORTHIS)/CONSUMER

jCGCTDBlN8>NA@NjSMLGl 4HECUMULATIVENUMBEROFSMALLORLARGE)/REQUESTSFROM
THIS)/CONSUMER

jCGCTDBlN8>NA@NjSMLGlNB42 4HENUMBEROFSMALLORLARGE)/REQUESTSPERSECONDISSUED
BYTHIS)/CONSUMER

jCGCTDBlN8>NFCNjSMLGl 4HECUMULATIVETIMEINMILLISECONDS THAT)/REQUESTSFROM


THE)/CONSUMERHAVESPENTWAITINGTOBESCHEDULEDBY
)/2-

jCGCTDBlN8>NFCNjSMLGlNA@ $ERIVEDFROMj262C31lN8>NFCNjB<;6lABOVE)TSTORESTHE
AVERAGENUMBEROFWAITSINMILLISECONDS THAT)/REQUESTS
HAVESPENTWAITINGTOBESCHEDULEDBY)/2-INTHEPAST
MINUTE!LARGENUMBEROFWAITSINDICATESTHATTHE)/
WORKLOADOFTHIS)/CONSUMERISEXCEEDINGITSALLOCATION&OR
LOWER PRIORITYCONSUMERSTHISMAYBETHEDESIREDEFFECT&OR
HIGH PRIORITYCONSUMERS ITMAYINDICATETHATMORE)/SHOULD
BEALLOCATEDTOTHERESOURCETOMEETTHEOBJECTIVESOFYOUR
ORGANIZATION

jCGCTDBlN8>NDC8;NjSMLGl 4HEPERCENTAGEOFTOTAL)/RESOURCESCONSUMEDBYTHIS)/
CONSUMER


!LLCUMULATIVEMETRICSABOVEARERESETTOWHENEVERCELLSRVISRESTARTED THE)/2-PLANISENABLED ORTHE
)/2-PLANCHANGESFORTHAT)/CONSUMERGROUP&OREXAMPLE IFTHE#ATEGORY)/2-PLANISCHANGED
THEFOLLOWINGCUMULATIVEMETRICSWILLBERESET
2CN8>NA@NB<
2CN8>NA@N;6
2CN8>NFCNB<
2CN8>NFCN;6
4HESE)/2-METRICSAREFURTHERCATEGORIZEDUSINGTHE\TcaXR>QYTRc=P\TATTRIBUTE)NTERDATABASE
RESOURCEPLANMETRICSFORTHEB2A0C27 ANDB=855DATABASESARESTOREDINDETAILRECORDS WHERE
\TcaXR>QYTRc=P\TISSETTOTHECORRESPONDINGDATABASENAME)NASIMILARFASHION METRICSFOR#ATEGORY
)/2-0LANSAREIDENTIFIEDWITHA\TcaXR>QYTRc=P\TMATCHINGTHE#ATEGORYNAME)/2-CONSUMER
GROUPSAREIDENTIFIEDBYACONCATENATIONOFTHEDATABASENAMEANDTHENAMEOFTHE$"2-CONSUMER


#(!04%2 2%3/52#%-!.!'%-%.4

GROUP&OREXAMPLE THEFOLLOWINGLISTINGSHOWSHOWTHE)/2ESOURCE'ROUPSFOROURB2A0C27ANDB=855
DATABASESWOULDBEREPRESENTEDINTHE<4CA822DAA4=CAND<4CA8278BC>AHOBJECTS
^QYTRcCh_T\TcaXR>QYTRc=P\T

8>A<N30C010B4B2A0C27
8>A<N30C010B4B=855
8>A<N20C46>AH0??BN20C46>AH
8>A<N20C46>AH10C27N20C46>AH
8>A<N20C46>AH>C74A
8>A<N2>=BD<4AN6A>D?B2A0C270??B
8>A<N2>=BD<4AN6A>D?B2A0C27<08=C4=0=24
8>A<N2>=BD<4AN6A>D?B2A0C27A4?>ACB
8>A<N2>=BD<4AN6A>D?B2A0C27>C74AN6A>D?B
8>A<N2>=BD<4AN6A>D?B=8550??B
8>A<N2>=BD<4AN6A>D?B=855<08=C4=0=24
8>A<N2>=BD<4AN6A>D?B=855A4?>ACB
8>A<N2>=BD<4AN6A>D?B=855>C74AN6A>D?B

Background Processes
!SWEDISCUSSEDEARLIER DATABASEBACKGROUNDPROCESSESAREAUTOMATICALLYASSIGNEDTOBUILT IN)/2-
CONSUMERGROUPSACCORDINGTOPRIORITY4ABLE SHOWSTHESESPECIAL)/2-CONSUMERGROUPS ALONG
WITHADESCRIPTIONOFWHATTHEYAREUSEDFOR

Table 7-6. Built-In Consumer Groups for Background Processes

Consumer Group Description

N0B<N )/RELATEDTO/RACLE!3-VOLUMEMANAGEMENT

N>A02;4N16N20C46>AHN (IGH PRIORITY)/REQUESTSISSUEDFROMTHEDATABASE


BACKGROUNDPROCESSES

N>A02;4N<43?A816N20C46>AHN -EDIUM PRIORITY)/REQUESTSISSUEDFROMTHEDATABASE


BACKGROUNDPROCESSES

N>A02;4N;>F?A816N20C46>AHN ,OW PRIORITY)/REQUESTSISSUEDFROMTHEDATABASE


BACKGROUNDPROCESSES

Mining the Metrics


.OWTHATYOUHAVEAPRETTYGOODIDEAOFWHATTYPESOFMETRICSARECOLLECTEDBYRT[[bae ANDHOWTOGETTO
THEM LETSTAKEALOOKATHOWTHISINFORMATIONCANBEREPORTEDANDINTERPRETED&IRST HOWEVER WE
SHOULDMENTIONTHATASAREPORTINGTOOL 2T[[2;8ISVERYLIMITED&OREXAMPLE MULTIPLEFILTERSCANBE
APPLIEDTOYOURSEARCHCRITERIAUSING ,)+% OR!.$ BUTTHELACKOFAN/2VERB ANDTHELACKOF
PARENTHESESFORSETTINGPRECEDENCE MAKEITSOMEWHATCUMBERSOMEIFNOTUTTERLYINADEQUATEFOR
REPORTING!LSO THEREISNOAGGREGATIONFUNCTIONALITY&OREXAMPLE THEREISNOWAYTOROLLUPTHESMALL


#(!04%2 2%3/52#%-!.!'%-%.4

ANDLARGE)/REQUESTSFORADATABASEANDPRESENTTHEMASh4OTAL)/2EQUESTSv4HELONGANDSHORTOFIT
IS YOUAREBETTEROFFTOJUSTDUMPOUTALLTHEROWSYOUAREINTERESTEDIN LOADTHEMINTOADATABASE AND
USE31,
0LUSTOREPORTTHEM.OW LETSTAKEALOOKATSOMESIMPLE;8BCCOMMANDSFOREXTRACTING)/2-
METRICSALONGWITHASAMPLEOFTHEOUTPUTTHEYGENERATE

2EPORTING)/2-$ATABASE-ETRICS
4HISFIRSTLISTINGREPORTS)/METRICSFOROUR$ATABASE)/2-0LAN ]P\T[XZT31N8>N)4HE
^QYTRcCh_T,y8>A<N30C010B4zISNTREALLYNECESSARYWEVEJUSTINCLUDEDITTOILLUSTRATETHATTHISISTHE
ONLY^QYTRcCh_TSTOREDFORTHISMETRIC

2T[[2;8-;8BC<4CA822DAA4=C
F74A4]P\T;8:431N8>N
0=3^QYTRcCh_T,8>A<N30C010B4
0CCA81DC4B]P\T^QYTRcCh_T\TcaXR>QYTRc=P\T\TcaXREP[dTR^[[TRcX^]CX\T

31N8>N1HNB428>A<N30C010B4B2A0C27#$"<1bTR! "!(C&)#)#%$)
31N8>N1HNB428>A<N30C010B4B<8C74AB &<1bTR! "!(C&)#)#%$)
31N8>N1HNB428>A<N30C010B4B=855<1bTR! "!(C&)#)#%$)
31N8>N;>038>A<N30C010B4B2A0C27&! "!(C&)#)#%$)


2EPORTING)/2-#ATEGORY-ETRICS
4OREPORT)/METRICSFOROUR#ATEGORY2ESOURCE0LAN THE]P\TFILTERISCHANGEDTO2CN8>N!DDINGAN
ADDITIONALFILTERONTHE >QYTRc=P\T METRIC (]^c[XZTN), ELIMINATES/RACLESAUTOMATICALLY
MAINTAINEDCATEGORIESSUCHAS N0B<N, and N>A02;4N16N20C46>AHN.
2T[[2;8-;8BC<4CA822DAA4=C
F74A4]P\T;8:42CN8>N
0=3\TcaXR>QYTRc=P\T=>C;8:4N
0CCA81DC4B]P\T^QYTRcch_T\TcaXR>QYTRc=P\T\TcaXREP[dTR^[[TRcX^]CX\T

2CN8>NDC8;N;68>A<N20C46>AH0??BN20C46>AH! "!(C%)"()#$$)
2CN8>NDC8;N;68>A<N20C46>AH10C27N20C46>AH !! "!(C%)"()#$$)
2CN8>NDC8;N;68>A<N20C46>AH>C74A "! "!(C%)"()#$$)
2CN8>NDC8;NB<8>A<N20C46>AH0??BN20C46>AH! "!(C%)"()#$$)
2CN8>NDC8;NB<8>A<N20C46>AH10C27N20C46>AH! "!(C%)"()#$$)
2CN8>NDC8;NB<8>A<N20C46>AH>C74A! "!(C%)"()#$$)


2EPORTING)/2-#ONSUMER'ROUP-ETRICS
4OREPORT)/METRICSFOROURCONSUMERGROUPS WEREPLACETHE]P\TFILTERWITH26N8>N WHICHDISPLAYS
)/METRICSFORCONSUMERGROUPS4HEADDITIONALFILTERSFOR\TcaXR>QYTRc=P\TREMOVEOTHERDATABASES
FROMTHEOUTPUTASWELLASCONSUMERGROUPSTHAT/RACLECREATESFORBACKGROUNDPROCESSES SUCHAS
N>A02;4N102:6A>D=3N6A>D?N4HER^[[TRcX^]CX\TWASOMITTEDFROMTHESAMPLEOUTPUTBECAUSEOFSPACE
CONSTRAINTS


#(!04%2 2%3/52#%-!.!'%-%.4


;8BC<4CA822DAA4=C
F74A4]P\T[XZT26N8>N
P]S^QYTRcCh_T,8>A<N2>=BD<4AN6A>D?
P]S\TcaXR>QYTRc=P\T[XZTB2A0C27
P]S\TcaXR>QYTRc=P\T]^c[XZTB2A0C27KN
0CCA81DC4B]P\T^QYTRcch_T\TcaXR>QYTRc=P\T\TcaXREP[dTR^[[TRcX^]CX\T

26N8>N;>038>A<N2>=BD<4AN6A>D?B2A0C270??Bq
26N8>N;>038>A<N2>=BD<4AN6A>D?B2A0C27<08=C4=0=24#q
26N8>N;>038>A<N2>=BD<4AN6A>D?B2A0C27>C74AN6A>D?B#q
26N8>N;>038>A<N2>=BD<4AN6A>D?B2A0C27A4?>ACBq


Testing IORM Plans


%ARLIERINTHECHAPTER WEPOSTPONEDTESTINGOUR)/2-PLANS.OWTHATYOUUNDERSTANDHOWTOMONITOR
)/2- WECANRUNASTRESSTESTANDTAKEALOOKATTHEMETRICSCOLLECTEDBYRT[[baeTOSEEWHATEFFECTOUR
)/2-PLANSHADONPERFORMANCE&ORTHISTEST WELLGENERATEALOADONTHESTORAGECELLSBYRUNNING
SEVERALCONCURRENTFULL TABLESCANSONOURB2A0C27ANDB=855DATABASES7ELLLETTHEMRUNFORAFEW
MINUTESANDTHENCOLLECTTHEDATABASE CATEGORY ANDCONSUMERGROUPMETRICSFOROURTESTDATABASES!S
WITHOUR$"2-TESTSEARLIERINTHISCHAPTER VALIDATINGTHEPRECISEALLOCATIONSFOREACH)/CONSUMERISA
VERYCOMPLICATEDUNDERTAKING BECAUSEANY)/RESOURCESTHATAREALLOCATEDBUTUNUSEDAREPASSEDTO
OTHERCONSUMERGROUPS CATEGORIES ANDDATABASES4HISISPARTICULARLYTRUEWHENIMPLEMENTINGMULTI
LEVELRESOURCEPLANS4HEFOCUSOFTHISTESTWILLBETOVERIFYTHATRT[[baeISCOLLECTINGMETRICSFOREACH
DATABASE CATEGORY ANDCONSUMERGROUP ANDTHATTHERELATIVE)/UTILIZATIONNUMBERSFOREACH
CONSUMERGROUPAREWITHINAREASONABLERANGECONSIDERINGTHEIRRESOURCEALLOCATIONS2EFERBACKTO
&IGURES THROUGH FORTHE)/ALLOCATIONSFOREACHOFOURRESOURCEPLANS

4EST/UTLINE
.OWTHATWEgVECREATEDOUR)/RESOURCEPLAN WECANTESTTOSEEHOWITWORKS&OLLOWINGARETHESTEPS
WEWILLFOLLOWTOTESTOURRESOURCEPLAN
1. !CTIVATETHE30HC8<4RESOURCEPLANINTHEB2A0C27ANDB=855DATABASES!LSO ACTIVATE
THE$ATABASEAND#ATEGORY)/2-PLANSINEACHSTORAGECELL
2. )NBOTHDATABASES STARTTHREECONCURRENTFULLTABLESCANSFROMEACHACCOUNTTHAT
MAPSTOOURCONSUMERGROUPS4HESEUSERACCOUNTSMAPTOTHECONSUMERGROUPSAS
FOLLOWS
:>B1>A=4 Æ0??B
A9>7=B>= ÆA4?>ACB
C?>34A Æ<08=C4=0=24
5A43 Æ>C74AN6A>D?B


#(!04%2 2%3/52#%-!.!'%-%.4

3. !LLOWTHEQUERIESTORUNFORAFEWMINUTES ANDTHEN WHILETHEYARESTILLRUNNING WELL


DUMPTHE)/2-METRICSFORDATABASE CATEGORY ANDCONSUMERGROUPSTOAFILE4HIS
DATAWILLBECLEANEDUPANDLOADEDINTOAN/RACLEDATABASEFORREPORTING

3TEP!CTIVATE2ESOURCE-ANAGER
"EFOREWESTARTTHELOADTEST WENEEDTOVERIFYTHATOUR30HC8<4RESOURCEPLANISACTIVATEDINTHE
DATABASES
BHB)B2A0C27-bW^f_PaP\TcTaaTb^daRTN\P]PVTaN_[P]

=0<4CH?4E0;D4

aTb^daRTN\P]PVTaN_[P]bcaX]V30HC8<4

BHB)B=855-bW^f_PaP\TcTaaTb^daRTN\P]PVTaN_[P]

=0<4CH?4E0;D4

aTb^daRTN\P]PVTaN_[P]bcaX]V30HC8<4

FTP[b^]TTSc^c^RWTRZ^da8>A<?[P]^]TPRWbc^aPVTRT[[c^T]bdaTcWThPaTPRcXeT

2T[[2;8-[XbcX^a\_[P]STcPX[
]P\T)T]ZRT["N8>A<?;0=
RPc?[P])]P\T,0??BN20C46>AHeT[, P[[^RPcX^],&
]P\T,10C27N20C46>AHeT[, P[[^RPcX^],"
]P\T,>C74AeT[,!P[[^RPcX^], 
SQ?[P])]P\T,B2A0C27eT[, P[[^RPcX^],%
]P\T,B=855eT[,!P[[^RPcX^],'
]P\T,^cWTaeT[,"P[[^RPcX^], 
^QYTRcXeT)Pdc^
bcPcdb)active

3TEP3TART,OAD4EST
.EXT WELLSTARTOURLOADTESTBYRUNNINGTHEQda]NX^bWSCRIPTINEIGHTSEPARATETERMINALSESSIONS ONE
FOREACHUSERACCOUNTINTHEB2A0C27ANDB=855DATABASES4HISSCRIPTISSIMILARTOTHEQda]NR_dbWSCRIPT
WEUSEDTOTESTOUR$"2-RESOURCEPLANEARLIER4HESCRIPTTAKESTHREEPARAMETERSDB4A=0<4 ?0BBF>A3
AND?0A0;;4;4HE?0A0;;4;PARAMETERDETERMINESHOWMANYQUERIESWILLBERUNCONCURRENTLY&OROUR
TEST WELLRUNTHREESESSIONSFROMEACHUSERACCOUNT4HEQUERYIS
bT[TRcSXbcX]RcbTV\T]cN]P\TUa^\Z^bQ^a]TQXVcPQ
4HE31,SCRIPTTURNSOFFOUTPUTFROMTHEQUERY bTcC4A<>DC^UU TOREDUCETHEOVERHEADONTHE
DATABASESERVER4HEQXVcPQTABLECONTAINSMILLIONREPEATING ROWSFROMTHESQPNbTV\T]cbVIEW
JT]ZSQ!)B2A0C27LW^\TaY^W]b^]\hbRaX_cb
-Qda]NX^bW{kosborne, tpoder, rjohnson, fred}g"


#(!04%2 2%3/52#%-!.!'%-%.4

JT]ZSQ!)B=855LW^\TaY^W]b^]\hbRaX_cb
-Qda]NX^bW{kosborne, tpoder, rjohnson, fred}g"

3TEP$UMP)/2--ETRICSTOA&ILE
7ELLALLOWTHESTRESSTESTTORUNFORAWHILEANDTHENGATHERTHE)/2-METRICSFROMTHESTORAGECELLS4HE
FOLLOWINGLISTINGSHOWSTHE2T[[2;8COMMANDFORREPORTING)/2-METRICS4HESEMETRICSAREMAINTAINED
ONEACHCELL SOWELLNEEDTORUNTHISCOMMANDONEACHSTORAGECELLANDMERGETHERESULTSFORFURTHER
ANALYSIS
2T[[2;8-b_^^[X^a\NT]ZRT[ N\TcaXRbSPc

2T[[2;8-;8BC<4CA822DAA4=C
F74A4^QYTRcCh_T;8:48>A<N

2T[[2;8-b_^^[b_^^[^UU

!NALYZINGTHE2ESULTS
!FTERCLEANINGUPTHEOUTPUTFROMRT[[bae WECANLOADITINTOATABLEINORDERTORUNSOMEQUERIES
AGAINSTIT4HESTRUCTUREOFTHISTABLEISASFOLLOWS
BHB)B2A0C27-STbRX^a\N\TcaXRb
=P\T=d[[.Ch_T

24;;N83E0A270A!'
=0<4E0A270A! (
>1942CNCH?4E0A270A! (
<4CA82N=0<4E0A270A!#
2>;;42C8>=NC8<4E0A270A!!$
<4CA82NE0;D4=D<14A
8=2E0A270A! '
&OREASEINREPORTING WELLCREATEAVIEWFOREACHOFOURTHREE)/CONSUMERGROUPS FILTERINGOUTACTIVITY
FROM!3- FLASHCACHEANDFLASH BASEDGRIDDISKS ANDBACKGROUNDPROCESSES
8>A<2PcTV^ahEXTf
2A40C4>AA4?;0245>A24E84FA9>7=B>=2CN8>A<N<4CA82B0B
B4;42C]P\T
>1942CNCH?4
<4CA82N=0<4
BD<<4CA82NE0;D4\TcaXRNeP[dT
<0G8=2X]R
5A><X^a\N\TcaXRb
F74A4]P\T;8:42CKN4B20?4K  Å8>A<2PcTV^ahaTR^aSb
0=3]P\T=>C;8:42CKN52KN4B20?4K Å5[PbW2PRWTaTR^aSb
0=3]P\T=>C;8:42CKN53KN4B20?4K Å5[PbWQPbTSVaXSSXbZb
0=3\TcaXRN]P\T=>C;8:4KN4B20?4K Å0B<QPRZVa^d]S_a^RTbbTbTcR
6A>D?1H]P\T>1942CNCH?4<4CA82N=0<4
>A34A1H]P\T>1942CNCH?4<4CA82N=0<4*


#(!04%2 2%3/52#%-!.!'%-%.4

8>A<3PcPQPbTEXTfX]cTaSPcPQPbT8>A<\TcaXRb
2A40C4>AA4?;0245>A24E84FA9>7=B>=31N8>A<N<4CA82B0B
B4;42C]P\T
>1942CNCH?4
<4CA82N=0<4
BD<C>N=D<14ACA8<<4CA82NE0;D4\TcaXRNeP[dT
<0G8=2X]R
5A><X^a\N\TcaXRb
F74A4]P\T;8:431KN4B20?4K Å8>A<3PcPQPbTaTR^aSb
0=3]P\T=>C;8:431KN52KN4B20?4K
0=3]P\T=>C;8:431KN53KN4B20?4K
0=3<4CA82N=0<48=B2A0C27B=855
6A>D?1H]P\T>1942CNCH?4<4CA82N=0<4
>A34A1H]P\T>1942CNCH?4<4CA82N=0<4*

8>A<2^]bd\Ta6a^d_EXTfX]caPSPcPQPbT8>A<\TcaXRb
2A40C4>AA4?;0245>A24E84FA9>7=B>=26N8>A<N<4CA82B0B
B4;42C]P\T
>1942CNCH?4
<4CA82N=0<4
BD<<4CA82NE0;D4\TcaXRNeP[dT
<0G8=2X]R
5A><X^a\N\TcaXRb
F74A4]P\T;8:426KN4B20?4K Å8>A<2^]bd\Ta6a^d_aTR^aSb
0=3]P\T=>C;8:426KN52KN4B20?4K
0=3]P\T=>C;8:426KN53KN4B20?4K
0=3\TcaXRN]P\T;8:4B2A0C27>A\TcaXRN]P\T;8:4B=855
0=3\TcaXRN]P\T=>C;8:4KN4B20?4K
6A>D?1H]P\T>1942CNCH?4<4CA82N=0<4
>A34A1H]P\T>1942CNCH?4<4CA82N=0<4*
9OUMAYHAVENOTICEDTHEBD<<4CA82NE0;D4FUNCTIONINTHEVIEWDEFINITIONS7HILEITISIMPORTANTTO
UNDERSTANDTHEWORKLOADMIXOFYOURDATABASES THEPURPOSEOFTHISEXERCISEISTOVERIFYTHEEFFECTIVENESS
OFOUR)/2-2ESOURCE0LAN4OTHATEND WELLSUBTOTALTHESMALLANDLARGE)/METRICSSOTHATWECANSEE
HOWALL)/ISDISTRIBUTED)MPORTINGTHE)/2-METRICSFROMOURTABLEINTOASPREADSHEET WECANCREATE
PIEGRAPHSFOREACH)/2-CONSUMERGROUP4HERESULTINGGRAPHSSHOULDREFLECTTHEPROPORTIONSFOREACH
)/2-CONSUMERINOUR)/2-PLAN4HEREARESEVERALINTERESTINGMETRICSCAPTUREDINTHE<4CA822DAA4=C
OBJECTATTHESTORAGECELL BUTWELLFOCUSON8>N1HNB424HISMETRICREPRESENTSTHE)/REQUESTSTHATWERE
SENTTOTHECELLDISKQUEUESFOREXECUTION)TSHOULDGIVEUSAPRETTYGOODIDEAOFHOW)/REQUESTSWERE
PRIORITIZED
/NEMORETHINGBEFOREWETAKEALOOKATTHERESULTSOFOURTEST7HILETHEFILTERSWEAPPLIEDTOOUR
VIEWSSIMPLIFIEDTHEOUTPUT THEYALSOELIMINATEDSOME)/FROMTHERESULTS&OREXAMPLE THE
N>A02;4N102:6A>D=3N6A>D?NMETRICACCOUNTEDFORAMEASURABLEAMOUNTOF)/INTHESTORAGECELLSBUTIS
NOTREFLECTEDINTHEANALYSIS4HATSACCEPTABLE THOUGH BECAUSETHEPOINTOFTHISEXERCISEISNOTTO
PRECISELYRECONCILETHERESULTSOFOURTESTWITHTHE)/2-ALLOCATIONSCALLEDFORINOURPLANDIRECTIVESA
VERYTEDIOUSPROCESS 2ATHER THEPURPOSEISTOSHOWHOW)/ISACTUALLYALLOCATEDINTHESTORAGECELLS
DURINGPEAKPERIODSWHEN)/2-ISACTIVE3OWHILETHERESULTSAREEXPECTEDTORESEMBLEOUR)/2-PLANS
THEYARENOTEXPECTEDTOMATCHPRECISELY


#(!04%2 2%3/52#%-!.!'%-%.4

#ATEGORY-ETRICS
)/2-PRIORITIZES)/INAHIERARCHICALMANNERILLUSTRATEDIN&IGURE  /UR#ATEGORY0LANISATTHETOP
OFTHEHIERARCHY SOTHATSWHEREWELLSTART2ECALLTHATOURPLANALLOCATES)/FORTHE0??BAND10C27
CATEGORIESATARATIOONLEVEL!TLEVEL THE>C74ACATEGORYISALLOCATEDOFTHEUNUSED
)/FROMTHE0??BAND10C27CATEGORIES&IGURE SHOWSTHERATIOOF)/REQUESTSSERVICEDPERSECOND
INMEGABYTES ONBEHALFOFEACHCATEGORY2EMEMBERTHATTHELOADFROMEACHCATEGORYWASTHESAME
.OTICETHAT0??BN20C46>AHRECEIVEDAPPROXIMATELYOFTHE)/ WHILE10C27N20C46>AHRECEIVEDABOUT
4HE>C74ACATEGORYRECEIVEDTHEREMAININGOF)/9OUMAYBESURPRISEDATTHEAMOUNTOF)/
THAT>C74ARECEIVED4HISWASBECAUSEOFTHEALLOCATEDBUTUNUSED)/RESOURCESITINHERITEDFROMTHE
0??BANDOR10C27CATEGORIESATLEVEL


Figure 7-16. I/O operations scheduled per second, by category

$ATABASE-ETRICS
.EXTINTHE)/2-HIERARCHYISOUR)NTERDATABASE)/2-0LAN4HISPLANCALLSFORTHEB2A0C27DATABASETO
BEALLOCATEDOFTHE)/ATLEVEL ANDTHEB=855DATABASETORECEIVEATLEVEL&IGURE SHOWS
THERATIOOF)/REQUESTSSCHEDULEDONBEHALFOFTHEB2A0C27ANDB=855DATABASES!GAIN THENUMBEROF
REQUESTSCOMINGFROMTHESEDATABASESWASTHESAME!CCORDINGTOTHEMETRICSCOLLECTEDDURINGOUR
STRESSTEST )/WASALLOCATEDTOTHEB2A0C27ANDB=855DATABASESATARATIOOFRESPECTIVELY


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-17. I/O operations scheduled per second, by database

#ONSUMER'ROUP-ETRICS
4HEFINALLEVELINTHE)/2-HIERARCHYISOUR)NTRADATABASE)/2-0LAN&IGURE SHOWSTHEALLOCATION
DIRECTIVESFOR)/2-CONSUMERGROUPSINOUR)NTRADATABASE)/2-0LAN2EMEMBERTHATOUR)/2-
CONSUMERGROUPSARETIEDTOTHE$"2-CONSUMERGROUPSTHROUGHTHE<6<CN? '#05 ATTRIBUTES
Management Attributes
MGMT_P1 MGMT_P2 MGMT_P3

Consumer Level 1 CPU Level 2 CPU Level 3 CPU


Group Allocation Allocation Allocation

APPS 70%
Resource Directives

REPORTS 50%

MAINTENANCE 50%

OTHER_GROUPS 50%

Figure 7-18. IORM intradatabase plan

&IGURE SHOWSTHEACTUALRATIOOF)/REQUESTSSCHEDULEDFOROUR)/2-CONSUMERGROUPSDURING
OURSTRESSTEST!QUICKGLANCEATTHEPIECHARTTELLSUSTHATOUR)/2-PLANWASDEFINITELYMANAGING)/
RESOURCESATTHECONSUMERGROUPLEVEL9OUCANSEETHATTHE0??BCONSUMERGROUPDOESINFACTTAKE
PRIORITYOVERALLOTHERGROUPS!SEXPECTED )/ISDISPROPORTIONATELYALLOCATEDTOTHE0??BGROUPINTHE
B2A0C27DATABASE COMPAREDTOTHE0??BGROUPINTHEB=855DATABASE 4HISISBECAUSEOF
THEINFLUENCEOUR)NTERDATABASE2ESOURCE0LANHASOVEROUR)NTRADATABASE2ESOURCE0LAN2ECALLTHATOUR
)NTERDATABASE0LANGRANTSAHIGHERPRIORITYTOTHEB2A0C27DATABASEATLEVEL THANTHEB=855
DATABASEATLEVEL 4HEOTHER)/2-CONSUMERGROUPSFOLLOWASIMILARPATTERN


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-19. I/O operations scheduled per second, by consumer group

Other Processes Managed by IORM


4HEREAREAFEWINTERNALPROCESSESMANAGEDBY)/2-THATDONTQUITEFITANYWHEREELSEINTHISCHAPTERSO
WELLDISCUSSTHEMHERE4HESEINTERNALPROCESSESARE
v &AST&ILE#REATION
v %4,EXTRACT TRANSFORM LOAD
v 2ECOVERY-ANAGER
%XADATAPROVIDESAFEATURECALLED&AST&ILE#REATIONFORCREATINGANDEXTENDINGDATABASEDATAFILES)T
PROVIDESEXTREMELYFAST)/FORCREATINGANDGROWINGFILESINTHESTORAGEGRID'ENERALLYSPEAKING THISISA
GOODTHING"UTHOWDOES%XADATAMANAGETHEPRIORITYOFCERTAIN LOWPRIORITY HIGHLY)/INTENSIVE
PROCESSES4HEANSWERIS)/2-

&AST&ILE#REATION
%XADATAPROVIDESAFEATURECALLEDFast File Creation WHICHBRINGSALLTHE)/RESOURCESOFTHESTORAGECELLS
TOBEARINORDERTOMAKEQUICKWORKOFCREATINGANDEXTENDINGTABLESPACEDATABASEFILES"UTASYOU
MIGHTIMAGINE IFRUNUNCHECKED &AST&ILE#REATIONCANSTEALVALUABLERESOURCESFROMOTHERDATABASE
CRITICAL ANDBUSINESSCRITICALPROCESSES4OPREVENTTHIS THE50BC58;42A4FUNCTION WHICHPERFORMS&AST
&ILE#REATION ISMAPPEDTOAHIDDEN)/2-CONSUMERGROUPANDASSIGNEDAPRIORITYBELOWTHATOFALL
OTHERDATABASEFOREGROUNDANDBACKGROUNDPROCESSES7HENTHESTORAGECELLSAREBUSY &AST&ILE


#(!04%2 2%3/52#%-!.!'%-%.4

#REATIONISTHROTTLEDBACKSOITDOESNTDEGRADEOTHERPROCESSES"UTWHENTHESTORAGECELLSARENOTBUSY
)/2-ALLOWSITTOCONSUMEALLAVAILABLE)/RESOURCES
)FYOUWANTTOINCREASETHEPRIORITYOF&AST&ILE#REATION ADDANEWCONSUMERGROUPMAPPINGRULETO
SWITCHITTOANOTHERCONSUMERGROUPWITHHIGHERPRIORITY 4HEMAPPINGRULEMUSTUSETHEMAPPING
ATTRIBUTE31<BNA4B>DA24N<0=064A>A02;4N5D=2C8>=WITHAVALUESETTOTHENAMEOFTHE&AST&ILE#REATION
FUNCTION 50BC58;42A4&OREXAMPLE WECANREASSIGNTHE50BC58;42A4FUNCTIONTOTHE<08=C4=0=24
CONSUMERGROUPWECREATEDEARLIERINTHECHAPTERASFOLLOWS

1468=
31<BNA4B>DA24N<0=064A2A40C4N?4=38=6N0A40*
31<BNA4B>DA24N<0=064AB4CN2>=BD<4AN6A>D?N<0??8=6
31<BNA4B>DA24N<0=064A>A02;4N5D=2C8>=
50BC58;42A4<08=C4=0=24*
31<BNA4B>DA24N<0=064ABD1<8CN?4=38=6N0A40*
4=3*


 .OTE4HEPRIORITYFOREXTENDINGEXISTINGDATAFILESCANNOTBEMODIFIED4HEMAPPINGPROCEDUREDESCRIBEDHERE
ONLYINCREASESPRIORITYFORCREATINGNEWTABLESPACESORADDINGDATAFILESTOEXISTINGTABLESPACES

%4,
$EPENDINGONTHEDATABASE EXTRACT TRANSFORM ANDLOAD%4, PROCESSESMAYBECONSIDEREDLOW
PRIORITY ORTHEYMAYBEABSOLUTELY MISSIONCRITICALTOTHEBUSINESS/RACLEPROVIDESTWOBUILT IN$"2-
RESOURCEPLANSTOMANAGETHEPRIORITYFORTYPICAL%4,PROCESSES4HE4C;N6A>D?ISSETUPWITHLOWER
PRIORITYINTHEBUILT IN3FN?;0=RESOURCEPLANAND ASTHENAMEIMPLIES ISGIVENAMUCHHIGHERPRIORITYIN
THEBUILT IN4C;N2A8C820;N?;0=RESOURCEPLAN&IGURES AND SHOWTHEDEFAULTSETTINGSFORTHESE
TWORESOURCEPLANS


Figure 7-20. DW_PLAN resource plan


#(!04%2 2%3/52#%-!.!'%-%.4


Figure 7-21. ETL_CRITICAL_PLAN resource plan

$ATA0UMPRUNSUNDERTHEBUILT IN30C0;>03FUNCTION WHICHBYDEFAULTMAPSTOTHE4C;N6A>D?


CONSUMERGROUP/THERPROGRAMS SUCHAS31,,OADER MAYALSOBEMAPPEDTOTHE4C;N6A>D?USING
MAPPINGRULESWEDISCUSSEDEARLIERINTHECHAPTER&OREXAMPLE THE31,,OADERCOMMANDISMAPPEDTO
THE4C;N6A>D?CONSUMERGROUPASFOLLOWS
1468=
31<BNA4B>DA24N<0=064A2A40C4N?4=38=6N0A40*
31<BNA4B>DA24N<0=064AB4CN2>=BD<4AN6A>D?N<0??8=6
31<BNA4B>DA24N<0=064A2;84=CN?A>6A0<B@;;3A4C;N6A>D?*
31<BNA4B>DA24N<0=064ABD1<8CN?4=38=6N0A40*
4=3*
/

2ECOVERY-ANAGER
%XADATAREQUIRES!3-FORADATABASETOACCESSTHESTORAGEGRID!SSUCH 2ECOVERY-ANAGERA\P] ISTHE
REQUIREDTOOLFOREXECUTINGDATABASEBACKUPANDRECOVERY"ACKUPSAREAVERY)/ INTENSIVEOPERATION
&ORANUMBEROFYEARSNOW A\P]HASPROVIDEDTWOWAYSTOMANAGETHELOADBACKUPSPUTONTHE)/
SUBSYSTEMBACKUPCHANNELSANDaPcT4HENUMBEROFBACKUPCHANNELSCANBEUSEDTOINCREASEOR
DECREASEPERFORMANCEANDLOAD&INER GRAINEDCONTROLISPROVIDEDTHROUGHTHEaPcTPARAMETER WHICH
CONTROLSTHERATEINBYTESPERSECONDTHATA\P]STREAMSTOTHEBACKUPCHANNELS%XADATAPROVIDES)/2-
MANAGEMENTFORA\P]BYMAPPINGBACKUPOPERATIONSTOTHE102:D?FUNCTIONANDCOPYOPERATIONSTOTHE
2>?HFUNCTION"YDEFAULT THE102:D? AND2>?HFUNCTIONSMAPTOTHEBUILT IN10C27N6A>D?CONSUMER
GROUP3IMILARTOTHE50BC58;42A4FUNCTIONWEDESCRIBEDFOR&AST&ILE#REATION THE102:D?P]S2>?H
FUNCTIONSMAYBEMAPPEDTOANYOTHERCONSUMERGROUPINORDERTOADJUSTTHEIR)/2-PRIORITIES&OR
EXAMPLE WECANREMAPTHE102:D?FUNCTIONTOOUR<08=C4=0=24CONSUMERGROUPASFOLLOWS
1468=
31<BNA4B>DA24N<0=064A2A40C4N?4=38=6N0A40*
31<BNA4B>DA24N<0=064AB4CN2>=BD<4AN6A>D?N<0??8=6
31<BNA4B>DA24N<0=064A>A02;4N5D=2C8>=102:D?<08=C4=0=24*

31<BNA4B>DA24N<0=064AB4CN2>=BD<4AN6A>D?N<0??8=6
31<BNA4B>DA24N<0=064A>A02;4N5D=2C8>=2>?H<08=C4=0=24*
31<BNA4B>DA24N<0=064ABD1<8CN?4=38=6N0A40*
4=3*



#(!04%2 2%3/52#%-!.!'%-%.4

Summary
/NEOFTHEBIGGESTCHALLENGESFOR$"!SISEFFECTIVELYMANAGINGSYSTEMRESOURCESTOMEETBUSINESS
OBJECTIVES/VERTHEYEARS/RACLEHASDEVELOPEDARICHSETOFFEATURESTHATMAKERESOURCEMANAGEMENTA
REALITY5NFORTUNATELY THESEFEATURESARERARELYIMPLEMENTEDDUETOTHEIRCOMPLEXITY"UTMAKENO
MISTAKE ASSERVERSBECOMEMOREPOWERFULANDEFFICIENT DATABASECONSOLIDATIONISGOINGTOBECOME
INCREASINGLYCOMMON4HISISESPECIALLYTRUEOFTHE%XADATAPLATFORM5NDERSTANDINGHOWTOLEVERAGE
DATABASEAND)/RESOURCEMANAGEMENTISGOINGTOBECOMEANINCREASINGLYIMPORTANTTOOLFORENSURING
THATYOURDATABASESMEETTHEDEMANDSOFYOURBUSINESS4HEBESTADVICEWECANOFFERISTOKEEPTHINGS
SIMPLE!TTEMPTINGTOMAKEUSEOFEVERYBELLANDWHISTLEIN/RACLE2ESOURCE-ANAGERCANLEADTO
CONFUSIONANDUNDESIRABLERESULTS)FYOUDONOTHAVEASPECIFICNEEDFORMULTI LEVELRESOURCEPLANS THEN
STICKTOTHESINGLE LEVELAPPROACHTHEYAREEASYTOIMPLEMENTANDMEASURE ANDTHEYWORKGREATINMOST
SITUATIONS#ATEGORYPLANSAREANOTHERRARELYNEEDEDFEATURE!MAJORITYOFTHESITUATIONSYOUWILLFACE
CANBERESOLVEDBYIMPLEMENTINGASIMPLE SINGLE LEVEL)NTERDATABASE2ESOURCE0LAN3OAGAIN START
SMALL KEEPITSIMPLE ANDADDFEATURESASYOUNEEDTHEM


CHAPTER 8



Configuring Exadata

/RACLEOFFERSANOPTIONALSERVICETHATHANDLESTHEPROCESSOFINSTALLINGANDCONFIGURINGYOUR%XADATA
$ATABASE-ACHINEFROMSTARTTOFINISH-ANYCOMPANIESPURCHASETHISSERVICETOSPEEDUPTHEIR
IMPLEMENTATIONTIMEANDREDUCETHECOMPLEXITYOFINTEGRATING%XADATAINTOTHEIR)4INFRASTRUCTURE)F
YOUREREADINGTHISCHAPTER YOUMAYBECONSIDERINGPERFORMINGTHECONFIGURATIONYOURSELF ORPERHAPS
YOUREJUSTINTERESTEDINGAININGABETTERUNDERSTANDINGOFHOWITSDONE4HEPROCESSWELLDISCUSSHERE
CLOSELYRESEMBLESTHEINSTALLATIONPROCESS/RACLEUSES LARGELYBECAUSEWEWILLBEUSINGTHESAMEUTILITY
/RACLEUSESTOCONFIGURE%XADATA4HEUTILITYISCALLED/NE#OMMAND)TTAKESSITE SPECIFICINFORMATION
YOUPROVIDEANDPERFORMSTHEENTIRECONFIGURATIONFROMNETWORK TOSOFTWARE TOSTORAGE7HENTHE
PROCESSISCOMPLETE YOUR%XADATA$ATABASE-ACHINEWILLBEFULLYFUNCTIONAL INCLUDINGASTARTER
DATABASE

Exadata Network Components


/RACLEDATABASENETWORKREQUIREMENTSHAVEEVOLVEDOVERTHEYEARS ANDWITH%XADATAYOUWILLNOTICEA
FEWNEWTERMSASWELLASTHEADDITIONOFANEWNETWORK4RADITIONALLY /RACLEDATABASESERVERSREQUIRED
ONEPUBLICNETWORKLINKTOPROVIDEADMINISTRATIVEACCESSTYPICALLY33( ANDDATABASEACCESS31,
.ET 
7ITHTHEINTRODUCTIONOFG2'RID)NFRASTRUCTUREFORMERLYKNOWNAS/RACLE#LUSTERWARE /RACLE
COINEDANEWTERMFORTHISNETWORK THEclient access network/NTHE%XADATAPLATFORM ADMINISTRATIVE
ANDDATABASETRAFFICHAVEBEENSEPARATEDWITHTHECREATIONOFANEWNETWORKFORADMINISTRATIVEACCESS
4HISNEWNETWORKISKNOWNASTHEmanagement network4HECLIENTACCESSNETWORKISNOLONGER
ACCESSIBLETHROUGH33(ANDISUSEDONLYBYTHE/RACLELISTENERFORINCOMING31,
.ETCONNECTIONS)N
%XADATATERMSANDMOSTLYINTHECONTEXTOFCONFIGURATION THESETWONETWORKSAREREFERREDTOAS.%4
MANAGEMENTNETWORK AND.%4CLIENTACCESSNETWORK 
4HENUMBERANDTYPEOF%THERNETPORTSONTHECOMPUTENODESANDSTORAGECELLSVARIESBETWEENTHE
6 8  AND8 MODELSOF%XADATA(ARDWARESPECIFICATIONSFOREACHMODELAREDETAILEDINTHE
Exadata Database Machine Owner’s Guide!TAMINIMUM THOUGH ALLMODELSPROVIDEATLEASTFOUR
EMBEDDED'IGABIT%THERNETPORTS/RACLEIDENTIFIESTHESEPORTSAS.%4 .%4 .%4 AND.%4!S
NOTED .%4ISUSEDFORTHEMANAGEMENTNETWORK AND.%4ISUSEDFORTHECLIENTACCESSNETWORK)N
2!#ENVIRONMENTSITISACOMMONPRACTICETOBONDTWO%THERNETDEVICESTOGETHERTOPROVIDEHARDWARE
REDUNDANCYFORTHECLIENTACCESSNETWORK/N%XADATA THISISDONEBYBONDINGTHE.%4AND.%4PORTS
TOGETHER4HE.%4INTERFACEISUNASSIGNEDANDAVAILABLETOBECONFIGUREDASANOPTIONALNETWORK

4HE-ANAGEMENT.ETWORK
%XADATA$ATABASE-ACHINESHAVEAN%THERNETSWITCHMOUNTEDINTHERACKTHATSERVICESTHEMANAGEMENT
NETWORK4HEMANAGEMENTNETWORKCONSISTSOFTHEFOLLOWINGLINKS


#(!04%2 #/.&)'52).'%8!$!4!

v /NEUPLINKFROMTHEMANAGEMENTSWITCHTOYOURCOMPANYSMANAGEMENT
NETWORK
v /NELINKTO.%4ONEACHCOMPUTENODEANDSTORAGECELL
v /NELINKTOTHE),/-ONEACHCOMPUTENODEANDSTORAGECELL
v /NELINKFORTHE+6-
v /NELINKFOREACHOFTHETWOINTERNALPOWERDISTRIBUTIONUNITS0$5S 4HISIS
OPTIONALANDISONLYNEEDEDIFYOUWANTTOMONITORELECTRICALCURRENTREMOTELY

ILOM
)NADDITIONTOTHEMANAGEMENTNETWORKINTERFACE.%4 COMPUTENODESANDSTORAGECELLSCOME
EQUIPPEDWITHAN)NTEGRATED,IGHTS/UT-ANAGER),/- 4HE),/-ISANADAPTERCARDINEACHCOMPUTE
NODEANDSTORAGECELLTHATOPERATESINDEPENDENTLYOFTHEOPERATINGSYSTEM4HE),/-BOOTSUPASSOON
ASPOWERISAPPLIEDTOTHESERVERANDPROVIDES7EBAND33(ACCESSTHROUGHTHEMANAGEMENTNETWORK
4HE),/-ALLOWSYOUTOPERFORMMANYOFTHETASKSREMOTELYTHATWOULDOTHERWISEREQUIREPHYSICAL
ACCESSTOTHESERVERS INCLUDINGGAININGACCESSTOTHECONSOLE POWERINGTHESYSTEMOFFANDON AND
REBOOTINGORRESETTINGTHESYSTEM!DDITIONALLY THE),/-MONITORSTHECONFIGURATIONANDSTATEOFTHE
SERVERSINTERNALHARDWARECOMPONENTS4HE),/-ISLINKEDVIA%THERNETPORTTOTHEMANAGEMENTSWITCH
WITHINTHE%XADATAENCLOSURE

KVM
%XADATAALSOFEATURESANINTERNAL+6-KEYBOARD VIDEO ANDMOUSE FORMANAGINGTHESYSTEM!SYOU
MIGHTEXPECT THE+6-ISASLIDE OUTTRAYWITHAKEYBOARD TOUCHPAD ANDFLIP UPMONITORACCESSIBLE
FROMTHEFRONTOFTHERACK4HE+6-ALSOPROVIDESREMOTE7EBACCESSTOTHEOPERATINGSYSTEMCONSOLEOF
ALLCOMPUTENODESANDSTORAGECELLS,IKETHE),/- THE+6-ISLINKEDVIA%THERNETPORTTOTHEINTERNAL
MANAGEMENTSWITCH

 .OTE4HE8 MODELOF%XADATADOESNOTCOMEWITHA+6-#OMPUTENODESIN6AND8 SYSTEMSAREA5


FORMFACTORANDONAN%XADATAFULLRACKCONFIGURATIONTAKEUPATOTALOFEIGHTSLOTS4HECOMPUTENODES ONTHE
8 OCCUPYFIVESLOTSEACHFORATOTALOFTENSLOTSINTHERACKDISPLACINGTHE5+6-SWITCH

4HE#LIENT!CCESS.ETWORK
4HECLIENTACCESSNETWORKISUSEDBYTHE/RACLELISTENERTOPROVIDE31,
.ETCONNECTIVITYTOTHE
DATABASES4HISNETWORKHASTRADITIONALLYBEENREFERREDTO IN2!#TERMINOLOGY ASTHEpublic network
/NEORTWOLINKS.%4 .%4 FROMEACHDATABASESERVERCOMPUTENODE CONNECTDIRECTLYTOYOUR
CORPORATESWITCH/RACLERECOMMENDSBONDING.%4AND.%4TOPROVIDEHARDWAREREDUNDANCYFOR
CLIENTCONNECTIONS)FTHESEPORTSAREBONDED THENEACHLINKSHOULDTERMINATEATASEPARATESWITCHTO
PROVIDENETWORKREDUNDANCY


#(!04%2 #/.&)'52).'%8!$!4!

4HE0RIVATE.ETWORK
4HEPRIVATENETWORKISSERVICEDBYTHEINTERNAL)NFINI"AND)" SWITCHES4HISNETWORKMANAGES2!#
)NTERCONNECTTRAFFICCACHEFUSION HEARTBEAT ASWELLASI$"TRAFFICBETWEENTHEDATABASEGRIDANDTHE
STORAGEGRID4HISNETWORKISSELF CONTAINEDWITHINTHE)NFINI"ANDNETWORKSWITCHFABRICANDHASNO
UPLINKTOYOURCORPORATENETWORK4HENETWORKCONFIGURATIONCANBEFOUNDINTHEXURUVXQANDXURUV
XQ CONFIGURATIONFILESINTHETcRbhbR^]UXV]Tcf^aZbRaX_cbDIRECTORY4HEYARECONFIGUREDASBONDED
DEVICES ANDTHEMASTERDEVICEFILEISXURUVQ^]SXQ&OREXAMPLE THEFOLLOWINGLISTINGSHOWSTHE
)NFINIBANDNETWORKCONFIGURATIONFILESFROMONEOFTHEDATABASESERVERSINOURLAB.OTICEHOWTHE
<0BC4APARAMETERISUSEDTOMAPTHESENETWORKDEVICESTOTHEQ^]SXQDEVICE

TcRbhbR^]UXV]Tcf^aZbRaX_cbXURUVQ^]SXQ
34E824,Q^]SXQ
DB4A2C;,]^
1>>C?A>C>,]^]T
>=1>>C,hTb
8?033A, (! %' !%
=4C<0B:,!$$!$$!$$
=4CF>A:, (! %' !
1A>0320BC, (! %' !!$$
1>=38=6N>?CB,\^ST,PRcXeTQPRZd_\XX\^], S^f]ST[Ph,$d_ST[Ph,$]d\NVaPcNPa_, 
8?E%8=8C,]^
<CD,%$$!

TcRbhbR^]UXV]Tcf^aZbRaX_cbXURUVXQ
34E824,XQ
DB4A2C;,]^
>=1>>C,hTb
<0BC4A,Q^]SXQ
B;0E4,hTb
1>>C?A>C>,]^]T
7>C?;D6,]^
8?E%8=8C,]^
2>==42C43N<>34,hTb
<CD,%$$!

TcRbhbR^]UXV]Tcf^aZbRaX_cbXURUVXQ 
34E824,XQ 
DB4A2C;,]^
>=1>>C,hTb
<0BC4A,Q^]SXQ
B;0E4,hTb
1>>C?A>C>,]^]T
7>C?;D6,]^
8?E%8=8C,]^
2>==42C43N<>34,hTb
<CD,%$$!
.OTICETHATTHE-45SIZEFORTHE)"NETWORKDEVICESISSETTO BYTES -45STANDSFOR
-AXIMUM4RANSMISSION5NITANDDETERMINESTHEMAXIMUMSIZEOFANETWORKPACKETTHATMAYBE
TRANSMITTEDACROSSTHENETWORK4YPICAL%THERNETNETWORKSSUPPORTAN-45SIZEOFUPTO BYTES)N


#(!04%2 #/.&)'52).'%8!$!4!

RECENTYEARS THE*UMBO&RAMESTECHNOLOGYHASBECOMEAPOPULARWAYTOIMPROVEDATABASE
PERFORMANCEBYREDUCINGTHENUMBEROFNETWORKROUNDTRIPSREQUIREDFORCACHEFUSIONBETWEENCLUSTER
NODESINAN/RACLE2!#CLUSTER#ONVENTIONALLY*UMBO&RAMESSUPPORTSAN-45OFUPTO BYTES
"UTSOMEIMPLEMENTATIONSMAYSUPPORTANEVENLARGER-45SIZE

 .OTE/NLYTHEDATABASESERVERSARECONFIGUREDWITHA+-450RESUMABLYTHISISTOBENEFIT4#0)0TRAFFIC
BETWEENTHEDATABASESERVERS ANDBETWEENTHEDATABASESERVERSANDANYEXTERNALHOSTTHATISLINKEDTOTHE)"
SWITCH9OUMAYBESURPRISEDTOKNOWTHATTHE)"PORTSONTHESTORAGECELLSARECONFIGUREDWITHTHESTANDARD 
BYTE-45SIZE4HELARGE-45SIZEISNOTNECESSARYONTHESTORAGECELLS BECAUSE)/BETWEENTHEDATABASEGRID
ANDTHESTORAGEGRIDUTILIZESTHE2$3PROTOCOL WHICHISMUCHMOREEFFICIENTFORDATABASE)/ANDBYPASSESTHE
4#0)0PROTOCOLSTACKALTOGETHER

About the Configuration Process


#ONFIGURING/RACLEDATABASESERVERSHASALWAYSBEENAMANUALANDSOMEWHATERROR PRONEPROCESS
ESPECIALLYFOR2!#ENVIRONMENTS%XADATACANBECONFIGUREDMANUALLYASWELL BUTTHECOMPLEXITIESOF
THEPLATFORMCANMAKETHISARISKYUNDERTAKING/RACLEHASGREATLYSIMPLIFIEDTHECONFIGURATIONPROCESS
BYPROVIDINGAUTILITYCALLED/NE#OMMAND4HISTOOLUSESINPUTPARAMETERSYOUPROVIDE ANDITCARRIES
OUTALLOFTHELOW LEVELTASKSFORYOU%VENSO GATHERINGALLTHERIGHTINFORMATIONREQUIREDBY
/NE#OMMANDWILLLIKELYBEACOLLABORATIVEEFFORT ESPECIALLYWITHTHENETWORKINGCOMPONENTS&IGURE
 ILLUSTRATESTHE%XADATACONFIGURATIONPROCESSUSING/NE#OMMAND

Transfer Configuration Parameters
Complete the Configuration to the DBM Configurator and Upload Parameter & Deployment
Worksheet Generate Parameter & Deployment Files to Exadata
1 2 Files. 3

Run CheckIP to verify Network Configure the Network Stage Grid Infrastructure and
Readiness using Firstboot Database Software
4 5 6

Run OneCommand
7
Figure 8-1. The configuration process

!SINDICATEDIN&IGURE  THEFIRSTSTEPINTHEPROCESSISTOFILLOUTTHECONFIGURATIONWORKSHEET
INCLUDEDINTHE%XADATADOCUMENTATIONSET4HEPURPOSEOFTHISWORKSHEETISTOAIDYOUINGATHERINGALL
THEINFORMATIONYOUWILLNEEDTOCONFIGUREYOURSYSTEM7HENFILLINGINTHENETWORKINGCOMPONENTSOF
THEWORKSHEETYOUWILLNEEDTOENLISTTHEHELPOFYOURNETWORKADMINISTRATORTORESERVE)0ADDRESSESAND


#(!04%2 #/.&)'52).'%8!$!4!

REGISTERNEWNETWORKNAMESWITHTHEDOMAINNAMESERVER)TSIMPORTANTTOUNDERSTANDHOWTHESE
CONFIGURATIONSETTINGSAREUSED SOWELLSPENDASUBSTANTIALAMOUNTOFTIMEDISCUSSINGTHEMINh3TEP
4HE#ONFIGURATION7ORKSHEETv
/NCEYOUHAVECOMPLETEDTHECONFIGURATIONWORKSHEET YOUWILLTRANSFERTHATINFORMATIONTOTHE
$"-#ONFIGURATORSQ\NR^]UXVdaPc^ag[b 4HISISAN%XCELSPREADSHEETTHATGENERATESALLTHEPARAMETER
ANDDEPLOYMENTFILES/NE#OMMANDNEEDSFORCONFIGURINGYOURSYSTEM)NADDITIONTOPARAMETERAND
DEPLOYMENTFILES THE$"-#ONFIGURATORGENERATESTHERWTRZX_bWSCRIPTYOUSHOULDUSETOVERIFYYOUR
NETWORKSETTINGS4HISSCRIPTVALIDATESTHEFORMATOFTHE)0ADDRESSESYOUENTERED CHECKSTOSEEIFANYOF
THEMAREALREADYINUSE ANDVERIFIESTHATTHENETWORKNAMESYOUSPECIFIEDCANBERESOLVEDBYYOUR$.3
SERVER/NCETHISISDONE YOUAREREADYTOUPLOADTHESEFILESTO%XADATA
"EFORERUNNING/NE#OMMAND YOUWILLNEEDTOSTAGETHEINSTALLATIONMEDIAFORTHE'RID
)NFRASTRUCTUREANDTHEDATABASEINCLUDINGANY/RACLE PRESCRIBEDPATCHES 4HEFINALSTEPOFTHEPROCESS
ISTOEXECUTE/NE#OMMAND)TSOPERATIONCONSISTSOFMULTIPLESTEPSTHATCONFIGUREALLTHECOMPONENTSOF
YOUR%XADATA$ATABASE-ACHINE4HETOP LEVELSCRIPTTHATRUNS/NE#OMMANDISCALLEDST_[^h !bW
PRESUMABLYSTANDSFORG2 4HISSCRIPTCANBERUNEND TO END EXECUTINGALLOFTHESTEPS
AUTOMATICALLY ORYOUMAYSPECIFYASTEPTORUNUSINGCOMMAND LINEOPTIONS7ESTRONGLYRECOMMEND
RUNNINGTHESESTEPSONEATATIME$OINGSOMAKESITMUCHEASIERTOTROUBLESHOOTIFASTEPFAILSTO
COMPLETESUCCESSFULLY

 .OTE2ATHERTHANCREATEAN%XADATA SPECIFICRELEASEOFTHEIR'RID)NFRASTRUCTURE !3- AND2$"-3PRODUCTS


/RACLECHOSETOINTEGRATETHE%XADATASPECIFICCODERIGHTINTOTHESAMEG2PRODUCTYOUWOULDINSTALLONNON
%XADATAPLATFORMS7HENTHEYDIDTHIS /RACLEPROVIDEDAMECHANISMFORRELEASING%XADATA SPECIFICPATCHESTHAT
COULDBEMANAGEDSEPARATELYFROMTHEMAINSTREAMPRODUCTANDCOINEDANEWTERM bundle patches"UNDLE
PATCHESARE/RACLESWAYOFTRACKINGANDDISTRIBUTINGFIXESFORTHEIRSTORAGECELLSOFTWAREASWELLAS%XADATA
SPECIFICFIXESFORTHE'RID)NFRASTRUCTURE !3- ANDDATABASESOFTWARE

7HENYOUTAKEDELIVERYOFYOUR%XADATA$ATABASE-ACHINE CERTAINTASKSWILLHECOMPLETEDBYAN
/RACLEHARDWARETECHNICIAN4HESETASKSINCLUDECONNECTINGALLTHENETWORKEDCOMPONENTSINSIDETHE
%XADATARACKANDCONFIGURING)0ADDRESSESFORTHEPRIVATENETWORK)"SWITCH 7HENTHISPROCESSIS
COMPLETE ALLCOMPUTENODESANDSTORAGECELLSWILLBECONNECTEDTOGETHERTHROUGHTHE)"SWITCH
/NE#OMMANDISONLYRUNFROMTHEFIRSTCOMPUTENODEANDUSESTHEPRIVATENETWORKTOEXECUTE
CONFIGURATIONCOMMANDSONOTHERSERVERSANDSTORAGECELLS ASWELLASTOINSTALLTHE'RID)NFRASTRUCTURE
AND2$"-3SOFTWAREONALLDATABASESERVERS4HEREISNOPLACEINTHECONFIGURATIONWORKSHEETORTHE
$"-#ONFIGURATORTOSPECIFYTHENETWORKADDRESS ANDTHEDEFAULTIS)FTHISNETWORKADDRESS
ISALREADYINUSEELSEWHEREINYOURNETWORKINFRASTRUCTURE THISMAYCREATEROUTINGPROBLEMSLATER"E
SURETOMENTIONTHISTOYOUR/RACLEDELIVERYCOORDINATOREARLYINTHEPROCESSSOTHEYCANNEGOTIATEAN
APPROPRIATENETWORKADDRESSFORYOUR)NFINI"ANDNETWORK

Configuring Exadata
4HEFIRSTSTEPINCONFIGURING%XADATAISGENERALLYTOWORKTHROUGHTHEconfiguration worksheet)FYOUARE
COMFORTABLEWITHTHEPROCESS YOUCANOPTOUTOFSTEPANDENTERYOURPARAMETERSDIRECTLYINTOTHE$"-
#ONFIGURATORASYOUGATHERTHEM"UTDONTUNDERESTIMATETHEVALUEOFTHECONFIGURATIONWORKSHEET)TIS
ANINTEGRALPARTOFTHEPROCESS/RACLEUSESANDFORGOODREASON%VENEXPERIENCED%XADATATECHNICIANS


#(!04%2 #/.&)'52).'%8!$!4!

CONTINUETOUSETHECONFIGURATIONWORKSHEET)TISAGOODCOMMUNICATIONTOOLANDHELPSTOENSURETHAT
THEINSTALLATIONGOESSMOOTHLY

3TEP4HE#ONFIGURATION7ORKSHEET
4HECONFIGURATIONWORKSHEETISPROVIDEDBY/RACLEASPARTOFTHE%XADATADOCUMENTATIONSET4HE
DOCUMENTATIONISNOTDOWNLOADABLEFROMANYOFTHE/RACLE7EBSITES)NSTEAD ITISINSTALLEDINTHE
dbabWPaTS^R^aPR[T4gPSPcPDIRECTORYOFTHESTORAGECELLS3IMPLYCONNECTTOONEOFTHECELLSASROOT
CELLADMIN ORCELLMONITORANDDOWNLOADITTOYOURLAPTOP/PENTHEfT[R^\TWc\[FILEINYOUR7EB
BROWSERANDYOUWILLSEEACOMPLETELISTOFALLTHEDOCUMENTSIN(4-,AND0$&FORMAT4HEONEYOUARE
LOOKINGFORISLABELED%XADATA$ATABASE-ACHINE#ONFIGURATION7ORKSHEETS. 4HEWORKSHEETISFAIRLYWELL
DOCUMENTED BUTWELLGOTHROUGHITHEREANDTALKALITTLEMOREABOUTSOMEOFTHEPARAMETERSAND
SETTINGSYOUWILLNEEDTOPROVIDE4HEINFORMATIONCOLLECTEDINTHEWORKSHEETFALLSINTOFOURGENERAL
CATEGORIES
v %XADATACONFIGURATIONPARAMETERS
v /RACLEENVIRONMENTPARAMETERS
v .ETWORKSETTINGS
v #ELLALERTNOTIFICATIONPARAMETERS
7ELLBEFOLLOWINGASLIGHTLYDIFFERENTFORMATHERE BUTWELLDISCUSSALLOFTHECONFIGURATION
SETTINGSANDPARAMETERSFROMTHE/RACLEDOCUMENTATIONANDADDINGSOMECOMMENTARYALONG
THEWAY

Exadata Configuration Parameters


%XADATACONFIGURATIONPARAMETERSARESYSTEM WIDESETTINGS SOMEOFWHICHAREUSEDFORGENERATINGYET
OTHERPARAMETERSUSEDINTHECONFIGURATIONPROCESS&OREXAMPLE THE%XADATA$ATABASE-ACHINE.AME
YOUPROVIDEINTHEWORKSHEETISUSEDASAHOSTNAMEPREFIXFORALLNETWORKHOSTNAMESINYOUR%XADATA
SYSTEM INCLUDINGCOMPUTENODES STORAGECELLS NETWORKSWITCHES ),/-S ANDTHE+6-)TISALSOUSED
ASAPREFIXFORTHECLUSTERNAMEAND3#!.NAMEREQUIREDBY'RID)NFRASTRUCTURE

 .OTE7ERECENTLYNOTICEDTHATTHENEWVERSIONOFTHE$"-#ONFIGURATORNOWAPPENDSTHE%XADATA$ATABASE
-ACHINE.AMETOTHE!3-DISKGROUPNAMES&OREXAMPLE IFTHEMACHINENAMEIS@TgP THENTHE#ONFIGURATOR
GENERATESADISKGROUPNAMEOF30C0N4G0 RATHERTHAN30C0N36 FORTHEDATADISKGROUP4HISISTHEDEFAULT
BEHAVIOR BUTITMAYBEOVERRIDDENBEFOREGENERATINGYOURCONFIGURATIONFILES7ELLTALKMOREABOUTNAMINGYOUR
!3-DISKGROUPSINh3TEP4HE$"-#ONFIGURATORv9OUMAYNOTICETHATSOMEOFTHEOTHERCHAPTERSOFTHISBOOK
#HAPTER FOREXAMPLE USETHEOLDNAMINGCONVENTION

4ABLE SHOWSTHE%XADATACONFIGURATIONPARAMETERSYOUWILLENTERINTHECONFIGURATION
WORKSHEET


#(!04%2 #/.&)'52).'%8!$!4!

Table 8-1. Exadata Configuration Parameters

Configuration Parameter Description


%XADATA$ATABASE-ACHINENAME 4HEMACHINENAMEMAXCHARACTERS ISUSED
ASAPREFIXFORALLNETWORKHOSTNAMESINYOUR
%XADATACONFIGURATION

4YPEOF3YSTEM 4HISISTHETYPEOF%XADATACONFIGURATION
#HOOSEONEOFTHEFOLLOWINGCONFIGURATIONS
8 &ULL2ACK 8&ULL2ACK 8(ALF2ACK OR
81UARTER2ACK

$ISK4YPE 4HISISTHETYPEOFDISKDRIVESYOUR%XADATA
SYSTEMISCONFIGUREDWITH#HOOSEONEOFTHE
FOLLOWINGCONFIGURATIONS(IGH0ERFORMANCE
(IGH#APACITY

#OUNTRY 4HISISTHECOUNTRYINWHICH%XADATAWILL
RESIDEFOREXAMPLE5NITED3TATES

4IME:ONE 4HISISTHETIMEZONEINWHICH%XADATARESIDES
&OREXAMPLE!MERICA#HICAGO

7ORKLOAD4YPE 4HISFIELDISUSEDTODEFINETHEPREDOMINANT
WORKLOADTYPEFORDATABASESONTHESYSTEM
#HOOSEEITHER$7FORDATAWAREHOUSEOR
/,40FORONLINETRANSACTIONPROCESSING

"ACKUP-ETHOD 4HEINSTALLATIONPROCESSUSESTHEBACKUP
METHODTODETERMINETHESIZESFOR!3-DISK
GROUPS#HOOSEBETWEEN"ACKUPS)NTERNALTO
/RACLEAND"ACKUPS%XTERNALTO/RACLE

0ROTECTION,EVEL 4HISFIELDDETERMINESWHATTYPEOFREDUNDANCY
YOUWISHTOUSEFORYOUR!3-DISKGROUPS
#HOOSEONEOFTHEFOLLOWING(IGHFOR!,,
(IGHFOR$!4! (IGHFOR2%#/ OR.ORMALFOR
!,,

%XADATA3MART&LASH#ACHE !LLFLASHDISKSARECONFIGUREDASFLASHCACHE

3OMEOFTHEPARAMETERS LIKE#OUNTRYAND4IME:ONE AREPRETTYSTANDARDFAREWHENCONFIGURING
SERVERS/THERPARAMETERSARE%XADATA SPECIFICANDWILLBENEWTOYOU/NETHINGYOUMAYNOTICERIGHT
AWAYISTHATTHEREISNOWAYTONAMEYOUR!3-DISKGROUPSINTHECONFIGURATIONWORKSHEET)FYOUDONT
LIKETHEDEFAULTNAMESOF30C0N{machine_name}ANDA42>N{machine_name} YOUWILLHAVETHEOPPORTUNITY
TOCHANGETHEMLATERINTHE$"-#ONFIGURATOR4HE%XADATACONFIGURATIONPARAMETERSAREDESCRIBEDAS
FOLLOWS


#(!04%2 #/.&)'52).'%8!$!4!

Exadata Database Machine Name:4HISPARAMETERCANBEnCHARACTERSIN


LENGTHANDISUSEDTOGENERATENETWORKHOSTNAMESFORNETWORKENDPOINTSIN
YOUR%XADATAFRAME)TISALSOUSEDTONAMETHE2!#CLUSTERANDTHE3IMPLE
#LIENT!CCESS.AME3#!. REQUIREDBY2!#&OREXAMPLE AMACHINENAMEOF
TgPPRODUCESACLUSTERNAMEOF@TgPNR[dbcTazANDA3#!.NAMEOFTgP
bRP]^daR^\_P]hR^\4HISPARAMETERISCASE SENSITIVEFORALLBUTTHEDISKGROUP
NAMEPOSTFIX IFANY INWHICHCASEITISFORCEDTOUPPERCASE4HEFOLLOWING
LISTINGSHOWSTHEMANAGEMENTNETWORKHOSTNAMESGENERATEDFORTHEDATABASE
SERVERSANDSTORAGECELLSINAQUARTERRACKCONFIGURATION)NSTEP WELLTAKEA
LOOKATACOMPLETELISTINGOFTHENAMESPREFIXEDWITHTHEMACHINENAMEFORA
QUARTERRACKCONFIGURATION
<P]PVT\T]c=Tcf^aZ
TgPSQ ^daR^\_P]hR^\TgPSQ 
TgPSQ!^daR^\_P]hR^\TgPSQ!
TgPRT[ ^daR^\_P]hR^\TgPRT[ 
TgPRT[!^daR^\_P]hR^\TgPRT[!
TgPRT["^daR^\_P]hR^\TgPRT["
)FTHEREISACHANCEYOUWILLEVERHAVEMORETHANONE%XADATASYSTEMINYOURDATACENTER
CONSIDERENUMERATINGYOURMACHINENAMETOPROVIDEUNIQUENESS&OREXAMPLEAMACHINE
NAMEOFTgP ALLOWSFORFUTURESYSTEMSTOBENAMEDTgP! TgP" ANDSOON
Type of System4HETYPEOFSYSTEMDETERMINESHOWMANYCOMPUTENODESAND
STORAGECELLSAREINYOURCONFIGURATION4HISFIELDISPRESENTEDASADROP DOWN
LIST ILLUSTRATEDIN&IGURE 


Figure 8-2. The Type of System drop-down

4HISPARAMETERISUSEDTODETERMINEHOWMANYCOMPUTENODESANDSTORAGE
CELLSYOURSYSTEMHASWHENGENERATING)0ADDRESSESANDHOSTNAMES7ELLTALK
MOREABOUTTHISLATER INTHEh.ETWORK3ETTINGSvSECTION BUT/NE#OMMAND
GENERATESSEQUENTIAL)0ADDRESSESBYSTARTINGWITHABASEADDRESSFORTHEFIRST
HOSTANDTHENINCREMENTINGFROMTHATADDRESSFOREACHHOST&OREXAMPLE IF
YOURMANAGEMENT)0SSTARTAT THENTHEFOLLOWING)0ADDRESSES
WILLBEGENERATEDFORTHECOMPUTENODESANDSTORAGECELLSINAQUARTERRACK
 TgPSQ ^daR^\_P]hR^\
 TgPSQ!^daR^\_P]hR^\
 TgPRT[ ^daR^\_P]hR^\
 TgPRT[!^daR^\_P]hR^\
 TgPRT["^daR^\_P]hR^\


#(!04%2 #/.&)'52).'%8!$!4!

 .OTE4HEWAY/NE#OMMANDASSIGNS)0ADDRESSESSEQUENTIALLYFROMABASEADDRESSCANBEPROBLEMATICWHEN
ADDINGCOMPUTENODESANDSTORAGECELLSTOYOURCONFIGURATION7ELLTALKMOREABOUTTHISLATERINTHECHAPTERWHEN
WELOOKATUPGRADING%XADATA

Disk Type:4HISFIELDISPRESENTEDASADROP DOWNLIST%XADATA8MODELSCOME


INTWOFLAVORS (IGH#APACITY$ISKSAND(IGH0ERFORMANCE$ISKS(IGH CAPACITY
DISKSHAVEACAPACITYOFTERABYTES WHILEHIGHPERFORMANCEDISKSHAVEA
CAPACITYOFGIGABYTES4HISINFORMATIONISUSEDTOCALCULATECELLDISKANDGRID
DISKSIZESFORTHEINSTALLATION
Workload Type:3EVERALSETTINGSFROMTHECONFIGURATIONWORKSHEETAREUSEDTO
CREATEASTARTERDATABASEDURINGTHEINSTALLATIONPROCESS4HESEPARAMETERSARE
USEDTOCREATEADATABASETEMPLATETHATISINTURNUSEDBYTHE$ATABASE
#ONFIGURATION!SSISTANTSQRP ATTHEENDOFTHEINSTALLATIONPROCESS4HE
WORKLOADTYPEYOUSPECIFYDETERMINESWHETHERYOURDEFAULTDATABASEIS
OPTIMIZEDFOR/,40OR$7WORKLOADS)NSTANCEPARAMETERSSUCHASB60NC0A64C
AND?60NC0A64CARESIZEDBASEDONTHE7ORKLOAD4YPEYOUSPECIFIEDFORYOUR
DATABASE
Backup Method4HISSETTINGDETERMINESHOWYOURDISKGROUPSARESIZEDDURING
THEINSTALLATIONPROCESS$ISKSPACEISALLOCATEDTOTHE30C0ANDA42>DISKGROUPS
ASFOLLOWS
Backups Internal to Exadata:)FYOUPLANTOUSETHE&AST2ECOVERY!REA
&2! TOSTOREONLINEDATABASEBACKUPS CHOOSE"ACKUPS)NTERNALTO
/RACLE7HENTHISALLOCATIONSCHEMEISSELECTED DISKSPACEFORTHE30C0
ANDA42>DISKGROUPSWILLBEALLOCATEDASFOLLOWS
30C0
A42>
Backups External to Exadata:)FYOUAREPLANNINGTOBACKUPYOUR
DATABASESDIRECTLYTOTAPE .&3 ORSOMEOTHERSTORAGEEXTERNALTO
%XADATA CHOOSE"ACKUPS%XTERNALTO%XADATA7HENTHISALLOCATION
SCHEMEISCHOSEN DISKSPACEWILLBEALLOCATEDTOTHE30C0ANDA42>DISK
GROUPSASFOLLOWS
30C0
A42>
Protection Level4HISDETERMINESWHATLEVELOFREDUNDANCYWILLBECONFIGURED
FORYOUR!3-DISKGROUPS 30C0ANDA42>3IMILARTOTHE4YPEOF3YSTEMFIELD
THISFIELDISPRESENTEDASADROP DOWNLISTFROMWHICHYOUCANCHOOSETHE
REDUNDANCYFORYOURDISKGROUPS+EEPINMINDTHATNORMALREDUNDANCYHALVES
THEUSABLESPACEINYOURDISKGROUPS.ORMALREDUNDANCYISTHEMINIMUM
ALLOWABLEREDUNDANCYLEVEL(IGHREDUNDANCYPROVIDESTHEBESTPROTECTION
FROMDISKANDSTORAGECELLFAILURES BUTITDOESSOATTHECOSTOFREDUCING
AVAILABLESPACEBYTWOTHIRDS4HEFOLLOWINGCOMBINATIONSARESUPPORTED


#(!04%2 #/.&)'52).'%8!$!4!

High For All:4HISCONFIGURATIONCANSIGNIFICANTLYREDUCEAVAILABLESPACE


INYOURDISKGROUPS!CCORDINGTO/RACLE ITISBESTUSEDWHENTHEBACKUP
METHODCHOSENIS"ACKUPS%XTERNALTO/RACLE
High For DATA: )NTHISCONFIGURATION !3-REDUNDANCYISSETTOHIGHFOR
30C0 WHILEA42>ISSETTONORMALREDUNDANCY4HISISBESTSUITEDFOR
SYSTEMSTHATBACKUPTHEDATABASESTOEXTERNALSTORAGE SUCHASTAPE
64, .&3 ANDSOON
High For RECO:)NTHISCONFIGURATION HIGHREDUNDANCYISUSEDFORA42>
ANDNORMALREDUNDANCYISUSEDFORTHE30C0DISKGROUP4HIS
CONFIGURATIONISBESTSUITEDFORDATABASESTHATBACKUPTOTHE&2!
Normal For ALL: 4HISCONFIGURATIONUSESNORMALREDUNDANCYFORALLDISK
GROUPS7HILEITPROVIDESQUITEABITMOREUSABLESPACEINTHEDISK
GROUPS KEEPINMINDTHATTHESIMULTANEOUSLOSSOFONEDISKDRIVEFROM
TWOSTORAGECELLSWILLCAUSE!3-TODISMOUNTYOURDISKGROUPS)FTHAT
HAPPENS YOURDATABASESUSINGTHOSEDISKGROUPSWILLALSOBEOFFLINE
!SYOUCONSIDERWHICHPROTECTIONSCHEMEISRIGHTFORYOU THINKABOUTYOURPAIN
TOLERANCEWHEREITCOMESTOSYSTEMOUTAGES.ORMALREDUNDANCYPROVIDES
MORESTORAGEANDLESSPROTECTIONFROMDISKCELLFAILURES5NLESSYOUCANAFFORD
FORYOURDATABASESTOBEDOWNFORANEXTENDEDPERIODOFTIME YOUSHOULDLEAN
TOWARDHIGHREDUNDANCYFORTHE30C0DISKGROUP)FYOUCANAFFORDANOUTAGE
WHILETRANSIENTDISKCELLFAILURESARERESOLVED ORINAWORST CASESCENARIO WAIT
FORAFULLDATABASERECOVERY THENPERHAPSHIGHREDUNDANCYFORTHEA42>DISK
GROUPISABETTERFIT)FSPACEISVERYTIGHTANDYOUCANTOLERATETHESETYPESOF
OUTAGES THENYOUMAYCONSIDERSETTINGREDUNDANCYFORALLDISKGROUPSTO
NORMAL
4HEREDUNDANCYLEVELFORYOURBHBC4<N36OR315BN36 DISKGROUP WHICHSTORES
THE/#2AND6OTINGFILES WILLBEAUTOMATICALLYSETTOTHEMAXIMUMLEVEL
SUPPORTEDBYYOUR%XADATARACKCONFIGURATION(IGHREDUNDANCYISNOT
SUPPORTEDONQUARTERRACKCONFIGURATIONS SONORMALREDUNDANCYISTHEBEST
YOUCANDOFORTHEM&ORHALFRACKANDFULLRACKCONFIGURATIONS REDUNDANCYWILL
ALWAYSBESETTOHIGHFORTHEBHBC4<N36DISKGROUP

 +EVIN3AYS0ROTECTIONLEVELISAVERYSENSITIVEANDSEEMINGLYPOLITICALLYCHARGEDTOPIC4HEMANNERINWHICH
!3-CHOOSESPARTNERDISKSLEAVESANYNORMALREDUNDANCYDISKGROUPATMUCHGREATERRISKOFDATALOSSFROMA
DOUBLE DISKFAILURETHANWOULDBETHECASEWITHTRADITIONAL2!)$ STYLEPROTECTION7HILETHEREMAYBEHUNDREDSOF
DISKSTHATcouldFAILSIMULTANEOUSLYINADOUBLEDISKFAILURE ITSJUSTAMATTEROFBAD LUCKWHICHONESFAIL)FTHE
hWRONGTWODISKSvINANORMALREDUNDANCYSITUATIONHAPPENTOFAIL THEADMINISTRATORWILLHAVETODEALWITHDATA
LOSS&ORTHISREASON THEAUTHORSARECORRECTTOPOINTOUTWHICHHIGH REDUNDANCYSCHEMEISRECOMMENDEDBASED
ONTHEBACKUPSTRATEGYPROTECTINGTHESYSTEM


#(!04%2 #/.&)'52).'%8!$!4!

4HETOPICOF!3-NORMALREDUNDANCYPROTECTIONFROMDOUBLEDISKFAILURESCENARIOSISNOT%XADATA SPECIFIC
(OWEVER UNTILTHEADVENTOF%XADATA CUSTOMERSRARELYTRUSTEDTHEIRDATATO!3-PROTECTIONˆOPTINGINSTEADFOR
EXTERNALREDUNDANCY

Exadata Smart Flash Cache4HEREISNOMENTIONOFTHEFLASHCACHEINTHE


CONFIGURATIONWORKSHEETBUTTHEREISINTHE$"-#ONFIGURATOR

Oracle Environment Parameters


4HENEXTSETOFPARAMETERSISUSEDTODEFINETHE/3USERANDGROUPACCOUNTS ASWELLASTHELOCATIONFOR
THE'RID)NFRASTRUCTURE#LUSTERWARE ANDDATABASESOFTWAREINSTALLATION4HESEPARAMETERSAREWELL
KNOWNTO$"!SWHOHAVEBEENTHROUGHAN/RACLE2!#G2INSTALLATIONORTWO4ABLE SHOWSTHE
PARAMETERSYOUWILLNEEDTOPROVIDE4HEPARAMETERSINitalicsCANNOTBEMODIFIEDINTHECONFIGURATION
WORKSHEET ANDAREINCLUDEDFORINFORMATIONALPURPOSESONLY3OMEOFTHEM HOWEVER CANBECHANGED
WHENYOUFILLOUTTHE$"-#ONFIGURATORLATER

Table 8-2. Oracle Environment Parameters

Environment Parameter Default Value


'RID)NFRASTRUCTUREUSERNAME ORACLE

'RID)NFRASTRUCTUREUSERIDENTIFIER 

2!#HOMEUSERNAME ORACLE

2!#HOMEIDENTIFIER 

/RACLEINVENTORYGROUPNAME OINSTALL

/RACLEINVENTORYGROUPIDENTIFIER 

2!#HOME$"!GROUPNAME DBA

2!#HOME$"!GROUPIDENTIFIER 

2!#HOME/0%2GROUPNAME RACOPER

2!#HOME/0%2GROUPIDENTIFIER 

!3-$"!GROUPNAME ASMDBA

!3-$"!GROUPIDENTIFIER 


#(!04%2 #/.&)'52).'%8!$!4!

Environment Parameter Default Value


!3-!$-).GROUPNAME ASMADMIN

!3-!$-).GROUPIDENTIFIER 

/RACLESOFTWAREOWNERPASSWORD welcome

'RID)NFRASTRUCTURE#LUSTERWARE HOME /u01/app/{version}/grid


BASEDIRECTORY
7HEREVERSIONISCURRENTLY

/RACLEDATABASEHOMEBASEDIRECTORY /u01/app/oracle
>A02;4N10B4

/RACLEDATABASEHOME>A02;4N7><4 /u01/app/oracle/product{version}/db_home1
DIRECTORY
6ERSIONISCURRENTLY

/RACLE)NVENTORYDIRECTORY /u01/app/oraInventory

$ATABASENAME DBM

$ATABASECHARACTERSET AL32UTF8

$ATABASENATIONALCHARACTERSET AL16UTF16

$ATABASEBLOCKSIZE 8192

!3-DISKGROUPS 30C0 for the default data file location;A42> for


the fast recovery area
Note: Default 30C0 and A42> disk group size
depends on the type of system (quarter, half, or
full rack), the type of disk drives (high capacity
or high performance), and the type of backup.

3TARTING)0!DDRESSFORTHE)NFINI"AND 192.168.10.1
PRIVATENETWORK1

3UBNETMASKFOR)NFINI"ANDPRIVATE 255.255.252.0
NETWORK

4HE)NFINI"ANDPRIVATENETWORKISMORECOMMONLYKNOWNTO$"!SASTHEprivate Interconnect4HISFIELD
SHOWSSTARTING)0ADDRESSFORTHERANGEOF)0STHE2!#CLUSTERWILLUSEFORCLUSTER)NTERCONNECTTRAFFIC
HEARTBEAT CACHEFUSION ANDSOON )FFORSOMEREASONYOUHAVECHANGEDTHE)0ADDRESSESFORTHE)"
NETWORKYOUWILLNEEDTOALSOMAKETHATADJUSTMENTINTHE$"-#ONFIGURATORWHENYOUTRANSFERTHE
WORKSHEETPARAMETERSLATER


#(!04%2 #/.&)'52).'%8!$!4!

 .OTE/NE#OMMANDDOESNOTALLOWYOUTOMODIFYTHECHARACTERSETPARAMETERS3OTHEDEFAULTDATABASE
CREATEDWILLUSETHE!,54&DATABASECHARACTERSET AND!,54&NATIONALCHARACTERSET!FTERTHE
INSTALLATIONISCOMPLETE YOUMAYCHOOSETODROPTHEDEFAULTDATABASEANDCREATEYOUROWNDATABASESTHATMEET
THESPECIFICREQUIREMENTSOFYOURENVIRONMENT+EEPINMINDTHAT/RACLERECOMMENDSUSING5NICODEFORALLNEW
DATABASEIMPLEMENTATIONS

Network Settings
4HEFINALSETOFCONFIGURATIONPARAMETERSISWHEREYOUSPECIFYTHENETWORKSETTINGSFOR%XADATA
/NE#OMMANDSUPPORTSTHECONFIGURATIONOFUPTOFOURNETWORKS IDENTIFIEDAS.%4THROUGH.%4
.%4AND.%4AREREQUIREDANDAREUSEDFORTHEMANAGEMENTNETWORKANDCLIENTACCESSNETWORK
RESPECTIVELY.%4AND.%4AREOPTIONALNETWORKSYOUMAYCHOOSETOCONFIGUREIFNEEDED4ABLE 
SHOWSALLTHENETWORKSETTINGSUSEDTOCONFIGURE%XADATA

Table 8-3. Network Settings

Network Setting Description


$OMAINNAME 9OURNETWORKDOMAINNAME&OREXAMPLE^daR^\_P]hR^\

)0ADDRESSOFTHENAMESERVERS 4HE)0ADDRESSOFONEORMOREOFYOURNETWORKNAMESERVERS

)0ADDRESSOFTHE.ETWORK4IME 4HE)0ADDRESSOFONEORMORE.40SERVERSFORSERVERTIME
0ROTOCOL.40 SERVERS SYNCHRONIZATION

-ANAGEMENT.ETWORK.%4 4HESTARTING)0ADDRESSFORTHEMANAGEMENTNETWORK)0
3TARTING)0ADDRESS ADDRESSESFORALLMANAGEMENTNETWORKEND POINTSWILLDERIVE
SEQUENTIALLYFROMTHIS)0ADDRESS4HISNETWORKMUSTBE
SEPARATEFROMALLOTHERNETWORKSON%XADATA

-ANAGEMENT.ETWORK.%4 4HESUBNETMASKFORTHEMANAGEMENTNETWORK
3UBNETMASK

-ANAGEMENT.ETWORK.%4 4HE)0ADDRESSOFTHEGATEWAYFORTHEMANAGEMENTNETWORK
'ATEWAY)0ADDRESS

#LIENT!CCESS.ETWORK.%4 4HECLIENTACCESSNETWORKISCONFIGUREDONTHECOMPUTE
3TARTING)0ADDRESS NODES)TISTHEINTERFACEUSEDBYTHEDATABASE3#!.LISTENERS
#LIENTAPPLICATIONSCONNECTTOTHEDATABASETHROUGHTHE.%4
INTERFACE4HISNETWORKMUSTBESEPARATEFROMALLOTHER
NETWORKSON%XADATA

#LIENT!CCESS.ETWORK.%4 4HESUBNETMASKFORTHE#LIENT!CCESS.ETWORK
3UBNETMASK


#(!04%2 #/.&)'52).'%8!$!4!

Network Setting Description


#LIENT!CCESS.ETWORK.%4 4HEGATEWAYFORTHE#LIENT!CCESS.ETWORK
'ATEWAY)0ADDRESS

#LIENT!CCESS.ETWORK.%4 /RACLERECOMMENDSTHE#LIENT!CCESS.ETWORK%THERNET
#HANNELBONDING DEVICESTcW ANDTcW! BEBONDEDTOPROVIDEREDUNDANCYFOR
CLIENTCONNECTIONSTOTHEDATABASE9ESOR.OINTHISFIELD
DETERMINESWHETHERORNOT.%4WILLBECONFIGUREDFOR
CHANNELBONDING)FITIS ITWILLBEBONDEDTOWITHTHE.%4
INTERFACE

!DDITIONAL.ETWORK.%4 )FCHANNELBONDINGISNOTUSEDFORTHE#LIENT!CCESS.ETWORK
3TARTING)0ADDRESS THEN.%4ISAVAILABLEASANADDITIONALNETWORKINTERFACE
TcW! 4HISFIELDISTHESTARTING)0ADDRESSFORTHERANGEOF)0S
ASSIGNEDTO.%4ACROSSTHEDATABASESERVERS)FCONFIGURED
THISNETWORKMUSTBESEPARATEFROMALLOTHERNETWORKSON
%XADATA

!DDITIONAL.ETWORK.%4 4HESUBNETMASKFORTHE.%4NETWORKINTERFACE
3UBNETMASK

!DDITIONAL.ETWORK.%4 4HE)0ADDRESSOFTHEGATEWAYUSEDBYTHE.%4NETWORK
'ATEWAY)0ADDRESS

!DDITIONAL.ETWORK.%4 4HISSUFFIXISAPPENDEDTOTHEHOSTNAMEONEACHOFTHE
.ETWORKHOSTNAMESUFFIX DATABASESERVERSTOIDENTIFYTHE.%4NETWORK

!DDITIONAL.ETWORK.%4 .%4ISANOPTIONALNETWORKAVAILABLEONTHEDATABASE
3TARTING)0ADDRESS SERVERS4HISISTHE)0ADDRESSFORTHESEQUENTIALRANGEOF)0S
FORTHE.%4NETWORK4HISNETWORKMUSTBESEPARATEFROMALL
OTHERNETWORKSONTHESYSTEM

!DDITIONAL.ETWORK.%4 4HESUBNETMASKFORTHE.%4NETWORK
3UBNETMASK

!DDITIONAL.ETWORK.%4 4HE)0ADDRESSOFTHEGATEWAYFORTHE.%4NETWORK
'ATEWAY)0ADDRESS

!DDITIONAL.ETWORK.%4 4HISSUFFIXISAPPENDEDTOTHEHOSTNAMEONEACHOFTHE
.ETWORKHOSTNAMESUFFIX DATABASESERVERSTOIDENTIFYTHE.%4NETWORK

0$5 !)0ADDRESS 4HEPOWERDISTRIBUTIONUNIT0$5 HASAN%THERNETINTERFACE


ETH ANDCANBECONFIGUREDONTHENETWORKBYASSIGNINGITAN
)0ADDRESS4HISFIELDDEFINESTHE)0ADDRESSFORTHE0$5


#(!04%2 #/.&)'52).'%8!$!4!

Network Setting Description


0$5 ")0ADDRESS %XADATAISEQUIPPEDWITHAREDUNDANT0$5THATCANALSOBE
CONFIGUREDONTHENETWORKBYASSIGNINGITAN)0ADDRESS4HIS
FIELDDEFINESTHENETWORKFORTHE0$5

4HEDOMAINNAME $.3SERVER AND.40SERVERSETTINGSAREALLSTANDARDNETWORKSETTINGS


4HESESHOULDBESPECIFIEDASYOUWOULDFORANYOTHER/RACLEDATABASESERVERONYOUR
NETWORK4HEREMAININGNETWORKSETTINGSAREDESCRIBEDASFOLLOWS
Management Network (NET0)4HEMANAGEMENTNETWORKISUSEDFOR
ADMINISTRATIVEACCESSTOTHEDATABASESERVERSANDSTORAGECELLS9OUCANTHINKOF
THISNETWORKASYOUR33(ENTRYPOINTFORLOGGINGINTOTHECOMPUTENODES
STORAGECELLS AND)"SWITCHES4HEMANAGEMENTNETWORKISSERVICEDBYTHE
INTERNAL#ISCONETWORKSWITCH/NLYONENETWORKDROPISREQUIREDTOUPLINKTHE
#ISCOMANAGEMENTSWITCHTOYOURCOMPANYNETWORK4HEMANAGEMENT
NETWORKALSOINCLUDESTHE),/-INTERFACESONTHECOMPUTENODESANDSTORAGE
CELLS
Client Access Network (NET1):4HECLIENTACCESSNETWORKPROVIDES31,
.ET
ACCESSTOTHEDATABASE4HISISTHENETWORKUSEDBYTHE3#!.,ISTENERSTO
ESTABLISHCLIENTCONNECTIONSTOTHEDATABASE/NLYTHEDATABASESERVERSUSETHIS
NETWORKSTORAGECELLSARENOTASSIGNEDAN)0ADDRESSONTHISNETWORK!NDEVEN
THOUGHTHEDATABASESERVERSHAVEAN)0ONTHISNETWORK YOUCANNOTCONNECTTO
THESE)0ADDRESSESUSING33( BECAUSE33(ISNOTCONFIGUREDTOLISTENONTHIS
NETWORK/NENETWORKDROPMINIMUM ISREQUIREDFOREACHDATABASESERVERTO
PROVIDEACCESSTHROUGHYOURCOMPANYNETWORK)FCHANNELBONDINGISUSEDTO
PROVIDEHARDWAREREDUNDANCY YOUWILLNEEDTWODROPSPERDATABASESERVER
4HECABLEPAIRSFROMTHEDATABASESERVERSSHOULDBECONNECTEDTOREDUNDANT
NETWORKSWITCHESTOPROVIDEFULLNETWORKREDUNDANCY)FCHANNELBONDINGIS
CONFIGUREDFORTHECLIENTACCESSNETWORK /NE#OMMANDCONFIGURESTHESE
DEVICESINTHEXURUVTcW ANDXURUVTcW!CONFIGURATIONFILESINTHE
TcRbhbR^]UXV]Tcf^aZbRaX_cbDIRECTORY4HEYAREBONDEDTOTHEQ^]STcW
DEVICEDEFINEDINTHEXURUVQ^]STcWFILE&OREXAMPLE THEFOLLOWINGLISTING
SHOWSHOWTHEMASTERBONDDEVICEISREFERENCEDBYTHETcW ANDTcW!SLAVE
DEVICES
TVaT_34E824k<0BC4AkB;0E4XURUVQ^]STcWXURUVTcW XURUVTcW!
XURUVQ^]STcW)34E824,Q^]STcW
XURUVTcW )34E824,TcW 
XURUVTcW )<0BC4A,Q^]STcW
XURUVTcW )B;0E4,hTb
XURUVTcW!)34E824,TcW!
XURUVTcW!)<0BC4A,Q^]STcW
XURUVTcW!)B;0E4,hTb
Channel Bonding (NET1):/RACLERECOMMENDSTHATYOUCONFIGURE.)#BONDING
FORTHECLIENTACCESSNETWORKTOPROVIDENETWORKREDUNDANCY)FYOUCHOOSETO
BONDTHECLIENTACCESSNETWORK /NE#OMMANDWILLUSE.%4ASTHESECONDARY
NETWORKDEVICE


#(!04%2 #/.&)'52).'%8!$!4!

Additional Network (NET2):)FCHANNELBONDINGISNOTCONFIGUREDFORTHECLIENT


ACCESSNETWORK .%4ISMAYBEUSEDTOCONFIGUREANADDITIONALNETWORK
Additional Network (NET3):4HE.%4DEVICEISAVAILABLEASANADDITIONAL
NETWORKIFNEEDED

 4IP)NADDITIONTOTHENETWORKDEVICESWEVEDISCUSSEDHERE EACH%XADATA8 COMPUTENODEFEATURESTWO


GIGABIT%THERNETG% NETWORKPORTS4HESEPORTSARENOTREADYTOBEUSEDRIGHTOUTOFTHEBOX9OUMUSTFIRST
PURCHASEANDINSTALL3&0TRANSCEIVERMODULESINORDERTOCONNECTTHEMTOYOURNETWORKSWITCH%ACH%XADATA8 
COMPUTENODEHASEIGHTOFTHESEG%PORTS)FYOURBACKUPMEDIASERVERSUPPORTSG% THENTHISNETWORKCOULD
BEUSEDTOIMPROVETHEPERFORMANCEOFYOURDATABASEBACKUPS

#ELL!LERT.OTIFICATION0ARAMETERS
4HERT[[baeMANAGEMENTSERVICEONEACHSTORAGECELL MONITORSTHEHEALTHOFTHESTORAGECELLSANDIS
CAPABLEOFSENDINGOUT3-40AND3.-0NOTIFICATIONSIFPROBLEMSARISE#ONFIGURINGEMAILAND3.-0
ALERTNOTIFICATIONSFORTHESTORAGECELLSISOPTIONALBUTHIGHLYRECOMMENDED4ABLE DESCRIBESTHE
VARIOUSPARAMETERSUSEDTOCONFIGURE#ELL!LERT.OTIFICATIONS

Table 8-4. Cell Alert Notification Parameters

Configuration Parameter Description


3-403ERVER 4HISISTHENAMEOFTHE3-40SERVERTHESTORAGECELLSWILLUSE
FORROUTINGEMAILALERTNOTIFICATIONS&OREXAMPLE
\PX[R^a_^aPcTR^\

3-400ORT 4HISISTHE3-40EMAILPORTUSEDFORROUTINGEMAIL
NOTIFICATIONS&OREXAMPLE OR

SMTP5SE33, 4HISFIELDINDICATESWHETHERORNOTYOUREMAILSERVERREQUIRES
SECURECONNECTIONSUSING33,6ALIDRESPONSESARE9ESAND
.O

SMTP4O!DDR 4HISFIELDSHOULDBEFILLEDINWITHACOMMA DELIMITEDLISTOF


EMAILADDRESSESFORDISTRIBUTINGEMAILALERTS&OREXAMPLE
SQP/R^a_^aPcTR^\Y^W]S^T/R^a_^aPcTR^\

SMTP&ROM!DDR 4HISISTHERETURNADDRESSFOREMAILALERTS&OREXAMPLE
TgPSPcP/R^a_^aPcTR^\

SMTP&ROM 4HISEMAILADDRESSAPPEARSINTHEh&ROMvFIELDOFEMAIL
ALERTS&OREXAMPLE4gPSPcP3PcPQPbT<PRWX]T


#(!04%2 #/.&)'52).'%8!$!4!

Configuration Parameter Description


SMTP5SER 4HISISTHEUSERNAMETHESTORAGECELLWILLUSEFORLOGGINGIN
TOTHE3-40SERVER

SMTP0WD 4HISPASSWORDISUSEDTOESTABLISHSESSIONSWITHYOUR3-40
SERVER)FYOUR3-40SERVERDOESNOTREQUIREAUTHENTICATION
THISFIELDMAYBELEFTBLANK

SNMP3UBSCRIBER 4HISISTHEHOST PORT ANDCOMMUNITYFORRECEIVING3.-0


ALERTNOTIFICATIONS4HEPORTANDCOMMUNITYATTRIBUTESARE
OPTIONAL4HEDEFAULTPORTIS ANDTHEDEFAULTCOMMUNITY
IS@PUBLIC&OREXAMPLEb]\_R^a_^aPcTR^\ %!_dQ[XR
9OUMAYENTERONLYONETARGETHERE BUTADDITIONAL3.-0
TARGETSCANBEADDEDAFTERTHEINSTALLATIONISCOMPLETE

3TEP4HE$"-#ONFIGURATOR
/NCEYOUVECOMPLETEDTHECONFIGURATIONWORKSHEET THEINFORMATIONYOUGATHEREDCANBETRANSFERREDTO
THE$"-$ATABASE-ACHINE #ONFIGURATOR4HE$"-#ONFIGURATORISAN%XCELSPREADSHEET
SQ\NR^]UXVdaPc^ag[b THATGENERATESALLTHEINPUTFILES/NE#OMMANDWILLNEEDTOCARRYOUTTHE
INSTALLATIONPROCESS4HESPREADSHEETISLOCATEDINTHE^_c^aPR[TBd__^acC^^[b^]TR^\\P]SDIRECTORY
ONEVERYCOMPUTENODE4HE$"-#ONFIGURATORISHEAVILYDOCUMENTEDINTHE%XADATADatabase Machine
Owner’s Guide SOWEWONTBEDISCUSSINGALLOFTHEFIELDSHERE"UTWEWILLTAKEALOOKATHOWAFEWOF
THEMAREUSEDINTHEINSTALLATIONPROCESS4ABLE DESCRIBESAFEWOFTHEKEYDATA ENTRYFIELDSFROMTHE
SPREADSHEET

Table 8-5. DBM Configurator

Field Description
#USTOMER.AME 4HISFIELDISUSEDWHENCREATINGTHEBASEDIRECTORYFORTHE
OUTPUTFILESGENERATEDBYTHE#ONFIGURATOR&OREXAMPLEIFTHE
CUSTOMERNAMEISh/UR#OMPANYvTHENADIRECTORYNAMED
2)KSQ\PRWX]TN>da2^\_P]hWILLBECREATEDTOSTORETHEOUTPUT
FILES

%XADATA$ATABASE-ACHINE.AME !SWEDISCUSSEDEARLIER THEMACHINENAMEISUSEDASAPREFIX


FORNETWORKHOSTNAMESANDASASUFFIXFOR!3-DISKGROUP
NAMES!DDITIONALLY ITISALSOUSEDFORTHETARGETDIRECTORYNAME
INSIDETHEBASEDIRECTORYMENTIONEDABOVE FORSTORINGTHE
OUTPUTFILES4HISALLOWSTHE#ONFIGURATORTOMANAGETHE
CONFIGURATIONOFMULTIPLE$ATABASE-ACHINECONFIGURATIONS


#(!04%2 #/.&)'52).'%8!$!4!

Field Description
$ATA$ISKGROUP.AME 4HENAMEFORTHE!3-30C0DISKGROUPISGENERATED
AUTOMATICALLYINTHEFORM30C0_{machine_name}4HEDEFAULT
NAMECANBECHANGEDHERE ASNEEDED BEFOREGENERATINGYOUR
PARAMETERFILES

2ECO$ISKGROUP.AME 4HENAMEFORTHE!3-A42>DISKGROUPISGENERATED
AUTOMATICALLYINTHEFORMA42>?[machine_name}4HEDEFAULT
NAMECANBECHANGEDHERE BEFOREGENERATINGYOURPARAMETER
FILES

4HE$"-#ONFIGURATORPROCESSISASFOLLOWS
1. %NTERTHECONFIGURATIONPARAMETERSFROMTHECONFIGURATIONWORKSHEETINTOTHE
$"-#ONFIGURATOR
2. #LICKTHE'ENERATEBUTTONONTHERIGHTSIDEOFTHESPREADSHEET!BRIEFREPORT
SHOWINGTHETOPOLOGYOFYOURSYSTEMISGENERATEDATTHEBOTTOMOFTHE
SPREADSHEET3CROLLDOWNTOREVIEWYOURSETTINGSANDMAKECORRECTIONSTOTHE
OUTPUTASNEEDED7HENYOUAREFINISHEDMAKINGCHANGES YOUAREREADYTO
CREATETHEOUTPUTFILES
3. 4HELASTSTEPISTOCLICKTHE#REATE#ONFIG&ILESBUTTON4HISGENERATESTHE
PARAMETERANDDEPLOYMENTFILESUSEDBY/NE#OMMAND)TALSOCREATESAN
installation templateINASEPARATESPREADSHEETTABINTHE#ONFIGURATOR4HE
INFORMATIONINTHETEMPLATECONSISTSMOSTLYOFTHEINPUTPARAMETERSYOU
PROVIDEDINANEASY TO READFORMAT2EVIEWTHETEMPLATECAREFULLYANDMAKE
CHANGESINTHEDATAENTRYORTOPOLOGYREPORTAREASASNEEDED)FYOUMUSTGO
BACKANDMAKEANYCHANGES YOUSHOULDCLICKTHE'ENERATEAND#REATE#ONFIG
&ILESBUTTONSAGAINSOTHATYOURCHANGESAREWRITTENTOTHEOUTPUTFILES

 #AUTION"ECAREFULWHENFILLINGOUTTHESPREADSHEET)TSVERYEASYFORATYPOTOSLIPTHROUGHANDCAUSEYOU
PROBLEMSLATER4HETOPOLOGYREPORTGENERATEDBELOWTHEDATAENTRYFIELDSISUSEFULFORCATCHINGERRORSINTHEHOST
NAMESAND)0ADDRESSESYOUENTERED4HISREPORTISCREATEDWHENYOUCLICKTHE'ENERATEBUTTON

3TEP5PLOAD0ARAMETERAND$EPLOYMENT&ILES
4HE$"-#ONFIGURATORGENERATESANUMBEROFFILESTHATWILLBEUSEDTOCONFIGUREYOUR%XADATA$ATABASE
-ACHINE4HESEFILESARESAVEDINTHE2)KSQ\PRWX]TNjcompany_namelKjmachine_namelDIRECTORY4HEFILES
AREPRIMARILYUSEDBY/NE#OMMANDTOPERFORMTHEINSTALLATIONANDCONFIGURATIONPROCESS"UTAFEWOF
THEFILESAREUSEDBYOTHERPROCESSES&OREXAMPLE THERWTRZX_bWSCRIPTUSESTHESQ\SPcFILETOPERFORM
NETWORKREADINESSTESTSPRIORTORUNNING/NE#OMMAND4HESEFILESWILLBENEEDEDFORVARIOUSTASKS
GOINGFORWARDINTHECONFIGURATION ANDTHEYMUSTBEUPLOADEDTOTHEFIRSTCOMPUTENODEONYOUR
%XADATAPLATFORM


#(!04%2 #/.&)'52).'%8!$!4!

4HEREAREACOUPLEOFWAYSTOTRANSFERTHEPARAMETERANDDEPLOYMENTFILESTO%XADATA/NEMETHOD
INVOLVESSETTINGUPTEMPORARYNETWORKACCESSTOTHEFIRSTCOMPUTENODE4HISNETWORKCONFIGURATIONWILL
BEREPLACEDWITHPERMANENTNETWORKSETTINGSBY&IRSTBOOTOR!PPLY#ONFIGINSUBSEQUENTSTEPS4HE
OTHEROPTIONISTOSAVETHEFILESTOAPORTABLE53"FLASHDRIVEANDTHEN USINGTHE53"PORTONTHEFRONT
PANELOFTHEFIRSTCOMPUTENODE COPYTHEFILESTOTHE/NE#OMMANDDIRECTORY7ELLTALKABOUTWHERE
THATDIRECTORYISINTHEFOLLOWINGEXAMPLE4HE53"APPROACHISASFOLLOWS
1. #ONNECTTHE53"FLASHDRIVETOYOURLAPTOPANDCOPYTHEDIRECTORYCONTAINING
YOURCONFIGURATIONFILESTOTHE53"DRIVE&OREXAMPLE
\ZSXaT)KTgP
R^_h2)KSQ\PRWX]TN>da2^\_P]hKTgPT)KTgP

2)K-R^_hSQ\PRWX]TN>da2^\_P]hKTgPT)KTgP
SQ\PRWX]TN>da2^\_P]hKTgPKP[[NVa^d_
SQ\PRWX]TN>da2^\_P]hKTgPKP[[NXQNVa^d_
SQ\PRWX]TN>da2^\_P]hKTgPKP[[N]^ST[XbcNVa^d_
SQ\PRWX]TN>da2^\_P]hKTgPKRT[[NVa^d_
SQ\PRWX]TN>da2^\_P]hKTgPKRT[[NXQNVa^d_
SQ\PRWX]TN>da2^\_P]hKTgPKRWTRZX_bW
SQ\PRWX]TN>da2^\_P]hKTgPKR^]UXVSPc
SQ\PRWX]TN>da2^\_P]hKTgPKSPcPQPbT\PRWX]Tg\[
SQ\PRWX]TN>da2^\_P]hKTgPKSQ\SPc
SQ\PRWX]TN>da2^\_P]hKTgPKSQ\PRWX]T_PaP\b
SQ\PRWX]TN>da2^\_P]hKTgPKSQ<PRWX]TNTgP
SQ\PRWX]TN>da2^\_P]hKTgPKSQbNVa^d_
SQ\PRWX]TN>da2^\_P]hKTgPKSQbNXQNVa^d_
SQ\PRWX]TN>da2^\_P]hKTgPKW^bcbbP\_[T
SQ\PRWX]TN>da2^\_P]hKTgPK_aTR^]U !  Rbe
SQ\PRWX]TN>da2^\_P]hKTgPK_aTR^]U ! !!Rbe
SQ\PRWX]TN>da2^\_P]hKTgPK_aTR^]U !! Rbe
SQ\PRWX]TN>da2^\_P]hKTgPK_aTR^]URbe
SQ\PRWX]TN>da2^\_P]hKTgPK_aXeNXQNVa^d_
 (UX[TbR^_XTS
2. 2EMOVETHE53"FLASHDRIVEFROMYOURLAPTOPANDCONNECTITTOTHE53"PORT
ONTHEFRONTPANELOFTHEFIRSTCOMPUTENODEINYOURSYSTEM4HESERVERSARE
NUMBEREDFROMBOTTOMTOTOPINTHERACK SOTHEBOTTOM MOSTCOMPUTENODE
ISTHEONEYOUARELOOKINGFOR
3. 5SINGTHE%XADATA+6- LOGINTOTHEFIRSTCOMPUTENODEASROOTANDCHECKTHE
ePa[^VS\TbVFILETODETERMINETHEDEVICENAMEASSIGNEDTOTHE53"FLASH
DRIVE&OREXAMPLE YOUSHOULDSEEAMESSAGESOMETHINGLIKETHEFOLLOWING
q0ccPRWTSbRbXaT\^ePQ[TSXbZbSQ
9OUCANCONFIRMTHEPARTITIONANDDEVICENAMEUSINGTHEUSXbZCOMMANDAS
FOLLOWS
USXbZ[STebSQ

3XbZSTebSQ)!"'<1!"'#" &##QhcTb
!$ WTPSb%!bTRc^abcaPRZ!$$Rh[X]STab
D]Xcb,Rh[X]STab^U $$%!$ !,&(%&&##QhcTb


#(!04%2 #/.&)'52).'%8!$!4!


3TeXRT1^^cBcPac4]S1[^RZb8SBhbcT\
STebSQ  !$% ((%!#RF($50C"!;10
4. #REATEADIRECTORYYOUCANUSEASAMOUNTPOINTFORTHE53"FLASHDRIVE&OR
EXAMPLE \]cdbQ
5. -OUNTTHE53"DEVICEUSINGTHEFOLLOWINGCOMMAND
\^d]cceUPcSTebSQ \]cdbQ
6. #OPYTHEFILESTOTHE^]TR^\\P]SDIRECTORYASFOLLOWS
R_\]cbSQ TgP^_c^aPR[TBd__^acC^^[b^]TR^\\P]S
7. 5NMOUNTTHE53"FLASHDRIVEASFOLLOWS
d\^d]c\]cdbQ
8. 9OUCANNOWREMOVETHE53"FLASHDRIVEFROMTHECOMPUTENODE
4ABLE DESCRIBESWHATTHESEFILESAREANDHOWTHEYAREUSEDINTHEINSTALLATIONANDCONFIGURATION
PROCESS

Table 8-6. Parameter and Deployment Files

File Name Description


SQbNXQNVa^d_ 4HISFILECONTAINSTHEPRIVATENETWORK)0ADDRESS LONGNETWORK
HOSTNAME ANDSHORTNETWORKHOSTNAMEFORALLCOMPUTE
NODES4HEFORMATISSIMILARTOWHATYOUWOULDSEEINTHE
TcRW^bcbFILE INTHEFORMip_address long_name short_name

RT[[NXQNVa^d_ 4HISFILECONTAINSINFORMATIONSIMILARTOTHATOFTHE
SQbNXQNVa^d_FILE BUTTHEINFORMATIONPERTAINSTOTHESTORAGE
CELLS

_aXeNXQNVa^d_ 4HISFILEISACOMBINATIONOFTHESQbNXQNVa^d_AND
RT[[NXQNVa^d_FILESANDISUSEDFORTOPOPULATETHETcRW^bcb
FILE

P[[NVa^d_ 4HISFILECONTAINSTHEHOSTNAMESFORALLDATABASESERVERSAND
STORAGECELLSINTHE%XADATA$ATABASE-ACHINE&OREXAMPLE
TgPSQ TgPRT[

P[[NXQNVa^d_ 4HISFILECONTAINSTHEPRIVATEHOSTNAMESFORALLSERVERSAND
STORAGECELLSINTHECONFIGURATION&OREXAMPLETgPSQ _aXe
ANDTgPRT[ _aXe

P[[N]^ST[XbcNVa^d_ 4HISFILEISACOMBINATIONOFTHEP[[NVa^d_ANDP[[NXQNVa^d_
FILES


#(!04%2 #/.&)'52).'%8!$!4!

File Name Description


RT[[NVa^d_ 4HISFILECONTAINSALISTOFTHEHOSTNAMESFORALLSTORAGECELLSIN
YOURCONFIGURATION&OREXAMPLETgPRT[ TgPRT[! TgPRT["
ANDSOON

SQbNVa^d_ 4HISFILECONTAINSALISTOFTHEHOSTNAMESFORALLCOMPUTENODES
INYOURCONFIGURATION&OREXAMPLETgPSQ TgPSQ! TgPSQ"
ANDSOON

W^bcbbP\_[T 4HISISASAMPLEHOSTSFILETHATISINSTALLEDINTcRW^bcbWHEN
THEREISNO$.3SERVERAVAILABLE

RWTRZX_bW 4HISISTHENETWORKVALIDATIONSCRIPTYOUWILLRUNBEFORERUNNING
THE/NE#OMMANDUTILITY!MONGOTHERTHINGS ITVERIFIESACCESS
TOTHE.40SERVER CHECKSNAMERESOLUTIONUSINGYOUR$.3
SERVER ANDCHECKSTOSEEIFANYOFTHE)0ADDRESSESINYOUR
CONFIGURATIONAREALREADYINUSE7ELLTALKMOREABOUT
RWTRZX_bWINSTEP

SQ\SPc 4HISFILECONTAINSYOURNETWORKHOSTNAMESAND)0ADDRESSES)T
ISUSEDBYTHERWTRZX_bWSCRIPTTOVALIDATETHENETWORKSETTINGS
YOUSPECIFIED7HENYOUARERUNNINGTHERWTRZX_bWSCRIPT THIS
FILEMUSTBEINTHESAMEDIRECTORY

R^]UXVSPc 4HISFILECONTAINSALLTHECONFIGURATIONPARAMETERSANDNETWORK
SETTINGSFROMTHE$"-#ONFIGURATORINAname=valueFORMAT

SQ\PRWX]T_PaP\b 4HISISTHEINPUTPARAMETERFILEUSEDBY/NE#OMMANDTO
CONFIGUREYOURSYSTEM

SQ<PRWX]TNj\PRWX]TN]P\Tl 4HISFILEISUSEDTOGENERATETHE)NSTALLATION4EMPLATE WHICH


SHOWSUPINASEPARATESPREADSHEETTABINTHE$"-
#ONFIGURATORAFTERYOUCLICKTHE#REATE#ONFIG&ILESBUTTON

_aTR^]URbe 4HISISTHE&IRSTBOOTCONFIGURATIONFILEUSEDBYRELEASE
ANDLATEROFTHECELLSOFTWAREIMAGE

_aTR^]U !  Rbe 4HISISTHE&IRSTBOOTCONFIGURATIONFILEUSEDBYRELEASES


 ANDOFTHECELLSOFTWAREIMAGE

_aTR^]U ! !!Rbe 4HE&IRSTBOOTCONFIGURATIONFILEUSEDBYRELEASE

_aTR^]U !! Rbe 4HISISTHE&IRSTBOOTCONFIGURATIONFILEUSEDBYRELEASES


ANDLATER
1
Firstboot is run before OneCommand and performs the initial configuration of the servers. We’ll talk more
about Firstboot later in this chapter.


#(!04%2 #/.&)'52).'%8!$!4!

)NADDITIONTOTHEFILESLISTEDINTHISTABLE /NE#OMMANDALSOCREATESADATABASETEMPLATE
SQ\31CT\_[PcT USEDFORCREATINGYOURSTARTERDATABASE4HETEMPLATECONTAINSDATABASEPARAMETERSTHAT
SHOULDBEUSEDWHENEVERCREATINGDATABASESON%XADATA SUCHASTHESE
NUX[TNbXiTNX]RaTPbTNX]RaT\T]c
NZX[[NSXPV]^bcXRbNcX\T^dc
N[\NaReaNWP]VNP[[^fNcX\T
4HETEMPLATEFILE SQ\31CT\_[PcTSQc ISINSTALLEDINTHE>A02;4N7><4PbbXbcP]cbSQRPcT\_[PcTb
DIRECTORYDURINGTHE/NE#OMMANDINSTALLATIONPROCESS

3TEP#HECK)0RWTRZX_bW
/NEOFTHEFILESTHE$"-#ONFIGURATORGENERATESISASHELLSCRIPTUSEDTOVALIDATEYOURNETWORKSETTINGS
4HERWTRZX_bW#HECK)0 SCRIPTREADSYOURNETWORKCONFIGURATIONSETTINGSFROMITSPARAMETERFILE
SQ\SPc ALSOGENERATEDBYTHE#ONFIGURATOR ANDRUNSAVARIETYOFTESTSTOVERIFYNETWORKREADINESS
BEFORE DURING ANDAFTERTHECONFIGURATIONPROCESS#HECK)0TESTSTHENETWORKTOCONFIRMTHATTHE
FOLLOWINGCONDITIONSAREMET
v )0ADDRESSESTHATSHOULDRESPONDTOAPING DO
v )0ADDRESSESTHATSHOULDNOTRESPONDTOAPING DONOT
v (OSTNAMESTHATMUSTBEREGISTEREDIN$.3CANBEBOTHFORWARDANDREVERSE
RESOLVEDUSINGTHEFIRST$.3SERVERSPECIFIEDINTHESQ\SPcFILE
"EFORERUNNING/NE#OMMAND THERWTRZX_bWSCRIPT#HECK)0 SHOULDBERUNTOVALIDATETHE
READINESSOFYOURCORPORATENETWORK4HESCRIPTHASSEVERALMODESOFOPERATIONTHATVALIDATEYOUR
NETWORKCONFIGURATIONATVARIOUSPOINTSOFTHECONFIGURATIONPROCESS!TTHISPOINT YOUSHOULDRUN
#HECK)0IN_aTNP__[hR^]UXVMODEFROMASERVER EXTERNALTO%XADATAPLATFORM4HESERVERYOUCHOOSETO
RUN#HECK)0FROMMUSTHAVETHESAMENETWORKVISIBILITYASYOUR%XADATASYSTEMWILLHAVE&OREXAMPLE
THESERVERMUSTHAVEACCESSTOTHESAME$.3SERVERAND.40SERVER ANDITMUSTBEABLETOPINGTHE)0
ADDRESSESYOULISTEDINYOURNETWORKSETTINGSFOR%XADATA)DEALLY THESERVERYOUCHOOSESHOULDRUNTHE
,INUXOPERATINGSYSTEM BUT5NIXSERVERSMAYWORKASWELL#HECK)0USESTHE"ASHSHELL WHICHIS
POPULARONTHE,INUXPLATFORMBUTALSOAVAILABLEONMOSTVERSIONSOF5NIX4HE/3COMMANDSREQUIRED
BY#HECK)0INCLUDEW^bc _X]V ]c_SPcT ca Rdc bTS fR VaT_ ANDWTPS"EAWARETHATEVENIFTHESE
COMMANDSAREAVAILABLEONYOUR5NIXSERVER THEYMAYPRODUCEINCOMPATIBLEOUTPUTANDCAUSEFALSE
FAILURESINTHEOUTPUT4HERWTRZX_bWSCRIPTANDTHESQ\SPcPARAMETERFILEARECREATEDIN,INUX5NIX
FORMAT SOWHENYOUUPLOADTHEMFROMYOURLAPTOP BESURETOTRANSFERTHEMINBINARYMODE)FYOUWANT
TOBESURE YOUCANUSETHES^b!d]XgCOMMANDAFTERUPLOADINGTHEMTOENSURETHATTHEFORMATISCORRECT
BEFOREEXECUTINGTHESCRIPT5PLOADTHERWTRZX_bWANDSQ\SPcFILESTOASERVERONYOURNETWORKANDRUN
THEFOLLOWINGCOMMANDASTHEROOTUSER
RWTRZX_bW\_aTNP__[hR^]UXV

#HECK)0WILLPRINTITSPROGRESSOUTTOTHESCREENASWELLASBUILDASQ\^dcREPORTFILE4HEFOLLOWINGLISTING
SHOWSSAMPLEOUTPUTFROMTHE#HECK)0SCRIPT

Ad]]X]VX]\^ST_aTNP__[hR^]UXV
DbX]V]P\TbTaeTa (! %'  $U^d]SX]SQ\SPcU^aP[[3=B[^^Zd_b
?a^RTbbX]VbTRcX^]
?a^RTbbX]VbTRcX^]
?a^RTbbX]VbTRcX^]3><08=


#(!04%2 #/.&)'52).'%8!$!4!

^daR^\_P]hR^\
q
?a^RTbbX]VbTRcX^]60C4F0H
6>>3) "#(% _X]VbbdRRTbbUd[[h
6>>3) "#(& _X]VbbdRRTbbUd[[h
6>>3) "#(& _X]VbbdRRTbbUd[[h
6>>3) "#(' _X]VbbdRRTbbUd[[h

?a^RTbbX]VbTRcX^]B20=
6>>3)TgPbRP]^daR^\_P]hR^\aTb^[eTbc^"8?PSSaTbbTb
6>>3)TgPbRP]^daR^\_P]hR^\U^afPaSaTb^[eTbc^ "#(&"%
6>>3) "#(&"%aTeTabTaTb^[eTbc^Tg bRP]^daR^\_P]hR^\
6>>3) "#(&"%S^Tb]^c_X]V
6>>3)TgPbRP]h^da^daR^\_P]hR^\U^afPaSaTb^[eTbc^ "#(&"&
6>>3) "#(&"&aTeTabTaTb^[eTbc^Tg bRP]^daR^\_P]hR^\
6>>3) "#(&"&S^Tb]^c_X]V
6>>3)TgPbRP]^daR^\_P]hR^\U^afPaSaTb^[eTbc^ "#(&"'
6>>3) "#(&"'aTeTabTaTb^[eTbc^Tg bRP]^daR^\_P]hR^\
6>>3) "#(&"'S^Tb]^c_X]V
q
?a^RTbbX]VbTRcX^]2><?DC4
6>>3)TgPSQ ^daR^\_P]hR^\U^afPaSaTb^[eTbc^ "#(%!
6>>3) "#(%!aTeTabTaTb^[eTbc^TgPSQ ^daR^\_P]hR^\
6>>3) "#(%!S^Tb]^c_X]V
6>>3)TgPSQ!^daR^\_P]hR^\U^afPaSaTb^[eTbc^ "#(%! 
6>>3) "#(%! aTeTabTaTb^[eTbc^TgPSQ!^daR^\_P]hR^\
6>>3) "#(%! S^Tb]^c_X]V
q
?a^RTbbX]VbTRcX^]24;;
6>>3)TgPRT[ ^daR^\_P]hR^\U^afPaSaTb^[eTbc^ "#(%!'
6>>3) "#(%!'aTeTabTaTb^[eTbc^TgPRT[ ^daR^\_P]hR^\
6>>3) "#(%!'S^Tb]^c_X]V
6>>3)TgPRT[!^daR^\_P]hR^\U^afPaSaTb^[eTbc^ "#(%!(
6>>3) "#(%!(aTeTabTaTb^[eTbc^TgPRT[!^daR^\_P]hR^\
6>>3) "#(%!(S^Tb]^c_X]V
q
?a^RTbbX]VbTRcX^]BF8C27
q
?a^RTbbX]VbTRcX^]E8?
q
?a^RTbbX]VbTRcX^]=4C"
q
?a^RTbbX]VbTRcX^]B<C?

4HEOUTPUTREPORTGENERATEDINTHESQ\^dcFILECONTAINSTHESAMEINFORMATIONASWESEEINTHE
DISPLAY)FANYVALIDATIONERRORSOCCUR THEYAREPREFIXEDWITH%22/2 ANDAMESSAGEDESCRIBINGTHE
FAILUREINDICATESTHEPROBLEMENCOUNTERED ANDWHATTHEEXPECTEDRESULTSSHOULDBE&OREXAMPLE


#(!04%2 #/.&)'52).'%8!$!4!

?a^RTbbX]VbTRcX^]B20=
6>>3)TgPbRP]^daR^\_P]hR^\aTb^[eTbc^"8?PSSaTbbTb
4AA>A)TgPbRP]^daR^\_P]hR^\U^afPaSaTb^[eTbX]R^aaTRc[hc^ ##&&#" '! ##&&#" ' 
##&&#" 'Tg_TRcTS ##&&#"'&
q
?a^RTbbX]VbTRcX^]2><?DC4
6>>3)TgPSQ ^daR^\_P]hR^\U^afPaSaTb^[eTbc^ '!" 
6>>3) '!" aTeTabTaTb^[eTbc^TgPSQ ^daR^\_P]hR^\
4AA>A) '!" _X]Vb

4HEOUTPUTFROM#HECK)0MUSTCONTAINNOERRORS)FYOUSEEANYERRORSINTHEOUTPUT THEYMUSTBE
CORRECTEDBEFORERUNNING/NE#OMMAND#HECKTHESQ\SPcFILEANDMAKESUREYOUDIDNTENTERAN)0
ADDRESSINCORRECTLY ORMISTYPEAHOSTNAMEBEFOREOPENINGADISCUSSIONWITHYOURNETWORK
ADMINISTRATOR3OMETIMESASIMPLECORRECTIONTOADATAENTRYFIELDONTHE$"-#ONFIGURATORISALLTHATIS
NEEDED)FEVERYTHINGLOOKSINORDERFROMYOURSIDE THENSENDTHESQ\^dcFILETOYOURNETWORK
ADMINISTRATORFORREMEDIATION

3TEP&IRSTBOOT
7HENTHE/RACLEHARDWAREENGINEERSCOMPLETETHEIRINSTALLATION YOUAREREADYTOBOOTUPTHECOMPUTE
NODESANDSTORAGECELLSFORTHEFIRSTTIME7HENYOUAREREADYTOBEGINCONFIGURING%XADATA OPENUPTHE
INTERNAL+6-ANDPOWERUPONECOMPUTENODEORSTORAGECELLATATIME)TSNOTIMPORTANTWHICHORDER
YOUFOLLOW4HE&IRSTBOOTPROCESSISNOTDOCUMENTEDINTHE/RACLEMANUALS SOWELLTAKEAMINUTETOTALK
THROUGHTHEBOOTPROCESSANDWHATHAPPENSTHEFIRSTTIMEYOUBOOTTHESERVERSANDSTORAGECELLS
%VERYTIMEASERVERBOOTSUP THETcRX]XcS_aTRT[SCRIPTISCALLEDATRUNLEVEL4HISSCRIPTCALLS
THE^_c^aPR[TRT[[^bRT[[5XabcQ^^cbW&IRSTBOOT SCRIPT&IRSTBOOTDETERMINESWHETHERORNOTTHE
NETWORKSETTINGSHAVEBEENCONFIGURED4HISISUNDOCUMENTED BUTITAPPEARSTHATITISTRIGGEREDBYTHE
EXISTENCEOFTHE^_c^aPR[TRT[[^bRT[[R^]UFILE4HISFILEISCREATEDANDMAINTAINEDBYTHE
^_c^aPR[TRT[[^bX_R^]U_[bRaX_c)0#ONF ANDCONTAINSALLTHEINFORMATIONABOUTYOURNETWORK
CONFIGURATION)FTHEFILEEXISTS ITISASSUMEDTHATTHESYSTEMISALREADYCONFIGUREDANDTHEBOOTCYCLE
CONTINUES"UTIFTHEFILEISNOTFOUND &IRSTBOOTCALLS)0#ONFANDYOUARELEAD INTERACTIVELY THROUGHTHE
NETWORKCONFIGURATIONPROCESS)0#ONFISUSEDTOSETTHEFOLLOWINGNETWORKSETTINGSFORYOURCOMPUTE
NODESANDSTORAGECELLS
v .AME3ERVER$.3
v 4IME3ERVER.40
v #OUNTRY#ODE
v ,OCAL4IME:ONE
v (OSTNAME
v )0ADDRESS NETMASK GATEWAY type ANDHOSTNAMEFORALLNETWORKDEVICES4HE
typeISREQUIREDANDUSEDFORINTERNALDOCUMENTATIONINTHERT[[R^]UFILE6ALID
TYPESARE0RIVATE -ANAGEMENT 3#!. AND/THER
&OREXAMPLE THEFOLLOWINGLISTINGSHOWSTHEPROMPTSFORCONFIGURINGTHEMANAGEMENTNETWORK



#(!04%2 #/.&)'52).'%8!$!4!

BT[TRcX]cTaUPRT]P\Tc^R^]UXVdaT^a_aTbb4]cTac^R^]cX]dT)TcW
BT[TRcTSX]cTaUPRTTcW
8?PSSaTbb^a]^]T) (! %''! &
=Tc\PbZ)!$$!$$!$!
6PcTfPh8?PSSaTbb^a]^]T^a]^]T) (! %'  

BT[TRc]Tcf^aZch_TU^aX]cTaUPRTUa^\cWT[XbcQT[^f
)<P]PVT\T]c
!)B20=
")>cWTa
=Tcf^aZch_T) 
5d[[h`dP[XUXTSW^bc]P\T^a]^]T)TgPSQ"^daR^\_P]hR^\
7HENYOUHAVEFINISHEDENTERINGALLYOURNETWORKSETTINGS )0#ONFGENERATESANEWRT[[R^]U
FILEANDREBOOTSTHESYSTEM/NCETHESYSTEMHASFINISHEDREBOOTING ITISREADYFORTHE/3
CONFIGURATIONANDSOFTWAREINSTALLATIONPERFORMEDBY/NE#OMMAND

ApplyConfig
&ORQUARTERRACKANDHALFRACKCONFIGURATIONS ITSAFAIRLYTRIVIALTASKTOENTERALLYOURNETWORK
SETTINGSUSINGTHE&IRSTBOOTPROCESS&ORFULLRACKCONFIGURATIONS HOWEVER ITCANBEATIME
CONSUMINGANDERROR PRONEPROCESS4HEP__[hR^]UXVbWSCRIPT!PPLY#ONFIG AUTOMATESTHE
PROCESS!PPLY#ONFIGISFOUNDINTHE^_c^aPR[TBd__^acC^^[bUXabcR^]UDIRECTORYOFALL
COMPUTENODESANDSTORAGECELLS)TISBASICALLYAWRAPPERSCRIPTFORTHE)0#ONFSCRIPTWE
DISCUSSEDEARLIER FOR&IRSTBOOT )NSTEP WEDISCUSSEDTHEVARIOUSPARAMETERAND
DEPLOYMENTFILESGENERATEDBYTHE$"-#ONFIGURATOR!MONGTHESEFILESWASTHE_aTR^]URbe
PARAMETERFILE SEEALSO_aTR^]U !  Rbe _aTR^]U ! !!Rbe AND_aTR^]U !
! Rbe 4HE_aTR^]URbeFILECONTAINSALLTHENETWORKSETTINGS)0#ONFNEEDSTOCREATEA
RT[[R^]UFILEFOREACHCOMPUTENODEANDSTORAGECELL
)0#ONFMAYBERUNINTERACTIVELYASWESAWINTHE&IRSTBOOTEXAMPLE ALLOWINGYOUTOENTERYOUR
NETWORKSETTINGSMANUALLY)0#ONFMAYALSOBERUNNON INTERACTIVELY TAKINGITSINPUTFROMTHE
_aTR^]URbePARAMETERFILE7HENRUNINTHISMODE )0#ONFCREATESAFULLSETOFRT[[R^]UFILES ONEFOR
EACHCOMPUTENODEANDSTORAGECELL&OREXAMPLE THEFOLLOWINGCOMMANDCREATESALLTHEREQUIRED
RT[[R^]UFILESFORAN%XADATAHALFRACKCONFIGURATION
Ja^^c/TgPSQ a^^cLRS^_c^aPR[TBd__^acC^^[bUXabcR^]U
Ja^^c/TgPSQ UXabcR^]UL^_c^aPR[TRT[[^bX_R^]UK
~_aTR^]U^_c^aPR[TBd__^acC^^[b^]TR^\\P]Sjcompany_namel_aTR^]URbeK
VT]TaPcTP[[K
VT]TaPcT^aSTa^_c^aPR[TBd__^acC^^[bUXabcR^]UWP[U
4HATLASTPARAMETERWP[U ISAREFERENCETOAPARAMETERFILECONTAININGTHEFACTORYDEFAULTPRIVATE)0
ADDRESSFORALLCOMPUTENODESANDSTORAGECELLSINAN%XADATAHALFRACKCONFIGURATION4HEFILESGENERATED
BY)0#ONFARESAVEDINTHEc\_X_R^]UDIRECTORYASFOLLOWS
Ja^^c/TgPSQ UXabcR^]UL[b c\_X_R^]U
RT[[R^]UTgPRT[ ^daR^\_P]hR^\
RT[[R^]UTgPRT[!^daR^\_P]hR^\
RT[[R^]UTgPRT["^daR^\_P]hR^\
RT[[R^]UTgPRT[#^daR^\_P]hR^\
RT[[R^]UTgPRT[$^daR^\_P]hR^\


#(!04%2 #/.&)'52).'%8!$!4!

RT[[R^]UTgPRT[%^daR^\_P]hR^\
RT[[R^]UTgPRT[&^daR^\_P]hR^\
RT[[R^]UTgPSQ ^daR^\_P]hR^\
RT[[R^]UTgPSQ!^daR^\_P]hR^\
RT[[R^]UTgPSQ"^daR^\_P]hR^\
RT[[R^]UTgPSQ#^daR^\_P]hR^\
!PPLY#ONFIGCALLS)0#ONFTOGENERATETHESEFILESANDINSTALLSTHEMAS^_c^aPR[TRT[[^bRT[[R^]U
INEACHCOMPUTENODEANDSTORAGECELL4ORUN!PPLY#ONFIG LOGINASROOTTOTHEFIRSTCOMPUTENODEIN
YOURSYSTEMANDRUNP__[hR^]UXVbWASFOLLOWS

Ja^^c/TgPSQ a^^cLRS^_c^aPR[TBd__^acC^^[bUXabcR^]U
Ja^^c/TgPSQ UXabcR^]ULP__[hR^]UXVbWWP[UK
^_c^aPR[TBd__^acC^^[b^]TR^\\P]S_aTR^]URbe
/NCETHERT[[R^]UFILESHAVEBEENINSTALLEDONALLSERVERS !PPLY#ONFIGUSESTHESR[XCOMMANDTO
RUNTHER[TP]d_N]NaTQ^^cbWSCRIPTONALLSERVERS!STHENAMEIMPLIES THISSCRIPTPERFORMSCLEANUP
TASKSANDREBOOTSTHESERVERS/NCETHESERVERSCOMPLETETHEBOOTCYCLE %XADATASHOULDBEREADYTOBE
CONFIGUREDUSING/NE#OMMAND
7HETHERYOUCHOOSETOCONFIGURETHE%XADATANETWORKCOMPONENTSMANUALLY USING&IRSTBOOT ORBY
RUNNING!PPLY#ONFIG YOUSHOULDVERIFYTHENETWORKCONFIGURATIONONCEAGAINBEFOREPROCEEDINGWITH
THEINSTALLATIONPROCESS2UNTHE#HECK)0POST?APPLYCONFIGPROCESSTOVERIFYYOURCONFIGURATIONAS
FOLLOWS
RS^_c^aPR[TBd__^acC^^[b^]TR^\\P]S
Ja^^c/TgPSQ"^]TR^\\P]SLRWTRZX_bW\_^bcNP__[hR^]UXV

4gPSPcP3PcPQPbT<PRWX]T=Tcf^aZETaXUXRPcX^]eTabX^] (
=Tcf^aZeTaXUXRPcX^]\^ST_^bcNP__[hR^]UXVbcPacX]V
BPeX]V^dc_dcUX[TUa^\_aTeX^dbad]PbSQ\^dcN'"'$
DbX]V]P\TbTaeTa (! %'  (U^d]SX]SQ\SPcU^aP[[3=B[^^Zd_b
?a^RTbbX]VbTRcX^]3><08=)BD224BB
?a^RTbbX]VbTRcX^]=0<4)BD224BB
?a^RTbbX]VbTRcX^]=C?)BD224BB
?a^RTbbX]VbTRcX^]60C4F0H)BD224BB
?a^RTbbX]VbTRcX^]B20=)BD224BB
?a^RTbbX]VbTRcX^]2><?DC4)BD224BB
?a^RTbbX]VbTRcX^]24;;)BD224BB
?a^RTbbX]VbTRcX^]8;><)BD224BB
?a^RTbbX]VbTRcX^]BF8C27)BD224BB
?a^RTbbX]VbTRcX^]E8?)BD224BB
?a^RTbbX]VbTRcX^]B<C?)B<C?4\PX[BTaeTaBTccX]Vb\PX[^daR^\_P]hR^\!$)BD224BB
!GAIN THEOUTPUTFROMALLTESTSMUSTBEBD224BBBEFORECONTINUINGWITHTHEINSTALLATION)FERRORS
OCCUR YOUCANREVIEWTHESQ\^dcFILEFORTHEREASONOFTHEFAILURE

3TEP3TAGINGTHE)NSTALLATION-EDIA
4HELASTSTEPBEFORERUNNING/NE#OMMANDISTOMAKESUREYOUHAVETHENECESSARY/RACLEINSTALLMEDIA
PROPERLYSTAGEDONTHEFIRSTCOMPUTENODE/NE#OMMANDWILLHANDLEUNZIPPINGTHEINSTALLATIONFILESTO
AWORKINGDIRECTORYANDPERFORMTHEENTIREINSTALLATIONAUTOMATICALLY-Y/RACLE3UPPORT-/3 NOTE
CONTAINSACOMPLETELISTOF/RACLESOFTWAREANDPATCHESSUPPORTEDFORTHE%XADATA$ATABASE


#(!04%2 #/.&)'52).'%8!$!4!

-ACHINE(OWEVER THEVERSIONOF/NE#OMMANDTHATCAMEWITHYOUR%XADATASYSTEMONLYSUPPORTS
AUTOMATICINSTALLATIONOFCERTAINSOFTWAREVERSIONSANDPATCHES
4HEExadata Owner’s GuideTHATCAMEWITHYOURSYSTEMSPECIFIESTHE2$"-3AND'RID
)NFRASTRUCTUREINSTALLATIONMEDIA/NE#OMMANDNEEDSFORTHEINSTALLATION4HEPATCHESANDINSTALLMEDIA
REQUIREDBY/NE#OMMANDTENDSTOCHANGEASNEWVERSIONSOF/NE#OMMANDARERELEASED#URRENTLY
THEFOLLOWINGMEDIAISREQUIREDBY/NE#OMMAND
v /RACLE2$"-3'RID)NFRASTRUCTUREPATCH
v _ ('' %N !!N;X]dgg'%%#N ^U&iX_
v _ ('' %N !!N;X]dgg'%%#N!^U&iX_
v _ ('' %N !!N;X]dgg'%%#N"^U&iX_
4HE2EADMEFILEINCLUDEDWITHINTHE^]TR^\\P]SDIRECTORYSTATESWHICHBUNDLEPATCHESARE
SUPPORTEDBYTHEVERSIONOF/NE#OMMANDINSTALLEDONYOURSYSTEM&OREXAMPLE WERECENTLYINSTALLEDA
QUARTERRACK8 SYSTEMINOURLAB4HEFOLLOWINGLISTINGSHOWSTHEPATCHESSUPPORTEDBYITINTHE
2EADMEFILE
TVaT_?0C274BkQd]S[T_PcRW^_c^aPR[TBd__^acC^^[b^]TR^\\P]SA403<4
?0C274B0__[XTSfXcWcWXbeTabX^]
1dV !$!#'& !!SQ\PRWX]TQd]S[T_PcRW 

#HECKING-/3NOTE WESEETHAT"UNDLE0ATCHFORISPATCH
v "UNDLE0ATCHPATCH
v P??,INUX X ZIP
4HEINSTALLMEDIAZIPFILES LISTEDABOVEMAYALREADYBEINSTALLEDONTHEFIRSTCOMPUTENODEOFYOUR
%XADATA$ATABASE-ACHINE3OITSWORTHALOOK ANDITMAYSAVEYOUSOMETIMETOCHECKBEFORE
DOWNLOADINGTHEINSTALLATIONFILES)FNECESSARY DOWNLOADANDSTAGETHEINSTALLATIONFILESINTHE
^_c^aPR[TBd__^acC^^[b^]TR^\\P]SDIRECTORYONTHEFIRSTCOMPUTENODE

3TEP2UNNING/NE#OMMAND
!LTHOUGH%XADATACANBECONFIGUREDMANUALLY /NE#OMMANDISTHEPREFERREDMETHOD/NE#OMMANDIS
AN/RACLE PROVIDEDUTILITYCONSISTINGOFSEVERALCONFIGURATIONSTEPS ASOFTHISWRITING /NE#OMMAND
PROVIDESTWOVERYIMPORTANTBENEFITSTO%XADATACUSTOMERSAND/RACLESSUPPORTSTAFF&IRST ITCREATESA
LIMITEDNUMBEROFSTANDARDIZEDANDWELLKNOWN CONFIGURATIONS WHICHMAKESTHEPLATFORMMUCH
EASIERTOSUPPORT!FTERALL WHOWANTSTOHEARhOH )VENEVERSEENITCONFIGUREDTHATWAYBEFOREvWHEN
WEFINALLYGETASUPPORTTECHONTHEPHONE4HISISONEOF%XADATASKEYSTRENGTHS3ECOND ITPROVIDESA
SIMPLIFIEDANDSTRUCTUREDMECHANISMFORCONFIGURING%XADATAFROMSTARTTOFINISH4HISMEANSTHATWITH
VERYLITTLEKNOWLEDGEOF%XADATAINTERNALS ANEXPERIENCEDTECHNICIANCANINSTALLANDCONFIGURE%XADATA
INAMATTEROFHOURS)TSUNCLEARWHETHER/RACLEORIGINALLYINTENDEDTOPROVIDESUPPORTFOR
/NE#OMMANDEXTERNALLY BUTABOUTTHESAMETIMETHE8BEGANSHIPPING /RACLEADDEDITTOTHE
Exadata Owner’s Guide4HEINSTRUCTIONSINTHE/WNERS'UIDEARENOTVERYEXTENSIVE BUTTHE2EADME
INCLUDEDWITHTHEUTILITYDOESAFAIRLYGOODJOBOFEXPLAININGHOWTORUNIT ANDWHATTOWATCHOUTFOR
/NE#OMMANDCOMESPREINSTALLEDINTHE^_c^aPR[TBd__^acC^^[b^]TR^\\P]SDIRECTORYONYOUR
COMPUTENODES)FYOUNEEDACCESSTOTHELATESTVERSIONOF/NE#OMMAND ITISAVAILABLEFORDOWNLOAD
FROM/RACLES4ECHNOLOGY.ETWORK4HEDOWNLOADLINKISPASSWORD PROTECTEDHOWEVER ANDYOUWILL
NEEDTOOPENASERVICEREQUESTWITH/RACLE3UPPORTTOREQUESTTEMPORARYACCESSTODOWNLOADIT


#(!04%2 #/.&)'52).'%8!$!4!

/NE#OMMANDISAMULTIPLE STEPPROCESSTHATISRUNFROMASHELLSCRIPTCALLEDST_[^h !bW4HESE


STEPSCANBERUNEND TO ENDORONEATATIME4ABLE SHOWSEACHSTEPINTHE/NE#OMMANDPROCESS
ALONGWITHABRIEFDESCRIPTIONOFWHATTHESTEPDOES

Table 8-7. OneCommand Steps

File Name Description


3TEP 6ALIDATESTHECOMPUTENODEFROMWHICHYOUARERUNNINGTHEINSTALLATION)TVERIFIES
THENETWORKCONFIGURATIONOFTHESERVER VERIFIESANDUNZIPSTHEINSTALLATIONMEDIA
VERIFIESTHERT[[R^]UFILE ANDVERIFIESTHATALLPARAMETERANDDEPLOYMENTFILESCAN
BEFOUNDINTHE^]TR^\\P]SDIRECTORY

3TEP #REATES33(KEYSFORTHEROOTACCOUNTONALLCOMPUTENODESANDSTORAGECELLSFOR
TRUSTED33(AUTHENTICATION

3TEP 6ALIDATESTHERT[[R^]UFILEONALLCOMPUTENODESANDSTORAGESERVERSANDVERIFIES
THATALLSTORAGECELLSAREINSTALLEDWITHTHESAMEVERSIONOFCELLSOFTWARE

3TEP 5NZIPSTHE$"-3 'RID)NFRASTRUCTURE ANDBUNDLEPATCHFILES

3TEP 5PDATESTHETcRW^bcbFILES

3TEP #REATESTHERT[[X_^aPFILEONTHECOMPUTENODES ANDTHERT[[X]Xc^aPFILEONTHE


STORAGECELLS

3TEP 6ALIDATESTHEHARDWAREONALLSERVERSANDCELLSUSINGTHE2WTRZ7F]5F?a^UX[T
COMMAND

3TEP 6ERIFIESTHE)NFINI"ANDNETWORK

3TEP 6ALIDATESTHESTORAGECELLSBYRUNNINGVARIOUS#ELL#,)COMMANDS&OREXAMPLE
RT[[R[XT[Xbc_WhbXRP[SXbZ

3TEP #HECKS2$3USINGTHEdbaQX]aSb_X]VCOMMAND

3TEP #HECKCELLDISKSUSINGTHE#ELL#,)RP[XQaPcTCOMMAND4HISCOMMANDTESTSTHE
PERFORMANCECHARACTERISTICSOFYOURCELLDISKS

3TEP 6ALIDATESTHEDATE TIME AND.40SYNCHRONIZATIONACROSSALLCOMPUTEDNODESAND


STORAGECELLS4HE.40SERVICEISSTARTEDIFNECESSARY

3TEP 5PDATESTHEFOLLOWINGFILESONTHEDATABASESERVERS ADDINGSETTINGSTYPICALFORAN


/RACLEDATABASESERVERENVIRONMENT
TcRbTRdaXch[X\XcbR^]U
TcR_a^UX[T


#(!04%2 #/.&)'52).'%8!$!4!

File Name Description


3TEP #REATESTHE/RACLE,INUXUSERANDGROUPACCOUNTS&OREXAMPLE ^aPR[T ^X]bcP[[
SQP ANDSOON

3TEP #ONFIGURES33(EQUIVALENCYFORTHEUSERACCOUNTSCREATEDIN3TEP

3TEP #REATESTHE>A0N2ABN7><4AND>A02;4N7><4DIRECTORIESFORTHE'RID)NFRASTRUCTURE
ANDDATABASESOFTWARE

3TEP #REATESALLCELLDISKS GRIDDISKS ANDTHEFLASHCACHEIFENABLEDONTHE$"-


#ONFIGURATORSPREADSHEET 

3TEP 0ERFORMSASILENTINSTALLATIONOF'RID)NFRASTRUCTURE

3TEP 2UNSTHEROOTSCRIPTSa^^cbW FORPOST INSTALLATIONOFTHE'RID)NFRASTRUCTURE


7HENTHISSTEPISCOMPLETE YOUR/#2AND6OTINGDISKSWILLBECREATEDANDTHE
CLUSTERSHOULDBERUNNING

3TEP 0ERFORMSASILENTINSTALLATIONOFTHEDATABASESOFTWARE

3TEP #REATESTHEDEFAULT/RACLE,ISTENER

3TEP 2UNSPb\RPANDCREATESYOUR!3-DISKGROUPS&OREXAMPLE30C0 ANDA42>

3TEP 3HUTSDOWNTHECLUSTERANDOPENSPERMISSIONSONTHE>A0N2ABN7><4USINGTHE
a^^cRab_[~d][^RZ command.

3TEP )NSTALLS"UNDLE0ATCHPATCH FORTHE'RID)NFRASTRUCTUREANDDATABASE


SOFTWARE ANDRELINKSTHE/RACLESOFTWARESTACK

3TEP #ONFIGURESTHE2$3PROTOCOLFORTHECLUSTER)NTERCONNECT

3TEP ,OCKSDOWNTHEPERMISSIONSFORTHE'RID)NFRASTRUCTURE>A0N2ABN7><4 DIRECTORIES


ANDRESTARTSTHECLUSTERSTACK

3TEP #ONFIGURESCELLALERTNOTIFICATIONONTHESTORAGECELLS!TTHEENDOFTHISSTEPTHE
#ELL#,)COMMANDP[cTaRT[[eP[XSPcT\PX[GENERATESTESTALERTMESSAGES)FYOU
CONFIGUREDEMAILALERTS THENYOUSHOULDGETATESTMESSAGEFROMEACHCELL

3TEP 2UNSSQRPINSILENTMODEANDCREATESYOURSTARTERDATABASE

3TEP 3ETSUP%NTERPRISE-ANAGER'RID#ONTROL

3TEP !PPLIESSECURITYFIXESFORINTHESTARTERDATABASE&OREXAMPLE ITDROPSUNSECURED


USERACCOUNTSSUCHASGB=D;; <6<CNE84F AND38?4HISSTEPWILLSHUTDOWNAND
RESTARTTHECLUSTER


#(!04%2 #/.&)'52).'%8!$!4!

File Name Description


3TEP 3ECURESTHE%XADATAENVIRONMENT4HISSTEPISOPTIONAL)TREMOVESTHE33(
AUTHENTICATIONKEYSFORTHEROOTUSERACCOUNT)FYOURUNTHISSTEP YOUWILLNOTBE
ABLETORUNREMOTECOMMANDSONTHECOMPUTENODESANDSTORAGECELLSFROMTHE
ROOTACCOUNTWITHOUTENTERINGTHEPASSWORD

4HEMAINSCRIPTUSEDTORUN/NE#OMMANDISST_[^h !bW$EPLOY 4HEINSTALLATIONSTEPS
MAYBELISTEDBYRUNNING$EPLOYASFOLLOWS

Ja^^c/TgPSQ ^]TR^\\P]SLST_[^h !bWX~[
CWTbcT_bX]^aSTaPaT
BcT_,EP[XSPcTCWXb=^STBTcd_
BcT_ ,BTcd_BB75^aA^^c
BcT_!,EP[XSPcT0[[=^STb
BcT_",D]iX_5X[Tb
BcT_#,D_SPcT4cR7^bcb
BcT_$,2aTPcT2T[[X_]Xc^aP
BcT_%,EP[XSPcT7F
BcT_&,EP[XSPcT81
BcT_',EP[XSPcT2T[[
BcT_(,?X]VASb2WTRZ
BcT_ ,Ad]2P[XQaPcT
BcT_ ,EP[XSPcTCX\T3PcT
BcT_ !,D_SPcT2^]UXV
BcT_ ",2aTPcTDbTa0RR^d]cb
BcT_ #,BTcd_BB75^aDbTab
BcT_ $,2aTPcT>aP7^\Tb
BcT_ %,2aTPcT6aXS3XbZb
BcT_ &,8]bcP[[6aXSB^UcfPaT
BcT_ ',Ad]6aXSA^^cBRaX_cb
BcT_ (,8]bcP[[ !31B^UcfPaT
BcT_!,2aTPcT !;XbcT]Ta
BcT_! ,Ad]0b\2P
BcT_!!,D][^RZ687^\T
BcT_!",0__[h1?
BcT_!#,AT[X]ZA3B
BcT_!$,;^RZD_68
BcT_!%,BTcd_2T[[4\PX[0[Tacb
BcT_!&,Ad]3QRP
BcT_!',BTcd_4<3Q2^]ca^[
BcT_!(,0__[hBTRdaXch5XgTb
BcT_",ATbTRdaT<PRWX]T


#(!04%2 #/.&)'52).'%8!$!4!

 .OTE/NE#OMMANDISCONSTANTLYCHANGINGTOIMPROVETHEINSTALLATIONPROCESSANDTOSUPPORTADDITIONALBUNDLE
PATCHES4HENUMBEROFSTEPSANDWHATTHEYDOISVERYLIKELYTOCHANGEWITHEACHVERSIONOF%XADATA3OBESURE
TOREVIEWTHE2%!$-%FILEFORINSTRUCTIONSONHOWTORUN/NE#OMMANDONYOURSYSTEMBEFOREYOUBEGIN

4HEREARENUMBEROFWAYS$EPLOYMAYBEUSED&OREXAMPLE THEFOLLOWINGCOMMAND LINE


OPTIONSPROCESSALLSTEPSOFTHEINSTALLATIONPROCESS ONLYSTOPPINGIFASTEPFAILES
Ja^^c/TgPSQ ^]TR^\\P]SLST_[^h !bWXa"
%ACHSTEPMUSTCOMPLETESUCCESSFULLYBEFOREYOUCANPROCEEDTOTHENEXT/RACLERECOMMENDS
RUNNINGTHESTEPSONEATATIME REVIEWINGTHEOUTPUTATTHEENDOFEACHBEFOREPROCEEDINGONTOTHE
NEXT$EPLOYPROVIDESTHISCAPABILITYWITHTHEbCOMMANDLINEOPTION&OREXAMPLE THEINSTALLATION
PROCEDUREWOULDLOOKSOMETHINGLIKETHEFOLLOWING
Ja^^c/TgPSQ ^]TR^\\P]SLST_[^h !bWXb
#HECKOUTPUTFORERRORSx
Ja^^c/TgPSQ ^]TR^\\P]SLST_[^h !bWXb 
#HECKOUTPUTFORERRORSx
Ja^^c/TgPSQ ^]TR^\\P]SLST_[^h !bWXb!
#HECKOUTPUTFORERRORSx
Ja^^c/TgPSQ ^]TR^\\P]SLST_[^h !bWXb"
ANDSOONx

$EPLOYTAKESASINPUTTHEPARAMETERSFROMTHEFILESYOUGENERATEDEARLIERUSINGTHE$"-
#ONFIGURATOR,OGFILESARECREATEDEACHTIME$EPLOYISCALLEDTOEXECUTEACONFIGURATIONSTEP ANDFOR
SOMESTEPS ITDYNAMICALLYGENERATESANDEXECUTESASHELLSCRIPTTHATCARRIESOUTALLTHETASKSREQUIRED
2EVIEWINGTHESEFILESCANBEVERYUSEFULINDETERMININGWHYASTEPFAILED4HELOGFILESANDDYNAMICALLY
GENERATEDSHELLSCRIPTSARESTOREDINTHE^]TR^\\P]Sc\_DIRECTORY
4HEOUTPUTGENERATEDBYTHEVARIOUSINSTALLATIONSTEPSVARIESQUITEABIT"UTINGENERAL $EPLOY
DISPLAYSSOMEHEADERINFORMATIONTELLINGYOUWHATSTEPITISRUNNING WHERETOFINDTHELOGFILE AND
WHETHERITCOMPLETEDSUCCESSFULLY&OREXAMPLE THEFOLLOWINGOUTPUTWASGENERATEDBYRUNNINGSTEP
ONTHEQUARTERRACKSYSTEMINOURLAB
BRaX_cbcPacTSUX[TXb^_c^aPR[TBd__^acC^^[b^]TR^\\P]Sc\_BC4? TgPSQ 
! $ " '# [^V
,,,,,,,,,,, BTcd_BB75^aA^^c1TVX],,,,,,,,,,,,,,,
BTccX]Vd_bbWU^aa^^c^]0;;]^STb
2WTRZX]V]^STbX]^_c^aPR[TBd__^acC^^[b^]TR^\\P]SP[[NVa^d_

8=5>)FTaTad]]X]V^_c^aPR[TBd__^acC^^[b^]TR^\\P]SbTcbbW;X]dgbWbRHW
^_c^aPR[TBd__^acC^^[b^]TR^\\P]SP[[NVa^d__fT[R^\T ]=g
bTcbbW;X]dgbW3^]T
BD224BB)Ad]]X]VBTcBB7R^\_[TcTSbdRRTbbUd[[hATcda]BcPcdb)BcT_ 
TgPSQ )5aX<Ph " )()$23C! 
TgPSQ!)5aX<Ph " )()$23C! 


#(!04%2 #/.&)'52).'%8!$!4!

TgPSQ")5aX<Ph " )()$23C! 


TgPSQ#)5aX<Ph " )()$23C! 
TgPRT[ )5aX<Ph " )()$23C! 
TgPRT[!)5aX<Ph " )()$23C! 
TgPRT[")5aX<Ph " )()$23C! 
TgPRT[#)5aX<Ph " )()$23C! 
TgPRT[$)5aX<Ph " )()$23C! 
TgPRT[%)5aX<Ph " )()$23C! 
TgPRT[&)5aX<Ph " )()$23C! 
BD224BB)Ad]]X]VSR[XR^\_[TcTSbdRRTbbUd[[hATcda]BcPcdb)BcT_ 
8=5>)2^_hX]VaT`dXaTSUX[Tbc^P[[]^STb_[TPbTfPXc
8=5>)FPXcX]VU^aR^_XTbc^R^\_[TcT

8=5>)3XSBB7bTcd_R^aaTRc[h
CX\Tb_T]cX]bcT_ BTcd_BB75^aA^^c,%(bTR^]Sb
,,,,,,,,,,, BTcd_BB75^aA^^cR^\_[TcTS,,,,,,,,,,,,,,,
Ad]]X]VbX]V[TbcT_PcPcX\T4gXcX]V]^f
4gXcX]V
BRaX_cS^]TUX[TXb^_c^aPR[TBd__^acC^^[b^]TR^\\P]Sc\_BC4? TgPSQ ! $ " '# [^V

Upgrading Exadata
7ITHALLTHECOMPANIESOUTTHEREADOPTINGTHE%XADATAPLATFORM WEEXPECTHARDWAREUPGRADESTOBEAN
INCREASINGLYPOPULARTOPICINTHENEARFUTURE/URFORAYINTOTHE%XADATASPACEBEGANOVERAYEARAGO
WITHAN%XADATA61UARTER2ACKCONFIGURATION!COUPLEOFMONTHSAGOWEUPGRADEDOURSYSTEMTOA
HALFRACK/FCOURSE THE6SARENOLONGERINPRODUCTION SOOURUPGRADECAMEINTHEFORMOFTWO8 
DATABASESERVERS ANDFOURSTORAGECELLS4HECONFIGURATIONOPTIONSWECONSIDEREDWEREASFOLLOWS
v #ONFIGURETHENEW8EQUIPMENTASASEPARATE2!#CLUSTERANDSTORAGEGRID
CREATINGTWOSOMEWHATASYMMETRICQUARTERRACKCONFIGURATIONSWITHINTHESAME
%XADATAENCLOSURE/RACLEREFERSTOTHISASAhSPLITRACKvCONFIGURATION
v !DDTHENEW8EQUIPMENTTOOUREXISTINGQUARTERRACKCLUSTEREFFECTIVELY
UPGRADINGITTOAHALFRACK

#REATINGA.EW2!##LUSTER
4HE$"-#ONFIGURATORDOESNTDIRECTLYSUPPORTUPGRADINGASYSTEMINTHISMANNER BUTWITHAFEW
ADJUSTMENTSITCANBEUSEDTOGENERATEALLTHEFILES/NE#OMMANDNEEDSTOPERFORMTHEINSTALLATION
/NCETHEPARAMETERANDDEPLOYMENTFILESAREUPLOADEDTO%XADATA YOUSHOULDHAVENOPROBLEM
RUNNINGTHROUGHALLOFTHECONFIGURATIONSTEPSWITHOUTIMPACTINGYOUREXISTINGCLUSTER/NECOWORKER
ACTUALLYUSEDTHISPROCESSTOCREATEASEPARATE%XADATACONFIGURATIONONTHENEWEQUIPMENTWHILE
LEAVINGTHEEXISTINGSYSTEMUNTOUCHED
&ORTHEMOSTPART YOUSIMPLYFILLINTHE$"-#ONFIGURATORSPREADSHEETASIFYOUARECREATINGA
TYPICALQUARTERRACKCONFIGURATION4HETRICKYPARTISMAKINGSURETHESEQUENTIALLYASSIGNEDNETWORK)0
ADDRESSESDONTCONFLICTWITHYOURCURRENTSYSTEM4HEREAREAFEWITEMSYOUWILLNEEDTOCONSIDERWHEN
USINGTHE$"-#ONFIGURATORFORTHISTYPEOF%XADATAUPGRADE
Name Prefixes:n)TISNOTREQUIRED BUTYOUMAYWANTTOSETYOUR$ATABASE
-ACHINE.AME $ATABASE3ERVER"ASE.AME AND3TORAGE3ERVERS"ASE.AMES
VALUESTOMATCHYOUREXISTING%XADATACONFIGURATION4HATWAY IFYOUEVER


#(!04%2 #/.&)'52).'%8!$!4!

DECIDETOMERGETHESESERVERSINTOYOUROLDCLUSTER YOUWONTHAVETOMAKE
CHANGESTOTHEHOSTNAMES&OREXAMPLE OURQUARTERRACKCONFIGURATIONHAD
DATABASEHOSTNAMESOFT]ZSQ ANDT]ZSQ!!DDINGTHENEWSERVERSCONTINUED
WITHTHENAMEST]ZSQ" ANDT]ZSQ#,IKEWISE THESTORAGECELLHOSTNAMES
CONTINUEDWITHT]ZRT[#THROUGHT]ZRT[&
Client Access SCAN Name:4HISPROCEDUREWILLBECREATINGANEW2!#CLUSTER
SOYOUWILLNEEDANEW3#!.NAMEFORIT9OUWILLALSONEEDTOSEETHATITANDALL
OFTHEOTHERNEWHOSTNAMESAREPROPERLYREGISTEREDINYOURCOMPANYS$.3
SERVERJUSTASYOUDIDWHENYOUREXISTING%XADATASYSTEMWASINSTALLED 
Country Code / Time Zone:/FCOURSE THESESETTINGSSHOULDMATCHYOUR
EXISTING%XADATASYSTEM
NTP and DNS Servers:4HESESHOULDALSOMATCHYOUREXISTING%XADATA
ENVIRONMENT
Oracle Database Machine Model: 4HISSETTINGDETERMINESHOWMANYCOMPUTE
NODESANDSTORAGECELLSTHE#ONFIGURATORWILLUSEWHENCREATINGHOSTNAMESAND
)0ADDRESSES9OUWILLWANTTOSETTHISTO8 1UARTER2ACK SINCEITISTHE
CLOSESTCHOICETOWHATYOUAREACTUALLYCONFIGURING2EMEMBER THOUGH THAT
UPGRADINGFROMAQUARTERTOHALFRACKADDSFOURSTORAGECELLS NOTTHREE
Oracle Exadata Storage Server Nodes:9OUWILLNEEDTOADJUSTTHISNUMBERTO
REFLECTTHEACTUALNUMBEROFSTORAGECELLSINTHEUPGRADE4HEDEFAULTNUMBEROF
STORAGECELLSINAQUARTERRACKCONFIGURATIONIS"UTSINCEYOUAREUPGRADINGTO
AHALFRACK YOUWILLNEEDTOSETTHISTO
Network IP Addresses:9OUSHOULDCONTINUETOUSETHENETWORKSYOU
CONFIGUREDFORTHE%XADATARACKYOUAREUPGRADING!SYOUENTERTHESTARTING)0
ADDRESSESFORHOSTSINTHE$"-#ONFIGURATOR TAKECARETHATYOUARENOTCREATING
ANYADDRESSCONFLICTSWITHEXISTINGHARDWAREONYOURNETWORK
O/S User & Group Accounts:)TISNOTREQUIRED BUTYOUSHOULDUSETHESAME
USERGROUPNAMESANDUSERGROUP)$SWHENCONFIGURINGYOURNEWCLUSTER4HIS
ISESPECIALLYTRUEIFTHEREISANYCHANCETHESEUSERACCOUNTSWILLEVERINTERACT
BETWEENTHENEWSYSTEMANDTHEOLDSYSTEM/NE#OMMANDWILLNOTESTABLISH
USEREQUIVALENCYBETWEENTHEOLDANDNEWSERVERSFORYOU3OTHATMUSTBE
DONEMANUALLYAFTERTHEUPGRADEISCOMPLETE
7HENYOUAREFINISHEDENTERINGYOURSETTINGS CLICKTHE'ENERATEBUTTONONTHERIGHTSIDEOFTHE
SPREADSHEET4HISCREATESANETWORKTOPOLOGYREPORTBELOWTHEDATAENTRYAREAOFTHESPREADSHEET4HIS
REPORTAREAOFTHESPREADSHEETISAPLACEWHEREYOUCANMANUALLYOVERRIDESOMEOFTHESETTINGSGENERATED
INTHEDATAENTRYAREAOFTHESPREADSHEET9OUWILLNEEDTOSCROLLDOWNANDADJUSTAFEWSETTINGSINTHIS
AREABEFOREYOUAREREADYTOCREATEYOURPARAMETERFILESANDUPLOADTHEMTO%XADATA9OUWILLNOTICETHAT
THETOPOLOGYREPORTSHOWSINCORRECTHOSTNAMESFORTHECOMPUTENODESANDSTORAGECELLS/FCOURSE THIS
ISBECAUSETHE$"-#ONFIGURATORASSUMESTHISISANEWCONFIGURATION NOTANUPGRADE4HEHOSTNAMES
FORTHECOMPUTENODESAREPOSTFIXEDWITHn ANDTHESTORAGECELLSAREPOSTFIXEDWITHn-AKETHE
NECESSARYCHANGESTOTHEHOSTNAMESINTHEREPORT SOTHEYREFLECTCOMPUTENODENAMESOFnAND
STORAGECELLHOSTNAMESOFn/NCEYOUVEMADEALLTHENECESSARYCHANGES CLICKTHE#REATE#ONFIG
&ILESBUTTONTOGENERATEYOURPARAMETERANDDEPLOYMENTFILES4AKEAFEWMINUTESTOREVIEWCONTENTSOF
THEFILESTOBESURETHEYARECORRECTBEFOREYOUUPLOADTHEMTOTHE^_c^aPR[TBd__^acC^^[b^]TR^\\P]S
DIRECTORYOFTHEFIRSTNEWCOMPUTENODE {machine_name}SQ"


#(!04%2 #/.&)'52).'%8!$!4!

&ROMTHISPOINTFORWARD THEPROCESSISNODIFFERENTTHANITISFORAFRESHINSTALL&IRSTYOUWILLNEEDTO
CONFIGURETHENETWORKCOMPONENTSUSING&IRSTBOOTOR!PPLY#ONFIGASWEDISCUSSEDEARLIER4HENSIMPLY
LOGINTOTHEFIRSTNEWCOMPUTENODEASROOTANDRUNTHROUGHTHE$EPLOYCONFIGURATIONSTEPS7HEN
YOUAREFINISHED YOUWILLHAVEANEW2!#CLUSTER COMPLETEWITHSTARTERDATABASE

5PGRADINGTHE%XISTING#LUSTER
)FYOUREUPGRADINGYOUR%XADATATOAHALFORFULLRACKCONFIGURATIONANDWANTTOINTEGRATETHENEWSERVERS
ANDCELLSINTOYOUREXISTING2!#CLUSTER YOUMUSTCONFIGURETHENEWSERVERSANDCELLSMANUALLY4HE
Exadata Owner’s GuideHASASECTIONCALLEDh#ONFIGURINGTHE2EPLACEMENT$ATABASE3ERVERvTHAT
DISCUSSESTHEPROCESSINDETAIL&IRST WELLTAKEALOOKATTHEBASICSTEPSFORCONFIGURINGTHENEWDATABASE
4HENWELLTAKEALOOKATHOWYOUCANADDTHENEWCELLSTOYOUREXISTINGSTORAGEGRID

 #AUTION4HESTEPSINTHISSECTIONARENOTINTENDEDTOBEACOMPREHENSIVEGUIDEANDARESUBJECTTOCHANGE
2EFERTOYOUR%XADATADOCUMENTATIONFORDETAILSSPECIFICTOYOURVERSIONOF%XADATA

Configuring Database Servers


4HEPROCESSFORCONFIGURINGTHENEWDATABASESERVERSAREASFOLLOWS
1. 5PGRADETHEFIRMWAREONYOUR)"3WITCHTOTHECURRENTRELEASEORLATESTPATCH
4HE/RACLEHARDWARETECHNICIANWHOINSTALLEDYOURNEWHARDWARECANDOTHIS
FORYOUORYOUCANDOWNLOADTHELATESTPATCHANDINSTALLITYOURSELF
2ECOMMENDEDFIRMWAREPATCHESCANBEFOUNDIN-/3NOTE
2. )FPOSSIBLE UPDATETHE/RACLE'RID)NFRASTRUCTURE ANDDATABASESOFTWARETOTHE
MOSTCURRENTBUNDLEPATCHFORTHEVERSIONOFTHESOFTWAREYOUREXISTINGSYSTEM
ISRUNNING)DEALLY THESOFTWARESHOULDBERUNNINGATTHELATESTRELEASEAND
BUNDLEPATCH
3. 5SETHE$"-#ONFIGURATORTOGENERATE)0ADDRESSES ANDHOSTNAMESFORTHE
NEWCOMPUTENODESANDSTORAGECELLS
4. 2EGISTERTHENEWHOSTNAMESAND)0ADDRESSESINYOUR$.3SERVER
5. "OOTYOURNEWCOMPUTENODESONEATATIME4HEFIRSTTIMETHEYAREBOOTED
)0#ONFIGWILLSTARTAUTOMATICALLY ALLOWINGYOUTOENTERYOURNETWORKSETTINGS
6. /NTHEDATABASESERVERS COPYTHEFOLLOWINGFILESFROMONEOFYOUREXISTING
DATABASESERVERSTOTHENEWDATABASESERVERS
v TcRbTRdaXch[X\Xcb
4HISFILEISTHESAMEONALLCOMPUTENODES
v TcR_a^UX[T
4HISFILEISTHESAMEONALLCOMPUTENODES
v TcR^aPR[TRT[[]Tcf^aZR^]UXVRT[[X_^aP
4HISFILEISTHESAMEONALLCOMPUTENODES


#(!04%2 #/.&)'52).'%8!$!4!

v TcR^aPR[TRT[[]Tcf^aZR^]UXVRT[[X]Xc^aP
4HERT[[X]Xc^aPFILESHOULDBEUPDATEDWITHTHEPRIVATE
)NFINI"AND)0ADDRESSOFTHECOMPUTENODEWHERETHEFILEIS
INSTALLED%ACHCOMPUTENODEWILLHAVEAUNIQUEVERSIONOFTHIS
FILE
7. 5PDATETHETcRW^bcbFILEWITHTHECONTENTSOFTHE_aXeNXQNVa^d_FILE
GENERATEDFROM$"-#ONFIGURATOR5SETHEHOSTSFILEONONEOFYOUROTHER
COMPUTENODESASAGUIDE)TISVERYIMPORTANTNOTTOREMOVECOMMENTSSUCH
ASTHEFOLLOWING

1468=6T]TaPcTSQh4gPSPcP3>=>C<>385H
8. 5PDATETHE^_c^aPR[TBd__^acC^^[b^]TR^\\P]SVa^d_FILESONALL
COMPUTENODES ADDINGTHENODESTOTHECONFIGURATION

9. #REATETHE/3USERSANDGROUPSASTHEYAREDEFINEDONTHEOTHERCOMPUTE
NODES4HEUX]VTaCOMMANDMAYBEUSEDTOCOMPAREUSERACCOUNTDEFINITIONS
ASFOLLOWS
10. 3ETUP33(USEREQUIVALENCYBETWEENTHENEWANDOLDCOMPUTENODESFORTHE
/RACLESOFTWAREOWNER
11. &OLLOWTHESTEPSINTHE/WNERS'UIDEFORCLONINGTHE'RID)NFRASTRUCTUREAND
DATABASEHOMESTOAREPLACEMENTSERVER4HATSECTIONOFTHE/WNERS'UIDEIS
DISCUSSINGTHEREPLACEMENTOFAFAILEDDATABASESERVER/FCOURSEYOUWILLNOT
BEREPLACINGASERVERSOYOUCANSKIPOVERANYSTEPSHAVINGTODOWITH
REMOVINGAFAILEDSERVERFROMTHECLUSTER

 .OTE4HE%XADATAPLATFORMCONSISTSOFMULTIPLESOFTWAREANDHARDWARECOMPONENTSTHATREQUIREPERIODIC
UPDATES4HESEUPDATESCOMEINTHREEFORMS3TORAGE3ERVERPATCHES $ATABASE3ERVERPATCHESBUNDLEPATCHES
AND)NFINI"AND3WITCHUPDATES#ONSIDERINGTHECOMPLEXITYOF%XADATA ITISMOREIMPORTANTTHANEVERTOKEEPYOUR
SYSTEMFAIRLYCURRENTWITHTHELATESTSOFTWAREANDFIRMWAREPATCHES!WORDOFCAUTIONTHOUGH WERECOMMENDTHAT
YOUWAITATLEASTAMONTHAFTERAPATCHISAVAILABLEBEFOREINSTALLINGITONAPRODUCTIONSYSTEM%VENFORTESTAND
DEVELOPMENTSYSTEMS WERECOMMENDYOUWAITATLEASTnWEEKSAFTERAPATCHISAVAILABLEBEFOREINSTALLINGIT
/RACLEMAINTAINSADOCUMENTON-Y/RACLE3UPPORT-/3 CONTAININGALISTOFALLSUPPORTEDSOFTWAREANDPATCHES
AVAILABLEFOR%XADATA STARTINGWITHVERSION4HEDOCUMENTISCONTINUALLYUPDATEDWITHUSEFULINFORMATION
INSTRUCTIONSANDLINKSTOTHELATESTPATCHESASTHEYBECOMEAVAILABLE4HEDOCUMENTIS-/3NOTE
h$ATABASE-ACHINEAND%XADATA3TORAGE3ERVER2ELEASE 3UPPORTED6ERSIONSv3EE!PPENDIX"FORALISTOF
OTHERUSEFUL-/3NOTESRELATINGTOTHE%XADATAPLATFORM


#(!04%2 #/.&)'52).'%8!$!4!

Configuring Storage Cells


!DDINGNEWCELLSTOYOUREXISTINGSTORAGEGRIDISAFAIRLYSIMPLEPROCESS4HEREMAYBEOTHERWAYSTO
SIMPLIFYTHEPROCESSBYCLONINGANEXISTINGSTORAGECELL BUTWELLTAKEALOOKATTHEMANUALPROCESSSOYOU
CANSEETHECOMMANDSANDFILESINVOLVED4HEPROCESSISASFOLLOWS
1. 9OURNEWSTORAGECELLSWILLCOMEWITHTHELATESTVERSIONOFTHE%XADATACELLSOFTWARE
INSTALLED"EFOREYOUBEGIN CHECKTHEVERSIONOFSOFTWAREONTHENEWCELLSAND
UPGRADEYOUROLDCELLSTOMATCH4HEX\PVTX]U^COMMANDCANBEUSEDTODISPLAYTHIS
INFORMATION
2. ,OCATETHERT[[X]Xc^aPFILEONONEOFYOUROLDCELLSANDCOPYITOVERTOTHENEWCELLS
-ODIFYTHERT[[X]Xc^aPFILEONTHENEWCELLSANDCHANGETHEX_PSSaTbb FIELDTOTHE
PRIVATE)NFINI"ANDADDRESSOFTHECELL,OGINASTHEROOTACCOUNTWHENCONFIGURINGTHE
STORAGECELL4HE>BB2>=5ENVIRONMENTVARIABLESHOULDPOINTTOTHELOCATIONOFTHE
CORRECTRT[[X]Xc^aPFILE
3. 5PDATETHETcRW^bcbFILEWITHTHECONTENTSOFTHE_aXeNXQNVa^d_FILEGENERATEDFROM
$"-#ONFIGURATOR5SETHEHOSTSFILEONONEOFYOUROTHERSTORAGECELLSASAGUIDE)T
ISVERYIMPORTANTNOTTOREMOVECOMMENTSSUCHASTHEFOLLOWING
1468=6T]TaPcTSQh4gPSPcP3>=>C<>385H
4. 2EBOOTTHENEWCELLSANDVERIFYTHATTHEYRESTARTPROPERLY
5. 6ERIFYTHATTHECELLSERVICESARERUNNINGUSINGTHE#ELL#,)COMMAND[XbcRT[[)FTHE
CELLSERVICESAREDOWNYOUMAYSEEANERRORSUCHASTHIS
24;; $ #)2^]]TRc4aa^aETaXUhcWPc<P]PVT\T]cBTaeTaXb[XbcT]X]V
PccWTb_TRXUXTS7CC?_^ac)''''

2T[[BTaeXRTb\dbcQTbc^__TSP]SbcPacTSUa^\cWTa^^c^aRT[[PS\X]
dbTaPRR^d]cbCWTU^[[^fX]VR^\\P]Sb\PhQTdbTSc^\P]dP[[hbWdcS^f]
P]SbcPacd_cWTbTaeXRTb)

2T[[2;8-P[cTaRT[[bWdcS^f]bTaeXRTbP[[*
2T[[2;8-P[cTaRT[[bcPacd_bTaeXRTbP[[*
6. #ONFIGURINGTHESTORAGECELLISDONEUSINGTHE0;C4A24;;COMMAND&OREXAMPLE
STORAGECELLALERTNOTIFICATIONCANBECONFIGUREDUSINGTHEFOLLOWINGCOMMAND
0;C4A24;;b\c_BTaeTa,\PX[^daR^\_P]hR^\
b\c_5a^\0SSa,4gPSPcP/^daR^\_P]hR^\
b\c_5a^\,4gPSPcP
b\c_C^0SSa,P[[SQP/^daR^\_P]hR^\P[[bP/^daR^\_P]hR^\
]^cXUXRPcX^]?^[XRh,RaXcXRP[fPa]X]VR[TPa
]^cXUXRPcX^]<TcW^S,\PX[b]\_
7. 9OURCURRENTCELLCONFIGURATIONMAYBEDISPLAYEDUSINGTHE;8BC24;;34C08;
COMMAND/NCEYOUAREFINISHEDCONFIGURINGTHECELL STOPANDRESTARTTHECELL
SERVICESTOPICKUPTHENEWSETTINGS
8. #ONFIGURETHECELLSMARTFLASHCACHEUSINGTHE2A40C45;0B7202740;;COMMAND
9. #ONFIGUREALLCELLDISKSUSINGTHE2A40C424;;38B:0;;COMMAND


#(!04%2 #/.&)'52).'%8!$!4!

10. 5SINGONEOFYOUROLDSTORAGECELLSFORREFERENCE CREATEYOURGRIDDISKSUSINGTHE


2A40C46A8338B:COMMAND7EDISCUSSUSINGTHISCOMMANDIN#HAPTER"ESURE
YOUCREATEYOURGRIDDISKSINTHEPROPERORDER ASTHISWILLIMPACTTHEPERFORMANCEOF
THEDISKS)FYOUSTILLHAVETHEORIGINALCREATESCRIPTSGENERATEDANDRUNBY
/NE#OMMANDONTHEFIRSTCOMPUTENODEOFYOUREXISTINGCLUSTER YOUWILLFINDALLTHE
COMMANDSYOUNEEDFORCREATINGYOURGRIDDISKSINTHEPROPERORDER4HESCRIPTSARE
RaTPcT^Rae^cTSVbWAND2aTPcT6aXS3XbZbWANDSHOULDBELOCATEDINTHE
^_c^aPR[TBd__^acC^^[bc\_DIRECTORY)FTHESEFILESARENOTAVAILABLE YOUCANUSE
THESIZEANDOFFSETATTRIBUTESOFTHE;8BC6A8338B:34C08;COMMANDTODETERMINE
THEPROPERSIZEANDCREATIONORDERFORTHEGRIDDISKS
11. /NCEYOUAREFINISHEDCONFIGURINGTHECELLSANDCREATINGYOURGRIDDISKS YOUCANADD
THECELLTOTHESTORAGEGRID4HISISDONEONTHECOMPUTENODESBYADDINGTHECELLS
PRIVATE)NFINI"ANDNETWORK)0ADDRESSTOTHETcR^aPR[TRT[[]Tcf^aZ
R^]UXVRT[[X_^aPFILEONEACHDATABASESERVER

Summary
#ONFIGURING%XADATAISAVERYDETAILEDPROCESS ANDSOMETHINGSTENDTOCHANGESOMEWHATASNEW
VERSIONSOFTHESOFTWAREBECOMEAVAILABLE4HISCHAPTERDISCUSSEDSOMEOFTHEMAINPOINTSOF
CONFIGURING%XADATACOMPUTENODESANDSTORAGECELLS BUTITISNOTINTENDEDTOBEASUBSTITUTEFORTHE
OFFICIAL/RACLEDOCUMENTATION/RACLEHASDONEANEXCELLENTJOBOFDOCUMENTINGTHEPLATFORM ANDYOU
WILLFINDTHEOwner’s GuideANDUser’s GuideTOBEINVALUABLEASSETSWHENLEARNINGTHEINSANDOUTSOF
CONFIGURING%XADATA4HEREISSOMEOVERLAPINSUBJECTMATTERCOVEREDINTHISCHAPTERWITHTHETOPICS
DISCUSSEDIN#HAPTERSAND SOYOUMIGHTFINDTHEMHELPFULASACROSSREFERENCEFORSOMEOFTHE
CONFIGURATIONTASKSDISCUSSEDHERE


CHAPTER 9



Recovering Exadata

9OUMAYHAVEHEARDTHESAYINGhDISKDRIVESSPIN ANDTHENTHEYDIEv)TSNOTSOMETHINGWELIKETOTHINK
ABOUT BUTFROMTHEMOMENTYOUPOWERUPANEWSYSTEM YOURDISKDRIVESBEGINAGING$ISKDRIVESHAVE
COMEALONGWAYINTHEPASTYEARS ANDTYPICALLIFEEXPECTANCYHASIMPROVEDDRAMATICALLY!TTHEEND
OFTHEDAY THOUGH ITSAMATTEROFhWHENvADISKWILLFAIL NOThIFv!NDWEALLKNOWTHATMANYDISKDRIVES
FAILLONGBEFORETHEYSHOULD+NOWINGHOWTODIAGNOSEDISKFAILURESANDWHATTODOWHENTHEYOCCURHAS
GENERALLYBEENTHERESPONSIBILITYOFTHESYSTEMADMINISTRATORORSTORAGEADMINISTRATOR&ORMANY$"!S
%XADATAISGOINGTOCHANGETHAT-ANY%XADATASYSTEMSOUTTHEREAREBEINGMANAGEDENTIRELYBYTHE$"!
STAFF7HETHERORNOTTHISISTHECASEINYOURDATACENTER THEPROCEDUREFORRECOVERINGFROMADISKFAILURE
ON%XADATAISGOINGTOBEALITTLEDIFFERENTTHANYOUAREUSEDTO
/RACLEDATABASESERVERSHAVETRADITIONALLYREQUIREDTWOTYPESOFBACKUPOPERATINGSYSTEMBACKUPS
ANDDATABASEBACKUPS%XADATAADDSSTORAGECELLSTOTHEMIX ANDWITHTHATCOMESAWHOLENEW
SUBSYSTEMTHATMUSTBEPROTECTEDAND ONOCCASION RESTORED4HESTORAGECELLISAFAIRLYRESILIENTPIECEOF
HARDWARETHATEMPLOYS,INUXSOFTWARE2!)$TOPROTECTTHEOPERATINGSYSTEMVOLUMES!SSUCH ITIS
UNLIKELYTHATADISKFAILUREWOULDNECESSITATEANOPERATINGSYSTEMRESTORE4HEMORELIKELYCAUSESWOULD
BEHUMANERROR AFAILEDPATCHINSTALL ORABUG2EMEMBERTHATTHESEPHYSICALVOLUMESALSOCONTAINGRID
DISKSDATABASEVOLUMES SOALOSSONEOFTHESEDISKSWILLMOSTLIKELYMEANALOSSOFDATABASESTORAGEAS
WELL/RACLEHASENGINEEREDSEVERALFEATURESINTO%XADATATOPROTECTYOURDATAANDREDUCETHEIMPACTOF
SUCHFAILURES4HISCHAPTERWILLDISCUSSSOMEOFTHEMORECOMMONSTORAGEFAILURESCENARIOS HOWTO
DIAGNOSETHEM ANDHOWTORECOVERWITHMINIMALDOWNTIME

■.OTE/NEOFTHEMOSTCHALLENGINGASPECTSOFWRITINGTHISCHAPTERISTHERAPIDLYCHANGINGNATUREOFTHE
COMMANDSANDSCRIPTSWEWILLBEDISCUSSING)NMANYCASES RECOVERYTASKSWILLHAVEYOUWORKINGVERYCLOSELY
WITHTHEHARDWARELAYEROF%XADATA3OASYOUREADTHISCHAPTER KEEPINMINDTHATWITHEACHNEWVERSIONOF
%XADATAHARDWAREANDSOFTWARE THECOMMANDSANDSCRIPTSDISCUSSEDINTHISCHAPTERMAYCHANGE"ESURETO
CHECKTHE/RACLEDOCUMENTATIONFORTHELATESTUPDATESTOTHECOMMANDSANDSCRIPTSDISCUSSEDHERE

Exadata Diagnostic Tools


%XADATAISAHIGHLYCOMPLEXBLENDOFHARDWAREANDSOFTWARETHATWORKTOGETHERTOPRODUCEANINCREDIBLY
RESILIENTDELIVERYPLATFORM4HECOMPLEXITYOFTHEPLATFORMCANBEABITDAUNTINGATFIRST4HEREARESIMPLY
ALOTOFMOVINGPARTSTHATONEMUSTUNDERSTANDINORDERTOMAINTAINTHEPLATFORMEFFECTIVELY/RACLE


#(!04%2 2%#/6%2).'%8!$!4!

PROVIDESAWEALTHOFDIAGNOSTICTOOLSTHATCANBEUSEDTOVERIFY ANALYZE ANDREPORTIMPORTANT


INFORMATIONABOUTTHECONFIGURATIONANDHEALTHOFTHESYSTEM)NTHISSECTION WELLDISCUSSSOMEOFTHOSE
TOOLSANDHOWTOUSETHEM

3UN$IAGNOSTICSSUNDIAGSH
)NSTALLEDONEVERY%XADATADATABASESERVERANDSTORAGECELLISTHEbd]SXPVbWSCRIPT LOCATEDINTHE
^_c^aPR[TBd__^acC^^[bDIRECTORY)FFORSOMEREASONYOUDONTFINDITINSTALLEDONYOURSYSTEM YOU
CANDOWNLOADITFROM-Y/RACLE3UPPORT2EFERTO-/3$OC)$4HISSCRIPTISRUNFROMTHEROOT
ACCOUNTANDCOLLECTSDIAGNOSTICINFORMATIONNEEDEDFORTROUBLESHOOTINGDISKFAILURES4HEFILESITCOLLECTS
AREBUNDLEDINTHEFAMILIARcPaFORMATANDTHENCOMPRESSEDUSINGBZIP

sundiag.sh Output
4HELOGFILESPRODUCEDBYbd]SXPVbWARENAMEDUSINGTHEHOSTNAMEOFTHESERVER FOLLOWEDBYA
DESCRIPTIVENAME ANDPOSTFIXEDWITHTHEDATEANDTIMEOFTHEREPORT&OREXAMPLE RUNNINGTHESCRIPTON
OURLABSYSTEMPRODUCEDANOUTPUTFILECREATEDBYTHEST\bVCOMMAND NAMEDASFOLLOWS
T]ZSQ NS\TbVN! N N!'N(N#!^dc
.OW LETSTAKEALOOKATTHEDIAGNOSTICFILESCOLLECTEDBYbd]SXPVbbW
messages:4HISISACOPYOFTHEePa[^V\TbbPVTbFILEFROMYOURSYSTEM4HE
\TbbPVTbFILEISROTATEDANDAGEDOUTAUTOMATICALLYBYTHEOPERATINGSYSTEM)F
YOURSYSTEMHASBEENRUNNINGFORAWHILE YOUWILLHAVESEVERALOFTHESEFILES
ENUMERATEDINASCENDINGORDERFROMCURRENT\TbbPVTb TOOLDEST\TbbPVTb# 
4HISFILEISMAINTAINEDBYTHEbhb[^VDAEMONANDCONTAINSIMPORTANT
INFORMATIONABOUTTHEHEALTHANDOPERATIONOFTHEOPERATINGSYSTEM
dmesg:4HISFILEISCREATEDBYTHES\TbVCOMMANDANDCONTAINSDIAGNOSTIC
KERNEL LEVELINFORMATIONFROMTHEkernel ring buffer4HEKERNELRINGBUFFER
CONTAINSMESSAGESSENTTOORRECEIVEDFROMEXTERNALDEVICESCONNECTEDTOTHE
SYSTEM SUCHASDISKDRIVES KEYBOARD VIDEO ANDSOON
lspci:4HISFILECONTAINSALISTOFALLTHE0#)BUSESONTHESYSTEM
lsscsi:4HE[bbRbXFILECONTAINSALISTOFALLTHE3#3)DRIVESONTHESYSTEM
fdisk-l:4HEUSXbZ[FILECONTAINSALISTINGOFALLDISKDEVICEPARTITIONSINYOUR
SYSTEM
sel-list:4HEbT[[XbcFILECONTAINSOUTPUTFROMTHEX_\Xc^^[bT[T[Xbc
COMMAND)0-)STANDSFOR)NTELLIGENT0LATFORM-ANAGEMENT)NTERFACEANDIS
PARTOFTHE),/-)NTEGRATED,IGHTS/UT-ANAGEMENT COMPONENT4HE
X_\Xc^^[COMMANDTAPSINTOTHE),/-ANDEXTRACTSSENSORREADINGSONALL)0-)
ENABLEDDEVICESSUCHASMEMORYAND#05
megacli64:4HEbd]SXPVbbWSCRIPTRUNSTHE<TVP2[X%#COMMANDWITHVARIOUS
OPTIONSTHATINTERROGATETHE-EGA2!)$CONTROLLERFORINFORMATIONONTHE
CONFIGURATIONANDSTATUSOFYOURDISKCONTROLLERANDATTACHEDDISKDRIVES4HERE
ISAWEALTHOFINFORMATIONCOLLECTEDBYTHE-EGA2!)$CONTROLLERTHATCANBE
EASILYTAPPEDINTOUSINGTHE<TVP2[X%#COMMAND&OREXAMPLE THEFOLLOWING


#(!04%2 2%#/6%2).'%8!$!4!

LISTINGSHOWSASUMMARYOFTHE2!)$CONFIGURATIONOFTHEDISKDRIVESONOURLAB
SYSTEM
B[^c3TeXRT 78C02787 " #B2BD= #%60!0'  &509F(4bcPcdbXb)>][X]T
B[^c 3TeXRT 78C02787 " #B2BD= #%60!0'  &510H'4bcPcdbXb)>][X]T
B[^c!3TeXRT(78C02787 " #B2BD= #%60!0'  &50:14bcPcdbXb)>][X]T
B[^c"3TeXRT'78C02787 " #B2BD= #%60!0'  &51'?74bcPcdbXb)7^cb_PaT
)NFORMATIONINTHESEFILESINCLUDESANEVENTLOGANDASTATUSSUMMARYOFYOUR
CONTROLLERANDDISKDRIVES&OREXAMPLE THEFOLLOWINGLISTINGSHOWSASUMMARY
OFTHESTATEOFTHEPHYSICALDISKDRIVESATTACHEDTOONEOFOURDATABASESERVERS
2WTRZX]VA083bcPcdb^]T]ZSQ T]ZXcTRR^\
2^]ca^[[TaP);B8<TVPA083B0B(!% 'X
=^^U?WhbXRP[SXbZb^][X]T)"
3TVaPSTS)
5PX[TS3XbZb)
)TISHARDTOSAYWHETHER%XADATAUSESTHE<TVP2[X%#COMMANDTOMONITOR
PREDICTIVEFAILUREFORDISKDRIVESORIFTHEDEVELOPERSHAVETAPPEDINTO3-!24
METRICSTHROUGHAN!0) BUTTHISINFORMATIONISALLAVAILABLETOYOUATTHE
COMMANDLINE4HEREISNTALOTOFINFORMATIONABOUT-EGA#LIOUTTHERE BUT
THEbd]SXPVbWSCRIPTISAGOODPLACETOSTARTIFYOUAREINTERESTEDINPEEKING
UNDERTHEHOODANDGETTINGACLOSERLOOKATSOMEOFTHEMETRICS%XADATACOLLECTS
TODETERMINETHEHEALTHOFYOURDISKSUBSYSTEM
)FYOURUNTHEbd]SXPVbWSCRIPTONYOURSTORAGECELLS ADDITIONALDATAISCOLLECTEDABOUTTHECELL
CONFIGURATION ALERTS ANDSPECIALLOGFILESTHATDONOTEXISTONTHEDATABASESERVER4HEFOLLOWINGLIST
DESCRIBESTHESEADDITIONALLOGFILESCOLLECTEDBYbd]SXPVbW
cell-detail:4HERT[[STcPX[FILECONTAINSDETAILEDSITE SPECIFICINFORMATION
ABOUTYOURSTORAGECELL4HISISOUTPUTFROMTHE2T[[2;8COMMAND;8BC
24;;38B:34C08;
celldisk-detail:4HISFILECONTAINSADETAILEDREPORTOFYOURCELLDISKS4HE
REPORTISCREATEDUSINGTHE2T[[2;8COMMAND;8BC24;;38B:34C08;!MONG
OTHERTHINGS ITSHOWSTHESTATUS LOGICALUNITNUMBER,5. ANDPHYSICAL
DEVICEPARTITIONFORYOURCELLDISKS
lun-detail:4HISREPORTISGENERATEDUSINGTHE2T[[2;8COMMAND;8BC;D=
34C08;)TCONTAINSDETAILEDINFORMATIONABOUTTHEUNDERLYING,5.SONWHICH
YOURCELLDISKSARECONFIGURED)NCLUDEDINTHISREPORTARETHENAMES DEVICE
TYPES ANDPHYSICALDEVICENAMESLIKESTebSf OFYOUR,5.S
physicaldisk-detail:4HE_WhbXRP[SXbZSTcPX[FILECONTAINSADETAILEDREPORT
OFALLPHYSICALDISKSAND&-/$SUSEDBYTHESTORAGECELLFORDATABASETYPE
STORAGE AND&LASH#ACHE)TISGENERATEDUSINGTHE2T[[2;8COMMAND;8BC
?7HB820;38B:34C08; ANDITINCLUDESIMPORTANTINFORMATIONABOUTTHESE
DEVICESSUCHASTHEDEVICETYPEHARDDISKORFLASHDISK MAKEANDMODEL SLOT
ADDRESS ANDDEVICESTATUS
physicaldisk-fail:4HISFILECONTAINSALISTINGOFALLPHYSICALDISKSINCLUDING
FLASHDISKS THATDONOTHAVEASTATUSOF.ORMAL4HISWOULDINCLUDEDISKSWITHA
STATUSOF.OT0RESENT WHICHISAFAILEDDISKTHATHASBEENREPLACEDBUTNOTYET
REMOVEDFROMTHECONFIGURATION7HENAPHYSICALDISKISREPLACED ITSOLD


#(!04%2 2%#/6%2).'%8!$!4!

CONFIGURATIONREMAINSINTHESYSTEMFORDAYS AFTERWHICHITISAUTOMATICALLY
PURGED
griddisk-detail:4HISFILECONTAINSADETAILEDREPORTOFALLGRIDDISKSCONFIGURED
ONTHESTORAGECELL)TISCREATEDUSINGTHE2T[[2;8COMMAND;8BC6A8338B:
34C08;ANDINCLUDES AMONGOTHERTHINGS THEGRIDDISKNAME CELLDISKNAME
SIZE ANDSTATUSOFALLGRIDDISKSYOUHAVECONFIGUREDONTHESTORAGECELL
flashcache-detail:4HISREPORTCONTAINSTHELISTOFALL&-/$STHATMAKEUPTHE
CELLFLASHCACHE)TISTHEOUTPUTOFTHE2T[[2;8COMMAND;8BC5;0B720274
34C08;ANDINCLUDESTHESIZEANDSTATUSOFTHEFLASHCACHE!LSOFOUNDINTHIS
REPORTISALISTOFALLFLASHCACHECELLDISKSTHATAREOPERATINGINADEGRADEDMODE
alerthistory:4HEP[TacWXbc^ahFILECONTAINSADETAILEDREPORTOFALLALERTSTHAT
HAVEOCCURREDONTHESTORAGECELL)TISCREATEDUSINGTHE2T[[2;8COMMAND;8BC
0;4AC78BC>AH
fdom-l:4HISREPORTCONTAINSDETAILEDINFORMATIONABOUTTHEFOURFLASHCACHE
CARDSANDFLASHCACHEMODULES&$/-S ONYOURSTORAGECELL)TISCREATEDBY
RUNNINGTHEdbaQX]U[PbWNS^\~[COMMANDONTHESTORAGECELLANDINCLUDES
INFORMATIONLIKEFIRMWAREVERSION ADDRESS ANDDEVICENAMEOFEACHOFTHE
&$/-S&OREXAMPLE
31NNNCCh_TET]S^a?a^SdRcATe>_TaPcX]VBhbcT\3TeXRT=P\T
3XbZ0C0<0AE4;;B3''B0!3!HSTebSdJ")))L
! 3XbZ0C0<0AE4;;B3''B0!3!HSTebSeJ")) )L
"!3XbZ0C0<0AE4;;B3''B0!3!HSTebSfJ"))!)L
#"3XbZ0C0<0AE4;;B3''B0!3!HSTebSgJ"))")L
alert.log:4HEP[Tac[^VFILEISWRITTENTOBYTHERT[[baePROCESS3IMILARTOA
DATABASEOR!3-ALERTLOGFILE THESTORAGECELLP[Tac[^VCONTAINSIMPORTANT
RUNTIMEINFORMATIONABOUTTHESTORAGECELLANDTHESTATUSOFITSDISKDRIVES4HIS
FILEISVERYUSEFULINDIAGNOSINGPROBLEMSWITHCELLSTORAGE
ms-odl.trc:4HE\b^S[caRCONTAINSDETAILEDRUNTIME TRACE LEVELINFORMATION
FROMTHECELLSMANAGEMENTSERVERPROCESS
ms-odl.log:4HISFILEISWRITTENTOBYTHECELLSMANAGEMENTSERVERPROCESS)TIS
NOTINCLUDEDINTHECOLLECTIONCREATEDBYTHEbd]SXPVbWSCRIPT BUTWEHAVE
FOUNDITVERYUSEFULINDIAGNOSINGPROBLEMSTHATOCCURINTHESTORAGECELL)TALSO
CONTAINSNORMAL DAY TO DAYOPERATIONALMESSAGES3TORAGECELLSMAINTAINTHEIR
LOGFILESBYROTATINGTHEM SIMILARTOTHEWAYTHEOPERATINGSYSTEMROTATESTHE
SYSTEMLOGePa[^V\TbbPVTb 4HE\b^S[[^VFILERECORDSTHESETASKSASWELL
ASMORECRITICALTASKSLIKEDISKFAILURES

(EALTH#HECK
(EALTH#HECKISASETOFSHELLSCRIPTSDEVELOPEDBY/RACLETHATYOUCANUSETOVERIFYYOURCONFIGURATION
4HESESCRIPTSARENOTINCLUDEDINYOUR%XADATAINSTALLATIONBUTAREREADILYAVAILABLEFORDOWNLOADFROM
-Y/RACLE3UPPORTUNDER!RTICLE)$ h/RACLE$ATABASE-ACHINE(EALTH#HECKv4HESCRIPTS
AREWELLDOCUMENTEDANDPRODUCEASTAGGERINGAMOUNTOFINFORMATIONABOUTYOUR%XADATA$ATABASE
-ACHINE SOWEWONTGOTHROUGHALLTHEGORYDETAILSHERE(EALTH#HECKREPORTSTHECURRENT
CONFIGURATIONOFKEYHARDWAREANDSOFTWARECOMPONENTSOF%XADATA/RACLERECOMMENDSTHATYOU
ROUTINELYRUN(EALTH#HECKASANORMALPARTOFMAINTAININGYOURDATABASEMACHINE4HEOUTPUTSHOULD


#(!04%2 2%#/6%2).'%8!$!4!

BECOMPAREDWITHBULLETINSANDBESTPRACTICESPUBLISHEDBY/RACLE#ORPORATIONTOENSUREOPTIMAL
PERFORMANCEANDMANAGEABILITYOFTHEPLATFORM(EALTHCHECKSAREFAIRLYLIGHTWEIGHT ANDALLEXCEPTONE
CANBERUNDURINGNORMALBUSINESSOPERATIONS4HEEXCEPTIONISTHE2WTRZ7F]5F?a^UX[TTEST4HISTESTIS
NOTEXECUTEDBYDEFAULTANDSHOULDONLYBERUNIMMEDIATELYFOLLOWINGAFRESHINSTALLATIONOFTHE%XADATA
SOFTWARE
(EALTH#HECKISMADEUPOFTWOMAINSCRIPTS THE!3-HEALTHCHECKad]N^bNR^\\P]SbNPbN^aPR[TbW
ANDTHE/3HEALTHCHECKad]N^bNR^\\P]SbNPbNa^^cbW 4HE!3-HEALTHCHECKSHOULDONLYTAKEAFEW
SECONDSTOEXECUTE WHILETHE/3HEALTHCHECKWILLRUNFORAROUNDnMINUTESDEPENDINGONYOUR
SPECIFIC%XADATACONFIGURATION6 8  8  ANDSYSTEMLOAD4HEOUTPUTFROMTHESETESTSISSTOREDIN
FILESNAMEDWITHAhDATE TIMEvPATTERN STOREDINTHEOUTPUTDIRECTORYUNDERTHE(EALTH#HECKHOME
DIRECTORY&OREXAMPLE AFTERRUNNING(EALTH#HECKONACOUPLEDIFFERENTOCCASIONS OURh^dc_dcNUX[Tbv
DIRECTORYSHOWSTHEFOLLOWING
JT]ZSQ )^aPR[T)34<> Ld P__7TP[cW2WTRZ^dc_dcNUX[Tb
-[b[ca
c^cP["!#
afafa ^aPR[TSQP$%'"3TR" #)$(Pb\N^dc_dcN !' N #$("'[bc
afaa a^^ca^^c #'"# 3TR" %)^bN^dc_dcN !" N #$(" [bc
afafa ^aPR[TSQP$%'"9P]!' $) Pb\N^dc_dcN !' N $ !![bc
afaa a^^ca^^c $"!$9P]!' $)##^bN^dc_dcN !' N $#!"%[bc
4HETHINGWEREALLYLIKEABOUTTHE(EALTH#HECKISTHATINSTEADOFSIMPLYREPORTINGWHATITFINDS ITGIVESA
SHORTDESCRIPTIONOFWHATTHEEXPECTEDREADINGSSHOULDBEANDWHATTODOIFYOURRESULTSAREOUTSIDETHE
NORM!NOTHERNICETHINGABOUTTHE(EALTH#HECKISTHATITISALLWRITTENINSHELLSCRIPTSWITHCALLOUTSTO
PROGRAMSLIKEb`[_[dbAND<TVP2[X%#4HISMEANSTHATINADDITIONTOBEINGAVERYUSEFULAUDITINGAND
VERIFICATIONTOOL ITISALSOAVERYGOODLEARNINGTOOLBECAUSEYOUCANEASILYSEESOMEOFTHECOMMANDS
THAT/RACLESUPPORTANALYSTSWOULDUSETODIAGNOSEYOUR%XADATA$ATABASE-ACHINE

#ELL#,)
4HERT[[baePROCESSONEACHSTORAGECELLCOLLECTSIMPORTANTINFORMATIONABOUTTHECURRENTSTATEOFTHE
STORAGECELLANDCOMPONENTSSUCHAS#05 FLASHCACHEMODULES CELLDISKS GRIDDISKS ANDMORE4HESE
CELLMETRICSAREINTURNRECEIVEDBYTHE-ANAGEMENT3ERVICE-3 PROCESS/NCEANHOUR THE-3PROCESS
WRITESTHECELLMETRICSTOITS!UTOMATIC$IAGNOSTICS2EPOSITORY!$2 SIMILARTOTHEWAYGDATABASES
RECORDALERTSTOTHE!$2ONTHEDATABASESERVERS%XADATAMONITORSTHEMETRICSITCOLLECTSANDTRIGGERS
ALERTSWHENKEYTHRESHOLDSAREEXCEEDED HARDWAREERRORSOCCUR ORSOFTWAREERRORSOCCURINTHERT[[bae
PROCESS4HE2T[[2;8PROGRAMISYOURPRIMARYINTERFACEFORCONFIGURINGANDMANAGINGTHESTORAGECELLS
2T[[2;8ALSOPROVIDESCONVENIENTACCESSTOTHEMETRICSANDALERTSRECORDEDINTHE!$24HEINFORMATION
INTHE!$2CANALSOBEACCESSEDWITHTHEPSaRXCOMMAND JUSTASYOUWOULDONTHEDATABASESERVERSFOR
DATABASEALERTS 4HE!$2HASBEENAROUNDFORSEVERALYEARSANDISWELLDOCUMENTED SOWEWONTBE
DISCUSSINGPSaRXHERE)NSTEAD WELLBEFOCUSINGOURATTENTIONON2T[[2;8ANDHOWITCANBEUSEDTOTAP
INTOTHEDIAGNOSTICINFORMATIONSTOREDINTHE!$2

Cell Metrics
#ELLMETRICSAREKEYMEASUREMENTSCOLLECTEDFROMVARIOUSCOMPONENTSINTHESTORAGECELL4HESEMETRICS
CANBERETRIEVEDUSINGTHE;8BC<4CA823458=8C8>=COMMAND&OREXAMPLE THEFOLLOWINGREPORTSHOWS
THEDEFINITIONFORTHE2;NAD=@METRIC WHICHTRACKSRUNQUEUEINFORMATIONFROMTHEOPERATINGSYSTEM


#(!04%2 2%#/6%2).'%8!$!4!

2T[[2;8-[Xbc\TcaXRSTUX]XcX^]fWTaT]P\T,2;NAD=@STcPX[
]P\T)2;NAD=@
STbRaX_cX^])0eTaPVT]d\QTa^eTacWT_aTRTSX]V\X]dcT^U_a^RTbbTbX]
cWT;X]dgad]`dTdT\PaZTSad]]X]V^ad]X]cTaad_cXQ[TUa^\
_a^R[^PSPeV
\TcaXRCh_T)8]bcP]cP]T^db
^QYTRcCh_T)24;;
d]Xc)=d\QTa
!TTHETIMEOFTHISWRITING THESTORAGECELLMAINTAINSSPECIFICMETRICS4HE34B2A814
<4CA822DAA4=CCOMMANDDISPLAYSTHEATTRIBUTESOFTHE\TcaXRRdaaT]cOBJECT ASSHOWNINTHEFOLLOWING
LISTING
2T[[2;8-STbRaXQT\TcaXRRdaaT]c
]P\T
P[TacBcPcT
R^[[TRcX^]CX\T
\TcaXR>QYTRc=P\T
\TcaXRCh_T
\TcaXREP[dT
^QYTRcCh_T
4HE;8BC<4CA822DAA4=CCOMMANDCANBEUSEDTOREPORTCURRENTREADINGSOFTHESEMETRICS4HE
REPORTGENERATEDBYTHISCOMMANDISVERYLENGTHYSOYOUWILLWANTTOAPPLYFILTERSTOLIMITTHEREPORTTO
THECOMPONENTSYOUAREINTERESTEDIN4HEFOLLOWINGLISTSHOWSTHEOBJECTTYPESSTOREDINTHE!$2
v 24;;
v 24;;38B:
v 24;;N58;4BHBC4<
v 5;0B720274
v 6A8338B:
v 7>BCN8=C4A2>==42C
v 8>A<N20C46>AH
v 8>A<N2>=BD<4AN6A>D?
v 8>A<N30C010B4
5NDERSTANDINGTHENAMINGCONVENTIONUSEDFORTHEMETRICNAMEWILLHELPYOUFOCUSTHEREPORTON
THESPECIFICMETRICSYOUAREINTERESTEDIN4HEMETRICNAMEISACONCATENATIONOFABBREVIATIONSFORTHE
TYPEOFCOMPONENT DELIMITEDBYTHEUNDERSCORECHARACTER? 4HEFIRSTPARTOFTHEMETRICNAMEISAN
ABBREVIATIONFORTHEOBJECTTYPE4HISCANBEUSEDASSHORTHANDFORFILTERINGTHEREPORTOUTPUT4ABLE 
SHOWSTHEMETRICNAMEPREFIXESANDWHATEACHONEREPRESENTS


#(!04%2 2%#/6%2).'%8!$!4!

Table 9-1. Metric Name Prefixes

Name Prefix Description


2;N #ELLLEVELMETRICS

23N #ELLDISKMETRICS

63N 'RIDDISKMETRICS

52N &LASH#ACHEMETRICS

31N $ATABASEMETRICS

26N )/2-#ONSUMERGROUPMETRICS

2CN )/2-#ATEGORIES

=N .ETWORK)NFINI"ANDNETWORKINTERCONNECT

&OR)/ RELATEDMETRICS THEMETRICNAMECONTINUESWITHONEOFTHEVALUESLISTEDIN4ABLE 

Table 9-2. I/O Metric Abbreviations

Abbreviation Description
8>NA@ .UMBEROF)/REQUESTS

8>N1H .UMBEROFMEGABYTES

8>NC< )/,ATENCY

8>NFC )/7AITTIME

&OR)/ RELATEDMETRICS THENEXTPARTOFTHEMETRICNAMEMAYBEAFORREADS ORFFORWRITES
FOLLOWEDBYB<OR;6FORSMALLORLARGEREADSANDWRITES4HELASTABBREVIATIONINTHEMETRICNAMEWILLBE
EITHERB42FORSECONDSORA@FORREQUESTS&OREXAMPLE THEFOLLOWINGCOMMANDSHOWSTHENUMBEROF
SMALL)/WRITEOPERATIONSPERSECONDFORALLGRIDDISKSONTHESTORAGECELL
2T[[2;8-[Xbc\TcaXRRdaaT]cfWTaT]P\T,63N8>NA@NFNB<NB42
63N8>NA@NFNB<NB4230C0N23NNRT[[ '8>bTR
63N8>NA@NFNB<NB4230C0N23N NRT[[ (8>bTR
63N8>NA@NFNB<NB4230C0N23N!NRT[[  #8>bTR
63N8>NA@NFNB<NB4230C0N23N"NRT[[  %8>bTR
...


#(!04%2 2%#/6%2).'%8!$!4!

4HEDEFAULTRETENTIONFORMETRICDETAILISDAYS AFTERWHICHITWILLBESUMMARIZEDBYMIN MAX AND


AVERAGEATWHICHTIMETHEDETAILRECORDSWILLBEPURGED 4HE34B2A814<4CA8278BC>AHCOMMANDSHOWS
THESTRUCTUREOFTHE\TcaXRWXbc^ahOBJECT
2T[[2;8-STbRaXQT\TcaXRWXbc^ah
]P\T
P[TacBcPcT
R^[[TRcX^]CX\T
\TcaXR>QYTRc=P\T
\TcaXRCh_T
\TcaXREP[dT
\TcaXREP[dT0eV
\TcaXREP[dT<Pg
\TcaXREP[dT<X]
^QYTRcCh_T
4HE;8BC<4CA8278BC>AHCOMMANDPROVIDESASUMMARIZEDREPORTOFTHEFULLHISTORYOFCELLMETRICS
STOREDINTHE!$25SUALLYYOUWILLWANTTOAPPLYFILTERSTOSPECIFYADATERANGEANDPOSSIBLYAMETRICTYPE
FORTHISREPORT4ODOTHIS PROVIDEAF74A4CLAUSEWITHTHEMETRICNAMEANDADATEFILTER ASINTHIS
EXAMPLE
2T[[2;8-[Xbc\TcaXRWXbc^ah
fWTaT]P\T[XZT2;N
P]SR^[[TRcX^]cX\T-!   C'))')

Cell Alerts
)NADDITIONTOTRACKINGMETRICSFORSTORAGECELLCOMPONENTS %XADATAALSOEVALUATESTHESEMETRICSAND
APPLIESTHRESHOLDSTOVERIFYTHATTHECOMPONENTSARERUNNINGWITHINNORMALPARAMETERS7HENAMETRIC
CROSSESONEOFTHESEOPERATIONALTHRESHOLDS ANALERTISGENERATED3OMEOFTHEALERTSGENERATEDBY
%XADATAINCLUDECELLTEMPERATURE CELLDISKREADWRITEERRORS ANDSOFTWAREFAILURES%XADATATRACKSOVER
ALERTTYPESINTHESTORAGECELL!DDITIONALALERTSMAYBEDEFINEDUSING'RID#ONTROLSMONITORINGAND
ALERTINGFEATURES!LERTSEVERITIESFALLINTOFOURCATEGORIES)NFORMATION 7ARNING #RITICAL AND#LEAR
4HESEAREUSEDTOMANAGEALERTNOTIFICATIONS&OREXAMPLE YOUMAYCHOOSETOGETANEMAILALERT
NOTIFICATIONFORCRITICALALERTSONLY4HE#LEARSEVERITYISUSEDTONOTIFYYOUWHENACOMPONENTHAS
RETURNEDTO.ORMALSTATUS4HE;8BC<4CA8278BC>AH34C08;COMMANDCANBEUSEDTOGENERATEADETAILED
REPORTOFTHEALERTSGENERATEDBYTHESYSTEM4HEFOLLOWINGLISTINGISANEXAMPLEOFANALERTGENERATEDBY
THESTORAGECELL
]P\T)!(N 
P[Tac<TbbPVT)0[[;^VXRP[SaXeTbPaTX]FaXcTCWa^dVWRPRWX]V\^ST
4XcWTaQPccTahXbX]P[TPa]RhR[T^aXc]TTSbc^QT
aT_[PRTS?[TPbTR^]cPRc>aPR[TBd__^ac
P[TacBT`dT]RT83)!(
P[TacBW^ac=P\T)7PaSfPaT
P[TacCh_T)BcPcTUd[
QTVX]CX\T)!   &C#)#!) %)
T]SCX\T)!   &C$)$)!(%)
TgP\X]TS1h)
\TcaXR>QYTRc=P\T);D=N20274NFCN0;;
]^cXUXRPcX^]BcPcT) 
bT`dT]RT1TVX]CX\T)!   &C#)#!) %)


#(!04%2 2%#/6%2).'%8!$!4!

bTeTaXch)RaXcXRP[
P[Tac0RcX^])1PccTahXbTXcWTaX]P[TPa]RhR[T^aXc]TTSb
aT_[PRT\T]c?[TPbTR^]cPRc>aPR[TBd__^ac
7HENTHEBATTERYSUBSEQUENTLYRETURNSTO.ORMALSTATUS AFOLLOW UPALERTISGENERATEDWITHA
SEVERITYOF#LEAR INDICATINGTHATTHECOMPONENTHASRETURNEDTONORMALOPERATINGSTATUS
]P\T)!(N!
P[Tac<TbbPVT)1PccTahXbQPRZc^PV^^SbcPcT
...
bTeTaXch)R[TPa
P[Tac0RcX^])1PccTahXbQPRZc^PV^^SbcPcT=^0RcX^]AT`dXaTS
7HENYOUREVIEWALERTS YOUSHOULDGETINTHEHABITOFSETTINGTHETgP\X]TS1hATTRIBUTEOFTHEALERTSO
YOUCANKEEPTRACKOFWHICHALERTSAREALREADYBEINGINVESTIGATED)FYOUSETTHETgP\X]TS1hATTRIBUTE YOU
CANUSEITASAFILTERONTHE;8BC0;4AC78BC>AHCOMMANDTOREPORTALLALERTSTHATARENOTCURRENTLYBEING
ATTENDEDTO"YADDINGTHESEVERITYFILTERYOUCANFURTHERREDUCETHEOUTPUTTOJUSTCRITICALALERTS&OR
EXAMPLE
;8BC0;4AC78BC>AHF74A4bTeTaXch,RaXcXRP[0=3TgP\X]TS1h,34C08;
4OSETTHETgP\X]TS1hATTRIBUTEOFTHEALERT USETHE0;C4A0;4AC78BC>AHCOMMANDANDSPECIFYTHE
NAMEOFTHEALERTYOUWISHTOALTER&OREXAMPLE WECANSETTHETgP\X]TS1hATTRIBUTEFORTHE"ATTERYALERT
JUSTSHOWNASFOLLOWS
2T[[2;8-P[cTaP[TacWXbc^ah!(N TgP\X]TS1h,rjohnson
0[Tac!(N bdRRTbbUd[[hP[cTaTS

2T[[2;8-[XbcP[TacWXbc^ahPccaXQdcTb]P\TP[Tac<TbbPVTTgP\X]TSQhfWTaT]P\T,!(N STcPX[
]P\T)!(N 
P[Tac<TbbPVT)0[[;^VXRP[SaXeTbPaTX]FaXcTCWa^dVWRPRWX]V\^ST
4XcWTaQPccTahXbX]P[TPa]RhR[T^aXc]TTSbc^QT
aT_[PRTS?[TPbTR^]cPRc>aPR[TBd__^ac
TgP\X]TS1h)rjohnson
4HEREISQUITEABITMORETOSAYABOUTMANAGING REPORTING ANDCUSTOMIZING%XADATAALERTS!N
ENTIRECHAPTERWOULDBENEEDEDTOCOVERTHESUBJECTINDETAIL)NTHISSECTIONWEVEONLYTOUCHEDONTHE
BASICS&ORTUNATELY ONCEYOUGETEMAILCONFIGUREDFORALERTNOTIFICATION VERYLITTLEMUSTBEDONETO
MANAGETHESEALERTS)NMANYENVIRONMENTS EMAILNOTIFICATIONISALLTHATISUSEDTOCATCHANDREPORT
CRITICALALERTS
%XADATAISONEOFTHEBEST INSTRUMENTEDANDSELF DOCUMENTEDSYSTEMSWEVEEVERWORKEDON)TIS
ALSOONEOFTHEMOSTCOMPLEX4HISSECTIONHASDISCUSSEDTHREEVERYHELPFULTOOLSTHATPROVIDETHEKINDOF
DIAGNOSTICINFORMATIONYOUMUSTHAVEINORDERTORESOLVE%XADATAPROBLEMS3UN$IAGNOSTICSAND
(EALTH#HECKAREWRAPPERSCRIPTSTHATCALLOTHERCOMMANDSANDSCRIPTSTOTAPINTOKEYHARDWAREAND
SOFTWARECOMPONENTMETRICS)FYOUAREBRAVEENOUGH ITISWELLWORTHTHETIMETOCRACKTHESESCRIPTS
OPENANDBECOMEFAMILIARWITHWHATTHEYAREDOING2T[[2;8PROVIDESANEXCELLENTWAYOFPRODUCING
REPORTSDETAILINGALERTSTHATAFFECTTHENORMALOPERATIONSOFYOURSYSTEM4HEREISALOTTOBELEARNED
ABOUTWHERECONFIGURATIONANDDIAGNOSTICINFORMATIONISSTOREDSOYOUCANQUICKLYGOSTRAIGHTTOTHE
SOURCEWHENPROBLEMSARISE)NTHISSECTIONWEVETRIEDTOTOUCHONSOMEOFTHEMOREIMPORTANTAREAS
YOUSHOULDBEAWAREOF


#(!04%2 2%#/6%2).'%8!$!4!

Backing Up Exadata
7HENWETOOKDELIVERYOFOUR%XADATASYSTEM ONEOFOURPRIMARYCONCERNSWAS hHOWCANWEBACKUP
EVERYTHINGSOWECANRESTOREITTOWORKINGORDERIFSOMETHINGGOESHORRIBLYWRONGv7HENOUR%XADATA
ARRIVEDIN-AYOF THELATESTVERSIONOFTHE#ELLSOFTWAREWAS!NDATTHETIME THEONLYWAY
TOBACKUPADATABASESERVERWASTOUSETHIRD PARTYBACKUPSOFTWAREORSTANDARD,INUXCOMMANDSLIKE
cPa/RACLEISCONSTANTLYDEVELOPINGNEWFEATURESFOR%XADATAANDLESSTHANAYEARLATER %XADATA8 
DATABASESERVERSCOMECONFIGUREDWITHTHENATIVE,INUX,OGICAL6OLUME-ANAGER,6- 4HISISABIG
STEPFORWARD BECAUSETHE,6-HASBUILT INSNAPSHOTCAPABILITIESTHATPROVIDEANEASYMETHODOFTAKING
BACKUPSOFTHEOPERATINGSYSTEM3TORAGECELLSUSEACOMPLETELYDIFFERENT PROPRIETARY METHODFOR
BACKUPANDRECOVERY)NTHISSECTIONWELLTAKEALOOKATTHEVARIOUSMETHODS/RACLERECOMMENDSFOR
BACKINGUP%XADATADATABASESERVERSANDSTORAGECELLS7ELLALSOTAKEABRIEFLOOKAT2ECOVERY-ANAGER
2-!. ANDSOMEOFTHEFEATURES%XADATAPROVIDESTHATIMPROVETHEPERFORMANCEOFDATABASEBACKUP
ANDRECOVERY!FTERTHAT WELLTAKEALOOKATWHATITTAKESTORECOVERFROMSOMEOFTHEMORECOMMON
TYPESOFSYSTEMFAILURE)TMAYSURPRISEYOU BUTTHEFOCUSOFTHISCHAPTERISNOTDATABASERECOVERY4HERE
AREVERYFEW%XADATA SPECIFICCONSIDERATIONSFORDATABASEBACKUPANDRECOVERY!MAJORITYOFTHE
PRODUCT SPECIFICBACKUPANDRECOVERYMETHODSPERTAINTOBACKUPANDRECOVERYOFTHESYSTEMVOLUMES
CONTAININGTHEOPERATINGSYSTEMAND%XADATASOFTWARE SOWELLSPENDAQUITEABITOFTIMEDISCUSSING
RECOVERY FROMTHELOSSOFACELLDISK TOTHELOSSOFASYSTEMVOLUMEONTHEDATABASESERVERSORSTORAGE
CELLS

"ACKING5PTHE$ATABASE3ERVERS
2ECENTLY /RACLEBEGANSHIPPING%XADATAWITHTHE,INUX,6-CONFIGUREDFORMANAGINGFILESYSTEM
STORAGEONTHEDATABASESERVERS,OGICALVOLUMEMANAGERSPROVIDEANABSTRACTIONLAYERFORPHYSICALDISK
PARTITIONSSIMILARTOTHEWAY!3-DOESFORITSUNDERLYINGPHYSICALSTORAGEDEVICES,6-SHAVEVOLUME
GROUPSCOMPARABLETO!3-DISKGROUPS4HESEVOLUMEGROUPSAREMADEUPOFONEORMOREPHYSICALDISKS
ORDISKPARTITIONS AS!3-DISKGROUPSAREMADEUPOFONEORMOREPHYSICALDISKSORDISKPARTITIONS 
,6-VOLUMEGROUPSARECARVEDUPINTOLOGICALVOLUMESINWHICHFILESYSTEMSCANBECREATED)NASIMILAR
WAY DATABASESUTILIZE!3-DISKGROUPSFORCREATINGTABLESPACESTHATAREUSEDFORSTORINGTABLES INDEXES
ANDOTHERDATABASEOBJECTS!BSTRACTINGPHYSICALSTORAGEFROMTHEFILESYSTEMSALLOWSTHESYSTEM
ADMINISTRATORTOGROWANDSHRINKTHELOGICALVOLUMESANDFILESYSTEMS ASNEEDED4HEREAREANUMBER
OFOTHERADVANTAGESTOUSINGTHE,6-TOMANAGESTORAGEFORTHE%XADATADATABASESERVERS BUTOURFOCUS
WILLBETHENEWBACKUPANDRESTORECAPABILITIESTHE,INUX,6-PROVIDES NAMELY,6-SNAPSHOTS)N
ADDITIONTOTHEIRCONVENIENCEANDEASEOFUSE ,6-SNAPSHOTSELIMINATEMANYOFTHETYPICALCHALLENGES
WEFACEWITHSIMPLEBACKUPSUSINGTHEcPaCOMMANDORTHIRD PARTYBACKUPPRODUCTS&OREXAMPLE
DEPENDINGONTHEAMOUNTOFDATAINTHEBACKUPSET FILESYSTEMBACKUPSCANTAKEQUITEAWHILETO
COMPLETE4HESEBACKUPSARENOTCONSISTENTTOAPOINTINTIME MEANINGTHATIFYOUMUSTRESTOREAFILE
SYSTEMFROMBACKUP THEDATAINYOURFILESWILLREPRESENTVARIOUSPOINTSINTIMEFROMTHEBEGINNINGOFTHE
BACKUPPROCESSTOITSEND!PPLICATIONSTHATCONTINUETORUNDURINGTHEBACKUPCYCLECANHOLDLOCKSON
FILES CAUSINGTHEMTOBESKIPPEDNOTBACKEDUP !NDONCEAGAIN OPENAPPLICATIONSWILLINEVITABLY
MAKECHANGESTODATADURINGTHEBACKUPCYCLE%VENIFYOUAREABLETOBACKUPTHESEOPENFILES YOUHAVE
NOWAYOFKNOWINGIFTHEYAREINANYUSABLESTATEUNLESSTHEAPPLICATIONISSHUTDOWNBEFORETHEBACKUP
ISTAKEN,6-SNAPSHOTSAREINSTANTANEOUSBECAUSENODATAISACTUALLYCOPIED9OUCANTHINKOFA
SNAPSHOTASANINDEXOFPOINTERSTOTHEPHYSICALDATABLOCKSTHATMAKEUPTHECONTENTSOFYOURFILE
SYSTEM7HENAFILEISCHANGEDORDELETED THEORIGINALBLOCKSOFTHEFILEAREWRITTENTOTHESNAPSHOT
VOLUME3OEVENIFITTAKESHOURSTOCOMPLETEABACKUP ITWILLSTILLBECONSISTENTWITHTHEMOMENTTHE
SNAPSHOTWASCREATED.OW LETSTAKEALOOKATHOW,6-SNAPSHOTSCANBEUSEDTOCREATEACONSISTENTFILE
SYSTEMBACKUPOFTHEDATABASESERVER


#(!04%2 2%#/6%2).'%8!$!4!

System Backup Using LVM Snapshots


#REATINGFILESYSTEMBACKUPSUSING,6-SNAPSHOTSISAPRETTYSIMPLEPROCESS&IRSTYOUNEEDTOCREATEA
DESTINATIONFORTHEFINALCOPYOFTHEBACKUPS4HISCANBE3!.OR.!3STORAGEORSIMPLYAN.&3FILE
SYSTEMSHAREDFROMANOTHERSERVER)FYOUHAVEENOUGHFREESPACEINTHEVOLUMEGROUPTOSTOREYOUR
BACKUPFILES YOUCANCREATEATEMPORARY,6-PARTITIONTOSTAGEYOURBACKUPSBEFORESENDINGTHEMOFFTO
TAPE4HISCANBEDONEUSINGTHE[eRaTPcTCOMMAND"EFORECREATINGANEW,6-PARTITION MAKESURE
YOUHAVEENOUGHFREESPACEINYOURVOLUMEGROUPUSINGTHEeVSXb_[PhCOMMAND
Ja^^c/T]ZSQ mLeVSXb_[Ph
E^[d\TVa^d_
E6=P\TE64gP3Q

E6BXiT$$%'61
?4BXiT#<1
C^cP[?4 #!$# 
0[[^R?4BXiT#$'!# &(61
5aTT?4BXiT(%& &"&&'61

4HEeVSXb_[PhCOMMANDSHOWSTHESIZEOFOURVOLUMEGROUP PHYSICALEXTENTS0% CURRENTLYINUSE
ANDTHEAMOUNTOFFREESPACEAVAILABLEINTHEVOLUMEGROUP4HE5aTT?4BXiTATTRIBUTEINDICATESTHAT
WEHAVE'"OFFREESPACEREMAININGINTHEVOLUMEGROUP4HISISPLENTYOFROOMFORUSTOCREATEA
NEW'",6-PARTITIONTOSTOREOURBACKUPIMAGES
&IRSTWELLUSETHE[eRaTPcTCOMMANDTOCREATEANEW'",6-PARTITION
Ja^^c/T]ZSQ mL[eRaTPcT;!$6]STeE64gP3QbhbQPRZ
;^VXRP[e^[d\TbhbQPRZRaTPcTS
.OWWECANCREATEANEWFILESYSTEMONTHEbhbQPRZPARTITION
Ja^^c/T]ZSQ mL\ZUbTgc"\Q#(%STeE64gP3QbhbQPRZ
\ZT!Ub "(!(<Ph!%
...
FaXcX]VX]^STcPQ[Tb)S^]T
2aTPcX]VY^da]P["!&%'Q[^RZb)S^]T
FaXcX]Vbd_TaQ[^RZbP]SUX[TbhbcT\PRR^d]cX]VX]U^a\PcX^])S^]T
...
.EXTWELLCREATEATARGETDIRECTORYANDMOUNTTHENEWFILESYSTEM
Ja^^c/T]ZSQ mL\ZSXa\]cbhbQPRZ
Ja^^c/T]ZSQ mL\^d]cSTeE64gP3QbhbQPRZ\]cbhbQPRZ
Ja^^c/T]ZSQ mLSUZ\]cbhbQPRZ
4HEUSXbZCOMMANDDISPLAYSOURNEWFILESYSTEMANDTHELOGICALVOLUMESWEWANTTOINCLUDEINOUR
SYSTEMBACKUP E64gP3Q;E3QBhb ROOTFILESYSTEM ANDE64gP3Q;E3Q>aP d FILESYSTEM .OTICETHAT
THEQ^^cFILESYSTEMDOESNOTUSETHE,6-FORSTORAGE4HISFILESYSTEMMUSTBEBACKEDUPUSINGTHEcPa
COMMAND4HISISNTAPROBLEM BECAUSETHEQ^^cFILESYSTEMISFAIRLYSMALLANDSTATICSOWEARENT
CONCERNEDWITHTHESEFILESBEINGMODIFIED LOCKED OROPENDURINGTHEBACKUPCYCLE
Ja^^c/T]ZSQ mLSUW
5X[TbhbcT\BXiTDbTS0ePX[DbT<^d]cTS^]
STe\P__TaE64gP3Q;E3QBhb "6("6 (6""
STebSP  !#< %< !< #Q^^c


#(!04%2 2%#/6%2).'%8!$!4!

STe\P__TaE64gP3Q;E3Q>aP ((6 #6'6 $d 


c\_Ub' 6!<' 6 STebW\
STe\P__TaE64gP3QbhbQPRZ!$6 &"<!$6 \]cbhbQPRZ
.OWTHATWEHAVEAPLACETOSTAGEOURBACKUPIMAGESANDWEKNOWTHELOGICALVOLUMESWEWANTTO
BACKUP WEREREADYTOCREATESNAPSHOTSFORTHEANDd FILESYSTEMS5SINGTHE,INUXcX\TCOMMAND
WECANSEETHATITTOOKJUSTOVERSECONDTOCREATEASNAPSHOTFORTHEROOTVOLUME
Ja^^c/T]ZSQ mLcX\T[eRaTPcT; 6b]a^^cNb]P_STeE64gP3Q;E3QBhb 
;^VXRP[e^[d\Ta^^cNb]P_RaTPcTS
aTP[\ %%b
dbTa\$b
bhb\ "b

Ja^^c/T]ZSQ mL[eRaTPcT;$6b]d Nb]P_STeE64gP3Q;E3Q>aP 
;^VXRP[e^[d\Td Nb]P_RaTPcTS
.OTICETHE~; 6AND;$6OPTIONSWEUSEDTOCREATETHESESNAPSHOTS4HE~;PARAMETERDETERMINES
THESIZEOFTHESNAPSHOTVOLUME7HENDATABLOCKSAREMODIFIEDORDELETEDAFTERTHESNAPSHOTISCREATED
THEORIGINALCOPYOFTHEBLOCKISWRITTENTOTHESNAPSHOT)TISIMPORTANTTOSIZETHESNAPSHOTSUFFICIENTLY
TOSTOREANORIGINALCOPYOFALLCHANGEDBLOCKS)FTHESNAPSHOTRUNSOUTOFSPACE ITWILLBEDEACTIVATED
.OWTHATWEHAVESNAPSHOTSTRACKINGCHANGESTOTHEANDd FILESYSTEMS WEAREREADYTOTAKEA
BACKUP4OPROVETHATTHESESNAPSHOTSARECONSISTENT WELLCOPYTHETcRW^bcbFILETOATESTFILEINTHE
a^^cDIRECTORY)FSNAPSHOTSWORKASTHEYARESUPPOSEDTO THISFILEWILLNOTBEINCLUDEDOURBACKUP
BECAUSEITWASCREATEDAFTERTHESNAPSHOTWASCREATED4HECOMMANDLOOKSLIKETHIS
Ja^^c/T]ZSQ mLR_TcRW^bcba^^ccTbcNUX[Tcgc
-OUNTTHESNAPSHOTSASYOUWOULDANYOTHERFILESYSTEM&IRST WELLCREATEADIRECTORYTOUSEASA
MOUNTPOINTFOROURSNAPSHOTS4HENWELLMOUNTTHEROOTANDUSNAPSHOTS
Ja^^c/T]ZSQ mL\ZSXa\]cb]P_
Ja^^c/T]ZSQ mL\^d]cSTeE64gP3Qa^^cNb]P_a^^c\]cb]P_
Ja^^c/T]ZSQ mL\^d]cSTeE64gP3Qd Nb]P_\]cb]P_d 
.OWTHATTHESNAPSHOTSAREMOUNTED WECANBROWSETHEMJUSTLIKEANYOTHERFILESYSTEM4HEYLOOK
ANDFEELJUSTLIKETHEORIGINALFILESYSTEMS WITHONEEXCEPTION)FWELOOKINTHEMOUNTEDSNAPSHOTFORTHE
TESTFILEWECREATED WEDONTSEEIT)TSNOTTHEREBECAUSEITWASCREATEDAFTERTHESNAPSHOTSWERECREATED
ANDSTARTEDTRACKINGCHANGESTOTHEFILESYSTEM
Ja^^c/T]ZSQ mL[b[a^^ccTbcUX[T
afaa a^^ca^^c !"9P]!" ")"a^^ccTbcNUX[Tcgc<- the test file we created

Ja^^c/T]ZSQ mL[b[\]cb]P_a^^ccTbcNUX[Tcgc
[b)\]cb]P_a^^ccTbcUX[T)=^bdRWUX[T^aSXaTRc^ah<- no test file in the snapshot
/NCETHESNAPSHOTSAREMOUNTED THEYCANBEBACKEDUPUSINGANYSTANDARD,INUXBACKUPSOFTWARE
&ORTHISTEST WELLUSETHEcPaCOMMANDTOCREATEATARBALLBACKUPOFTHEANDd FILESYSTEMS3INCE
WEAREBACKINGUPASNAPSHOT WEDONTHAVETOWORRYABOUTFILESTHATAREOPEN LOCKED ORCHANGED
DURINGTHEBACKUP.OTICETHATWEVEALSOINCLUDEDTHEQ^^cDIRECTORYINTHISBACKUP
Ja^^c/T]ZSQ mLRS\]cb]P_
Ja^^c/T]ZSQ b]P_LcPa_YReU\]cbhbQPRZT]ZSQ NbhbcT\NQPRZd_cPaQi!Q^^cK
TgR[dST\]cbhbQPRZT]ZSQ NbhbcT\NQPRZd_cPaQi!K
-c\_T]ZSQ NbhbcT\NQPRZd_bcS^dc!-c\_T]ZSQ NbhbcT\NQPRZd_bcSTaa


#(!04%2 2%#/6%2).'%8!$!4!

7HENTHEBACKUPISFINISHED YOUSHOULDCHECKTHEERRORFILE T]ZSQ NbhbcT\NQPRZd_bcSTaa FORANY


ISSUESLOGGEDDURINGTHEBACKUP)FYOUARESATISFIEDWITHTHEBACKUP YOUCANUNMOUNTANDDROPTHE
SNAPSHOTS9OUWILLCREATEANEWSETOFSNAPSHOTSEACHTIMEYOURUNABACKUP!FTERYOUCOPYTHEBACKUP
IMAGEOFFTOTAPEYOUCANOPTIONALLYUNMOUNTANDDROPTHETEMPORARYPARTITIONYOUCREATEDTOSTOREIT
Ja^^c/T]ZSQ b]P_LRS

Ja^^c/T]ZSQ Ld\^d]c\]cb]P_d 
Ja^^c/T]ZSQ La\SXa\]cb]P_d 

Ja^^c/T]ZSQ Ld\^d]c\]cb]P_
Ja^^c/T]ZSQ La\SXa\]cb]P_

Ja^^c/T]ZSQ L[eaT\^eTSTeE64gP3Qa^^cNb]P_
3^h^daTP[[hfP]cc^aT\^eTPRcXeT[^VXRP[e^[d\Ta^^cNb]P_.Jh]L)h
;^VXRP[e^[d\Ta^^cNb]P_bdRRTbbUd[[haT\^eTS

a^^c/T]ZSQ L[eaT\^eTSTeE64gP3Qd Nb]P_
3^h^daTP[[hfP]cc^aT\^eTPRcXeT[^VXRP[e^[d\Td Nb]P_.Jh]L)h
;^VXRP[e^[d\Td Nb]P_bdRRTbbUd[[haT\^eTS

Ja^^c/aXRdSQ L[eaT\^eTSTeE64gP3QbhbQPRZ
3^h^daTP[[hfP]cc^aT\^eTPRcXeT[^VXRP[e^[d\TbhbQPRZ.Jh]L)h
;^VXRP[e^[d\TbhbQPRZbdRRTbbUd[[haT\^eTS

Ja^^c/T]ZSQ Ld\^d]c\]cbhbQPRZ
Ja^^c/T]ZSQ La\SXa\]cbhbQPRZ

Ja^^c/aXRdSQ L[eaT\^eTSTeE64gP3QbhbQPRZ
3^h^daTP[[hfP]cc^aT\^eTPRcXeT[^VXRP[e^[d\TbhbQPRZ.Jh]L)h
;^VXRP[e^[d\TbhbQPRZbdRRTbbUd[[haT\^eTS
!SDISCUSSEDINTHEOPENINGPARAGRAPH EARLYMODELSOF%XADATA6DIDNOTIMPLEMENT,6-FOR
MANAGINGFILESYSTEMSTORAGE7ITHOUT,6-SNAPSHOTS GETTINGACLEANSYSTEMBACKUPWOULDREQUIRE
SHUTTINGDOWNTHEAPPLICATIONSONTHESERVERINCLUDINGTHEDATABASES ORPURCHASINGTHIRD PARTY
BACKUPSOFTWARE%VENTHEN THEREWOULDBENOWAYTOCREATEABACKUPINWHICHALLFILESARECONSISTENT
WITHTHESAMEPOINTINTIME,6-SNAPSHOTSFILLANIMPORTANTGAPINTHE%XADATABACKUPANDRECOVERY
ARCHITECTUREANDOFFERASIMPLE MANAGEABLESTRATEGYFORBACKINGUPTHEDATABASESERVERS,ATERINTHIS
CHAPTERWELLDISCUSSHOWTHESEBACKUPSAREUSEDFORRESTORINGTHEDATABASESERVERWHENFILESYSTEMSARE
LOSTORDAMAGED

"ACKING5PTHE3TORAGE#ELL
4HEFIRSTTWODISKSINASTORAGECELLCONTAINTHE,INUXOPERATINGSYSTEM4HESE,INUXPARTITIONSARE
COMMONLYREFERREDTOASTHEsystem volumes "ACKINGUPTHESYSTEMVOLUMESUSINGINDUSTRYSTANDARD
,INUXBACKUPSOFTWAREISNOTRECOMMENDED3OHOWDOYOUBACKUPTHESYSTEMVOLUMES7ELL THE
ANSWERISTHATYOUDONT%XADATAAUTOMATICALLYDOESTHISFORYOUTHROUGHTHEUSEOFANINTERNAL53"
DRIVECALLEDTHECELLBOOT USB flash drive)FYOUARETHECAUTIOUSSORT YOUCANALSOCREATEYOUROWNCELL
RECOVERYIMAGEUSINGANEXTERNAL53"FLASHDRIVE)NADDITIONTOTHE#%,,"//453"FLASHDRIVE %XADATA
ALSOMAINTAINS ONASEPARATESETOFDISKPARTITIONS AFULLCOPYOFTHESYSTEMVOLUMESASTHEYWEREBEFORE
THELASTPATCHWASINSTALLED4HESEBACKUPPARTITIONSAREUSEDFORROLLINGBACKAPATCH.OWLETSTAKEA
LOOKATHOWTHESEBACKUPMETHODSWORK


#(!04%2 2%#/6%2).'%8!$!4!

CELLBOOT USB Flash Drive


9OUCANTHINKOFTHEINTERNAL#%,,"//453"FLASHDRIVEASYOUWOULDANYEXTERNAL53"DRIVEYOUWOULD
PLUGINTOYOURLAPTOP4HEDEVICECANBESEENUSINGTHEUSXbZCOMMANDASFOLLOWS
JT]ZRT[ )a^^cLa^^c
-USXbZ[STebSPR

3XbZSTebSPR)#(<1#(&$#%!#QhcTb
!#WTPSb%!bTRc^abcaPRZ  'Rh[X]STab
D]Xcb,Rh[X]STab^U&%''$ !,"("%!$%QhcTb

3TeXRT1^^cBcPac4]S1[^RZb8SBhbcT\
STebSPR    &"((" &'";X]dg
*USTFORFUN WEMOUNTEDTHEINTERNAL53"FLASHDRIVETOTAKEAPEEKATWHAT/RACLEINCLUDEDINTHIS
BACKUP4HEFOLLOWINGLISTINGSHOWSTHECONTENTSOFTHISDEVICE
JT]ZRT[ )a^^cLa^^c
\^d]cSTebSPR \]cdbQ

JT]ZRT[ )a^^cL\]cdbQ
-[b[
c^cP[#'!
agag a^^ca^^c!#'3TR&&)$'Q^^cRPc
agag a^^ca^^c %3TR&&)$$Q^^c\bV
Safgagag!a^^ca^^c#(%3TR & )##RT[[QXcb
Safgagag!a^^ca^^c#(%3TR & )##VadQ
afaa a^^ca^^c %3TR & )##8NP\N24;;1>>CNdbQ
agag a^^ca^^c'$#3TR & ) "X\PVTXS
agag a^^ca^^c## 3TR & ) #X\VQ^^c[bc
afafa a^^ca^^c%$&('##3TR&&)$X]XcaS!% ' (#" !T[$X\V
afaa a^^ca^^c%'''  3TR & )##X]XcaS!% ' (#" "T[$X\V
agag a^^ca^^c!(&#&'3TR & ) #X]XcaSX\V
agag a^^ca^^c %#'3TR&&)$$8B>[X]dgQX]
agag a^^ca^^c(&3TR&&)$$8B>[X]dgRUV
afaa a^^ca^^c!"3TR & )##ZTa]T[eTa
Safgagag#a^^ca^^c#(%3TR & )#"[Pbc6^^S2^]UXV
Safgagag!a^^ca^^c#(%3TR & )#$[^V
Safg!a^^ca^^c %"'#3TR & )#![^bcU^d]S
agag a^^ca^^c(#%3TR&&)$$\T\cTbc
agag a^^ca^^c&"!%3TR&&)$$b_[PbW[bb
agag a^^ca^^c &&3TR&&)$$caP]bcQ[
agag a^^ca^^c ($$ 3TR&&)$$e\[X]di
afaa a^^ca^^c ($$ <Ph!&! e\[X]di!% ' (#" !T[$
afa a^^ca^^c ($$ 3TR & )!"e\[X]di!% ' (#" "T[$
)NTHISBACKUPWESEETHE,INUXBOOTIMAGESANDALLTHEFILESREQUIREDTOBOOT,INUXANDRESTORETHE
OPERATINGSYSTEM.OTICETHATYOUALSOSEEADIRECTORYCALLED[Pbc6^^S2^]UXV4HISDIRECTORYISABACKUP
OFTHE^_c^aPR[TRT[[^bXb^DIRECTORYONOURSTORAGECELL4HEREISALSOADIRECTORYCALLEDRT[[QXcb
CONTAININGTHE#ELL3ERVERSOFTWARE3ONOTONLYDOWEHAVEACOMPLETECOPYOFEVERYTHINGNEEDEDTO
RECOVEROURSTORAGECELLTOABOOTABLESTATEONTHEINTERNAL53"DRIVE BUTWEALSOHAVEANONLINEBACKUP
OFALLOFOURIMPORTANTCELLCONFIGURATIONFILESAND#ELL3ERVERBINARIES


#(!04%2 2%#/6%2).'%8!$!4!

External USB Drive


)NADDITIONTOTHEBUILT IN#%,,"//453"FLASHDRIVE %XADATAALSOPROVIDESAWAYTOCREATEYOUROWN
EXTERNALBOOTABLERECOVERYIMAGEUSINGACOMMONn'"53"FLASHDRIVEYOUCANBUYATTHELOCAL
ELECTRONICSSTORE%XADATAWILLCREATETHERESCUEIMAGEONTHEFIRSTEXTERNAL53"DRIVEITFINDS SOBEFORE
YOUCREATETHISRECOVERYIMAGEYOUMUSTREMOVEALLOTHEREXTERNAL53"DRIVESFROMTHESYSTEMORTHE
SCRIPTWILLTHROWAWARNINGANDEXIT
2ECALLTHAT%XADATASTORAGECELLSMAINTAINTWOVERSIONSOFTHEOPERATINGSYSTEMANDCELLSOFTWARE
ACTIVEANDINACTIVE4HESEAREMANAGEDASTWOSEPARATESETSOFDISKPARTITIONSFORTHEAND^_c^aPR[T
FILESYSTEMSASCANBECONFIRMEDUSINGTHEX\PVTX]U^COMMAND ASFOLLOWS
-X\PVTX]U^kVaT_STeXRT
0RcXeTbhbcT\_PacXcX^]^]STeXRT)STe\S%
0RcXeTb^UcfPaT_PacXcX^]^]STeXRT)STe\S'
8]PRcXeTbhbcT\_PacXcX^]^]STeXRT)STe\S$
8]PRcXeTb^UcfPaT_PacXcX^]^]STeXRT)STe\S&
4HEX\PVTX]U^COMMANDSHOWSTHECURRENT!CTIVE ANDPREVIOUS)NACTIVE SYSTEMVOLUMESONTHE
STORAGECELL5SINGTHESUCOMMANDWECANSEETHATWEAREINDEEDCURRENTLYUSINGTHE!CTIVEPARTITIONS
STe\S%ANDSTe\S' IDENTIFIEDINTHEOUTPUTFROMTHEX\PVTX]U^COMMAND
-SUkTVaT_5X[TbhbcT\k\S%k\S'

5X[TbhbcT\ :Q[^RZbDbTS0ePX[PQ[TDbT<^d]cTS^]
STe\S% " &&$!%%"!'"%" %'#%'
STe\S'!%"##%$#($% ""%%'"#^_c^aPR[T
"YDEFAULT THE\PZTNRT[[Q^^cNdbQCOMMANDWILLCREATEARESCUEIMAGEOFYOURACTIVECONFIGURATION
THEONEYOUARECURRENTLYRUNNING 4HE~X]PRcXeTOPTIONALLOWSYOUTOCREATEARESCUEIMAGEFROMTHE
PREVIOUSCONFIGURATION4HEINACTIVEPARTITIONSARETHESYSTEMVOLUMESTHATWEREACTIVEWHENTHELAST
PATCHWASINSTALLED
4HE\PZTNRT[[Q^^cNdbQCOMMANDISUSEDTOCREATEABOOTABLERESCUEIMAGE4OCREATEANEXTERNAL
RESCUEIMAGE ALLYOUHAVETODOISPLUGA53"FLASHDRIVEINTOONEOFTHE53"PORTSONTHEFRONTPANELOF
THESTORAGECELLANDRUNTHE\PZTNRT[[Q^^cNdbQCOMMAND

■#AUTION4HERESCUEIMAGEWILLBECREATEDONTHEFIRSTEXTERNAL53"DRIVEFOUNDONTHESYSTEM"EFORECREATING
ANEXTERNALRESCUEIMAGE REMOVEALLOTHEREXTERNAL53"DRIVESFROMTHESYSTEM

&OREXAMPLE THEFOLLOWINGLISTINGSHOWSTHEPROCESSOFCREATINGANEXTERNAL53"RESCUEIMAGE4HE
OUTPUTFROMTHE\PZTNRT[[Q^^cNdbQSCRIPTISFAIRLYLENGTHY ALITTLEOVERLINES SOWEWONTSHOWALLOF
ITHERE3OMEOFTHEOUTPUTEXCLUDEDFROMTHEFOLLOWINGLISTINGINCLUDESOUTPUTFROMTHEUSXbZCOMMAND
THATISUSEDTOCREATEPARTITIONSONTHE53"DRIVE FORMATTINGOFTHEFILESYSTEMS ANDTHEMANYFILESTHAT
ARECOPIEDTOCREATETHEBOOTABLERESCUEDISK
JT]ZRT[ )a^^cL^_c^aPR[TBd__^acC^^[b
-\PZTNRT[[Q^^cNdbQ

2P]SXSPcTU^acWT>aPR[T4gPSPcP2T[[bcPacd_Q^^cSTeXRT)STebSPS


#(!04%2 2%#/6%2).'%8!$!4!

?PacXcX^]^]RP]SXSPcTSTeXRT)STebSPS 
CWTRdaaT]c_a^SdRceTabX^]) ! !%
...
BTccX]VX]cTaeP[QTcfTT]RWTRZbc^bTR^]Sb
2^_hX]VX\VQ^^c[bcc^\]cdbQ\PZTRT[[Q^^c
2^_hX]VQ^^cRPcc^\]cdbQ\PZTRT[[Q^^c
2^_hX]VQ^^c\bVc^\]cdbQ\PZTRT[[Q^^c
2^_hX]VX\PVTXSc^\]cdbQ\PZTRT[[Q^^c
2^_hX]VX]XcaSX\Vc^\]cdbQ\PZTRT[[Q^^c
2^_hX]VXb^[X]dgQX]c^\]cdbQ\PZTRT[[Q^^c
2^_hX]VXb^[X]dgRUVc^\]cdbQ\PZTRT[[Q^^c
2^_hX]V\T\cTbcc^\]cdbQ\PZTRT[[Q^^c
2^_hX]Vb_[PbW[bbc^\]cdbQ\PZTRT[[Q^^c
2^_hX]VcaP]bcQ[c^\]cdbQ\PZTRT[[Q^^c
2^_hX]Ve\[X]dic^\]cdbQ\PZTRT[[Q^^c
2^_hX]VRT[[QXcbRT[[QX]c^\]cdbQ\PZTRT[[Q^^cRT[[QXcb
2^_hX]VRT[[QXcbRT[[Q^^ccQic^\]cdbQ\PZTRT[[Q^^cRT[[QXcb
2^_hX]VRT[[QXcbRT[[UfcQic^\]cdbQ\PZTRT[[Q^^cRT[[QXcb
2^_hX]VRT[[QXcbRT[[a_\bcQic^\]cdbQ\PZTRT[[Q^^cRT[[QXcb
...
2^_hX]V[Pbc6^^S2^]UXVRT[[R^]Uc^\]cdbQ\PZTRT[[Q^^c[Pbc6^^S2^]UXV
2^_hX]V[Pbc6^^S2^]UXVRT[[RT[[baeST_[^hR^]UXVRT[[NSXbZNR^]UXVg\[c^
...
2^_hX]V[Pbc6^^S2^]UXVTcRbbWbbWNW^bcNZTh_dQc^
\]cdbQ\PZTRT[[Q^^c[Pbc6^^S2^]UXVTcRbbW
2^_hX]V[Pbc6^^S2^]UXVTcRbbWbbWNW^bcNSbPNZThc^
\]cdbQ\PZTRT[[Q^^c[Pbc6^^S2^]UXVTcRbbW
2^_hX]V[Pbc6^^S2^]UXVa^^cNbbWcQic^\]cdbQ\PZTRT[[Q^^c[Pbc6^^S2^]UXV
2^_hX]V[Pbc6^^S2^]UXVRT[[\^]Xc^aNbbWcQic^\]cdbQ\PZTRT[[Q^^c[Pbc6^^S2^]UXV
Ad]]X]VcPagY_2\]cdbQ\PZTRT[[Q^^cU
^_c^aPR[TRT[[^bXb^RT[[QXcbRT[[Q^^ccQiVadQ
2^_hX]V^_c^aPR[TRT[[^bc\_[DB1NVadQc^\]cdbQ\PZTRT[[Q^^cVadQVadQR^]U
2^_hX]V^_c^aPR[TRT[[^bc\_[^aPR[Tg_\Vic^\]cdbQ\PZTRT[[Q^^cVadQ^aPR[Tg_\Vi
...
6=D6AD1eTabX^](&%#:[^fTa"&!:d__Ta\T\^ah

J<X]X\P[10B7[XZT[X]TTSXcX]VXbbd__^acTS5^acWTUXabcf^aSC01
[Xbcb_^bbXQ[TR^\\P]SR^\_[TcX^]b0]hfWTaTT[bTC01[XbcbcWT_^bbXQ[T
R^\_[TcX^]b^UPSTeXRTUX[T]P\TL
VadQ-a^^cWS
5X[TbhbcT\ch_TXbTgc!Ub_PacXcX^]ch_Tg'"
VadQ-bTcd_WS
2WTRZX]VXUQ^^cVadQbcPVT TgXbcb]^
2WTRZX]VXUVadQbcPVT TgXbcbhTb
2WTRZX]VXUVadQbcPVT!TgXbcbhTb
2WTRZX]VXUVadQT!UbNbcPVT N$TgXbcbhTb
Ad]]X]VT\QTSVadQT!UbNbcPVT N$WS $bTRc^abPaTT\QTSSTS
bdRRTTSTS
Ad]]X]VX]bcP[[VadQbcPVT WSWS  $_WSVadQbcPVT!VadQVadQR^]U
bdRRTTSTS
3^]T
VadQ-


#(!04%2 2%#/6%2).'%8!$!4!

(EREYOUCANSEETHATTHE\PZTNRT[[Q^^cNdbQSCRIPTCOPIESOVERALLOFTHESTORAGECELLSOFTWARE
RT[[QXcb ANDCONFIGURATIONFILES[Pbc6^^S2^]UXV ITNEEDSTORECOVERTHESTORAGECELL&INALLY YOUSEE
THATTHE'RUBBOOTLOADERISINSTALLEDONTHE53"DRIVESOYOUCANBOOTTHESYSTEMFROMIT7HENTHE
SCRIPTCOMPLETES YOUCANREMOVETHEEXTERNAL53"DISKFROMTHESYSTEM4HISRESCUEDISKCANLATERBE
USEDFORRESTORINGYOURSTORAGECELLTOWORKINGCONDITIONSHOULDTHENEEDARISE

!CTIVEAND)NACTIVE3YSTEM6OLUMES
%XADATAHASTHREEMODESFORINSTALLINGSOFTWAREFIRSTTIMEINSTALL PATCHORin-partition patch ANDAN
out-of-partition upgrade!JOURNALOFYOURINSTALLATIONHISTORYCANBESEENUSINGTHEX\PVTWXbc^ah
COMMAND
-X\PVTWXbc^ah
ETabX^]) ! !"
8\PVTPRcXePcX^]SPcT)! $ $!)&)&&
8\PVX]V\^ST)fresh
8\PVX]VbcPcdb)bdRRTbb

ETabX^]) ! !%
8\PVTPRcXePcX^]SPcT)! %"() )'&
8\PVX]V\^ST)patch
8\PVX]VbcPcdb)bdRRTbb
...
ETabX^]) !!!  !%!
8\PVTPRcXePcX^]SPcT)!  ! & )#$) &%
8\PVX]V\^ST)out of partition upgrade
8\PVX]VbcPcdb)bdRRTbb
4HEP[[OPTIONCANBEUSEDTOSHOWMUCHMOREDETAILABOUTYOURSOFTWAREINSTALLATIONHISTORY

In-Partition Patches
!SDISCUSSEDEARLIER %XADATAMAINTAINSTWOSETSOFSYSTEMVOLUMES !CTIVE AND)NACTIVE)N PARTITION
PATCHESARERARE"UTWHENANIN PARTITIONPATCHISPERFORMED THEPATCHISAPPLIEDTOTHE!CTIVESYSTEM
IMAGE%XADATASAVESACOPYOFTHEFILESANDSETTINGSTHATWERECHANGEDDURINGTHEINSTALLATIONPROCESSSO
YOUCANBACKOUTTHEPATCHLATERIFNEEDED

Out-of-Partition Upgrades
7HENANOUT OF PARTITIONUPGRADEISPERFORMED %XADATAINSTALLSTHESOFTWAREINTOTHE)NACTIVESYSTEM
VOLUMES)FTHEINSTALLATIONFAILS THECELLWILLCONTINUETOBOOTFROMTHECURRENT!CTIVE SYSTEMIMAGE
4HISISHOW%XADATAENSURESTHATAFAILEDUPGRADEDOESNOTCAUSEANEXTENDEDOUTAGE)FTHEUPGRADE
COMPLETESSUCCESSFULLY %XADATASETSTHEUPGRADEDVOLUMESTO!CTIVESTATUSANDCHANGESTHEOLD!CTIVE
VOLUMESTO)NACTIVE)TTHENUPDATESTHEQ^^cVadQVadQR^]UFILEWITHTHEDEVICENAMEOFTHENEWLY
ACTIVATEDROOTFILESYSTEMANDREBOOTS$URINGTHEBOOTPROCESS THE'RUBBOOTLOADERREADSTHE
VadQR^]UFILETOFINDTHEDEVICEITWILLUSEFORMOUNTINGTHEROOTFILESYSTEM!QUICKLOOKATTHE
VadQR^]UFILESHOWSTHATOUR!CTIVEPARTITIONFORTHEROOTFILESYSTEMISSTe\S%
-VaT_ZTa]T[Q^^cVadQVadQR^]UkRdcR $"kWTPS 
ZTa]T[e\[X]di!% ' (#" "T[$a^^c,STe\S%


#(!04%2 2%#/6%2).'%8!$!4!

4HEX\PVTX]U^COMMANDDISPLAYSEVERYTHINGWENEEDTOKNOWABOUTOUR!CTIVEAND)NACTIVESYSTEM
IMAGES INCLUDINGTHEPARTITIONDEVICENAMES WHENTHEIMAGEWASCREATEDINSTALLED WHENITWAS
ACTIVATED ANDWHETHERORNOTYOUCANROLLBACKTOITSWITCHITTOTHE!CTIVEIMAGE !LSONOTICETHATTHE
INTERNAL#%,,"//453"FLASHDRIVEWEDISCUSSEDEARLIERISLISTEDSTebSPR 
-X\PVTX]U^P[[

:Ta]T[eTabX^])!% ' (#" "T[$ B<?CdT0dV" !!)# ) "43C! g'%N%#
2T[[eTabX^])>BBN !"N;8=DGG%#N  !%!
2T[[a_\eTabX^])RT[[ !!!N;8=DGG%#N  !%! 

0RcXeTX\PVTeTabX^]) !!!  !%!
Active image created: 2010-12-07 05:55:51 -0800
Active image activated: 2010-12-17 11:45:17 -0600
0RcXeTX\PVTch_T)_a^SdRcX^]
0RcXeTX\PVTbcPcdb)bdRRTbb
0RcXeTX]cTa]P[eTabX^])
0RcXeTX\PVT[PQT[)>BBN !"N;8=DGG%#N  !%!
0RcXeT]^STch_T)BC>A064
0RcXeTbhbcT\_PacXcX^]^]STeXRT)STe\S%
0RcXeTb^UcfPaT_PacXcX^]^]STeXRT)STe\S'

In partition rollback: Impossible

Cell boot usb partition: /dev/sdac1
Cell boot usb version: 11.2.2.2.0.101206.2

8]PRcXeTX\PVTeTabX^]) !!    $
8]PRcXeTX\PVTRaTPcTS)!  $ $)$)! &
8]PRcXeTX\PVTPRcXePcTS)!   ' #)#')#(%
8]PRcXeTX\PVTch_T)_a^SdRcX^]
8]PRcXeTX\PVTbcPcdb)bdRRTbb
8]PRcXeTX]cTa]P[eTabX^])  $
8]PRcXeTX\PVT[PQT[)>BBN !!  N;8=DGG%#N  $
8]PRcXeT]^STch_T)BC>A064
8]PRcXeTbhbcT\_PacXcX^]^]STeXRT)STe\S$
8]PRcXeTb^UcfPaT_PacXcX^]^]STeXRT)STe\S&

Boot area has rollback archive for the version: 11.2.2.1.1.101105
Rollback to the inactive partitions: Possible
%XADATASTORAGECELLSAREANELEGANTBLENDOF,INUXCOMMANDSANDPROPRIETARYPROGRAMS4HEMORE
WEPOKEAROUNDTHROUGHTHEIRSCRIPTS PROCESSES ANDDOCUMENTATION THEGREATEROURAPPRECIATIONOFTHE
ARCHITECTUREANDWHAT/RACLEHASDONETOBUILDINSOFTWAREREDUNDANCYANDRECOVERY4HESTORAGECELLS
MAINTAINABOOTABLECELLRECOVERYIMAGEONANINTERNAL53"FLASHDISKASWELLASANONLINECOPYOF
EVERYTHING%XADATANEEDSTOCREATEANEXTERNALBOOTABLERECOVERYIMAGE4HISSECONDARYCOPYOFYOUR
CONFIGURATIONPROVIDESACONVENIENTWAYTORESTOREINDIVIDUALFILESIFNEEDED4HESEAREALLINADDITIONTO
%XADATASABILITYTOROLLBACKPATCHESANDUPGRADESCONVENIENTLY!LLTHESEBUILT INFEATURESPROVIDE
CONVENIENTRECOVERYFROMVARIOUSUSERERRORSANDPROTECTIONFROMISSUESTHATCANARISEWHENPATCHINGOR
UPGRADINGTHESTORAGECELL


#(!04%2 2%#/6%2).'%8!$!4!

Backing Up the Database


%XADATAREPRESENTSALEAPFORWARDINCAPACITYANDPERFORMANCE*USTAFEWYEARSAGO LARGEDATABASES
WEREDESCRIBEDINTERMSOFGIGABYTES4ODAYITSNOTUNCOMMONTOFINDDATABASESMEASUREDINTERABYTES
)TWASNTLONGAGOWHENATABLEWASCONSIDEREDHUGEIFITCONTAINEDTENSOFMILLIONSOFROWS4ODAY WE
COMMONLYSEETABLESTHATCONTAINTENSOFBILLIONSOFROWS4HISTRENDMAKESITCLEARTHATWEWILLSOONSEE
DATABASESMEASUREDINEXABYTES!SYOUMIGHTIMAGINE THISCREATESSOMEUNIQUECHALLENGESFORBACKUP
ANDRECOVERY4HETOOLSFORBACKINGUP%XADATADATABASESHAVENOTFUNDAMENTALLYCHANGED ANDTHE
NEEDTOCOMPLETEBACKUPSINAREASONABLEPERIODOFTIMEISBECOMINGINCREASINGLYDIFFICULTTOACHIEVE
3OMEOFTHESTRATEGIESWELLDISCUSSHEREWILLNOTBENEW"UTWEWILLBELOOKINGATWAYSTOLEVERAGETHE
SPEEDOFTHEPLATFORMSOBACKUPPERFORMANCECANKEEPPACEWITHTHEINCREASINGVOLUMEOFYOUR
DATABASES

$ISK "ASED"ACKUPS
/RACLEGINTRODUCEDUSTOANEWFEATURECALLEDTHEFlash Recovery Area,WHICHEXTENDED2ECOVERY
-ANAGERSSTRUCTUREDAPPROACHTOMANAGINGBACKUPS2ECENTLYTHISFEATUREHASBEENRENAMEDTOTHE
Fast Recovery Area(FRA)4HE&2!ISASTORAGEAREAMUCHLIKEANYOTHERDATABASESTORAGE)TCANBE
CREATEDONRAWDEVICES BLOCKDEVICES FILESYSTEMS ANDOFCOURSE !3-3INCETHE&2!UTILIZESDISK BASED
STORAGE ITPROVIDESAVERYFASTSTORAGEMEDIUMFORDATABASERECOVERY4HISISESPECIALLYTRUEWHENUSING
%XADATASHIGH PERFORMANCESTORAGEARCHITECTURE%LIMINATINGTHENEEDTORETRIEVEBACKUPSFROMTAPE
CANSHAVEHOURSANDSOMETIMESDAYSOFFTHETIMEITTAKESTORECOVERYOURDATABASES!ND SINCETHE&2!
ISANEXTENSIONOFTHEDATABASE /RACLEAUTOMATICALLYMANAGESTHATSPACEFORYOU7HENFILESINTHE&2!
AREBACKEDUPTOTAPETHEYARENOTIMMEDIATELYDELETED4HEYAREINSTEADKEPTONLINEASLONGASTHEREIS
ENOUGHFREESPACETODOSO7HENMORESPACEISNEEDED THEDATABASEDELETESINA&)&/MANNER
ENOUGHOFTHESEFILESTOPROVIDETHENEEDEDSPACE

4APE "ASED"ACKUPS
5SINGTHE&2!FORDISK BASEDBACKUPSCANGREATLYIMPROVETHETIMEITTAKESTORECOVERYOURDATABASES
BUTITDOESNOTELIMINATETHENEEDFORTAPEBACKUPS!SAMATTEROFFACT TAPE BASEDBACKUPSAREREQUIRED
FORBACKINGUPTHE&2!-OVINGLARGEQUANTITIESOFBACKUPDATATOTAPECANBEACHALLENGE ANDWITHTHE
VOLUMEOFDATATHATCANBESTOREDON%XADATA THENEEDFORHIGH PERFORMANCETAPEBACKUPSISCRITICAL
%XADATA6COMESEQUIPPEDWITH'IGABIT%THERNET'IG% PORTSTHATAREEACHCAPABLEOFDELIVERING
THROUGHPUTUPTOMEGABITSPERSECOND%XADATA8 COMESWITHTWO'IGABIT%THERNETPORTS
EACHCAPABLEOFDELIVERINGUPTOTIMESTHETHROUGHPUTOFTHE'IG%PORTSOFTHE64HEPROBLEMISTHAT
EVENTHE'IG%PORTSBETWEEN%XADATAANDTHETAPELIBRARYSMEDIASERVERMAYNOTBEFASTENOUGHTO
KEEPUP
!COMMONSOLUTIONTOTHISPROBLEMISTOINSTALLA'BPS1$2)NFINI"ANDCARDORTWO INTOTHE
MEDIASERVER ALLOWINGITTOBELINKEDDIRECTLYINTOTHESPAREPORTSONTHE%XADATA)NFINI"ANDNETWORK
SWITCH&IGURE ILLUSTRATESACOMMONBACKUPCONFIGURATIONTHATLEVERAGESTHEHIGH SPEED)NFINI"AND
NETWORKINSIDETHE%XADATARACKTOPROVIDEHIGH SPEEDBACKUPSTOTAPE


#(!04%2 2%#/6%2).'%8!$!4!

Media Server
Infiniband

RMAN 2/4 channels

Tape Library
2/4 Drives
Figure 9-1. Exadata backup architecture

&ORVERYLARGEDATABASES ONE)NFINI"ANDCARDMAYNOTPROVIDETHETHROUGHPUTNEEDEDTOCOMPLETE
BACKUPSINAREASONABLETIME&OR/RACLE2!#DATABASES BACKUPSCANBEPARALLELIZEDANDDISTRIBUTED
ACROSSANYORALLNODESINTHE2!#CLUSTER&OR%XADATAFULLRACKCONFIGURATIONS THISMEANSYOUCANHAVE
UPTONODESINASINGLERACK PARTICIPATINGINTHEBACKUPWORKLOAD)NSTALLINGADDITIONAL)NFINI"AND
CARDSINTOTHEMEDIASERVERALLOWSYOUTOINCREASETHETHROUGHPUTIN'BPSINCREMENTS'"
EFFECTIVE UPTOTHELIMITSOFTHEMEDIASERVER!NADDITIONALMEDIASERVERCANBEADDEDTOTHE
CONFIGURATIONANDLOAD BALANCEDTOEXTENDPERFORMANCEEVENFURTHER/RACLES-!!GROUPPUBLISHEDA
VERYGOODWHITEPAPERENTITLEDh"ACKUPAND2ECOVERY0ERFORMANCEAND"EST0RACTICESFOR%XADATA#ELL
ANDTHE3UN/RACLE$ATABASE-ACHINE vINWHICHTHEYREPORTEDBACKUPRATESOFUPTO -"SECOR
4"HRFORTAPEBACKUPS

"ACKUPFROM3TANDBY$ATABASE
)FYOUAREPLANNINGTOSETUPADISASTERRECOVERYSITEUSING$ATA'UARD YOUHAVETHEOPTIONOFOFFLOADING
YOURDATABASEBACKUPSTOTHESTANDBYDATABASE4HISISNOTINANYWAYAN%XADATAFEATURE SOWEWILL
ONLYTOUCHBRIEFLYONTHESUBJECT4HEMAINPURPOSEOFTHESTANDBYDATABASEISTOTAKEOVERTHE
PRODUCTIONLOADINTHEEVENTTHATTHEPRIMARYDATABASEEXPERIENCESATOTALFAILURE(OWEVER USINGA
PHYSICALSTANDBYDATABASEALSOPROVIDESANADDITIONALBACKUPFORYOURPRIMARYDATABASE)FADATAFILE
FROMTHEPRIMARYDATABASEISLOST AREPLACEMENTDATAFILEFROMTHESTANDBYDATABASECANBEUSEDTO
REPLACEIT/NCETHEFILEHASBEENRESTOREDTOTHEPRIMARYDATABASE ARCHIVEDREDOLOGSAREUSEDTORECOVER
THEDATAFILEUPTOTHECURRENT3#.OFTHEDATABASE4HESTANDBYDATABASEISTYPICALLYMOUNTEDBUTNOT
OPEN DURINGNORMALOPERATIONS#OLDBACKUPSCANBEMADEFROMTHESTANDBYTOTHE&AST2ECOVERY!REA
&2! ANDTHENTOTAPE"ACKUPSFROMTHESTANDBYDATABASECANBERESTOREDDIRECTLYTOTHEPRIMARY
DATABASE4HISPROVIDESTHREELEVELSOFRECOVERYTOCHOOSEFROMBEFOREDECIDINGWHETHERAFAILOVERTOTHE
STANDBYISNECESSARY
)TISBESTTOUSEAN%XADATAPLATFORMFORYOURSTANDBYDATABASE4HISISBECAUSEALTHOUGHTABLESTHAT
USE(YBRID#OLUMNAR#OMPRESSION(## WILLREPLICATETONON %XADATADATABASESJUSTFINE YOUWILLNOT
BEABLETOREADFROMTHEM4HEDATABASEKERNELONNON %XADATADATABASESCANNOTREAD(##


#(!04%2 2%#/6%2).'%8!$!4!

COMPRESSEDDATA&OREXAMPLE THEFOLLOWINGERRORISRETURNEDWHENYOUSELECTFROMAN(##TABLEONA
STANDARDXDATABASE
B@;-bT[TRcSXbcX]RcbTV\T]cN]P\TUa^\QXVcPQNPaRWNWXVW*
bT[TRcSXbcX]RcbTV\T]cN]P\TUa^\b\P[[NcPQ[TNPaRWNWXVW

4AA>APc[X]T )
>A0%#"&)WhQaXSR^[d\]PaR^\_aTbbX^]Xb^][hbd__^acTSX]cPQ[Tb_PRTbaTbXSX]V^]4gPSPcP
bc^aPVT
9OURCOMPRESSEDDATAISSTILLINTACT9OUJUSTCANNOTREADITUNLESSYOUFIRSTUNCOMPRESSIT(##
COMPRESSEDTABLESCANBEUNCOMPRESSEDONNON %XADATADATABASESUSINGTHE0;C4AC01;4<>E4
COMMANDASFOLLOWS
B@;-P[cTacPQ[T186C01N0A278E4N7867\^eT]^R^\_aTbb*
0ARTITIONEDTABLESCANBEUNCOMPRESSEDINASIMILARMANNER ANDTHEOPERATIONCANBEPARALLELIZED
USINGTHE_PaP[[T[OPTION ASYOUCANSEEINTHEFOLLOWINGCOMMAND
B@;-P[cTacPQ[T186C01N0A278E4N7867\^eT_PacXcX^]90=N! ]^R^\_aTbb_PaP[[T[*
/NCETHETABLEISUNCOMPRESSED ITCANBEREADFROMANON %XADATADATABASE+EEPINMINDTHAT
WITHTHEHIGHDEGREEOFCOMPRESSION(##PROVIDES YOUMUSTTAKEINTOCONSIDERATIONTHEADDITIONALDISK
STORAGETHATWILLBEREQUIREDBYTHEUNCOMPRESSEDTABLEORPARTITION WHICHCANBEQUITESUBSTANTIAL

%XADATA/PTIMIZATIONSFOR2-!.
7HEN2-!.PERFORMSANINCREMENTALBACKUPONTHE%XADATAPLATFORM RT[[baeFILTERSOUTUNWANTED
BLOCKSANDSENDSBACKONLYTHOSETHATHAVECHANGEDSINCETHELASTLEVELORLEVELBACKUP4HIS
IMPROVESTHEPERFORMANCEOFINCREMENTALBACKUPSANDREDUCESTHEWORKLOADONTHEDATABASESERVER
"UTEVENWHENONLYARELATIVELYSMALLNUMBEROFBLOCKSHAVECHANGED DISCOVERINGTHEMISAVERY)/
INTENSIVEPROCESS BECAUSEEVERYBLOCKINTHEDATABASEMUSTBEEXAMINEDTODETERMINEWHICHONESHAVE
CHANGEDSINCETHELASTINCREMENTALBACKUP4HISISTRUEFORBOTH%XADATAANDNON %XADATADATABASES
4HEONLYDIFFERENCEISWHERETHEWORKISDONEONTHEDATABASESERVER ORONTHESTORAGECELLS!FEWYEARS
AGO /RACLEGINTRODUCEDblock change tracking"#4 TOADDRESSTHISPROBLEM/FCOURSETHISWASLONG
BEFORE%XADATACAMEONTOTHESCENE4HISFEATUREMAINTAINSABITMAPSTRUCTUREINAFILECALLEDTHEBLOCK
CHANGETRACKINGFILE%ACHBITINTHE"#4FILEBITPER+OFDATA REPRESENTSAGROUPOFBLOCKSINTHE
DATABASE7HENADATABLOCKISMODIFIED /RACLEFLIPSABITINTHE"#4FILEREPRESENTINGTHEGROUPOF
BLOCKSINWHICHTHECHANGEDBLOCKRESIDES7HENANINCREMENTALBACKUPISTAKEN 2-!.RETRIEVESTHE
WHOLEGROUPOFBLOCKSREPRESENTEDBYAFLIPPEDBITINTHE"#4FILE ANDEXAMINESTHEMTODETERMINE
WHICHONECHANGED"LOCKCHANGETRACKINGINTRODUCESMINIMALOVERHEADONTHEDATABASESERVERANDISA
VERYEFFICIENTWAYTOTRACKCHANGEDBLOCKS!ND SINCEITGREATLYREDUCESTHENUMBEROFBLOCKSTHATMUST
BEEXAMINEDDURINGABACKUP ITIMPROVESBACKUPPERFORMANCEWHILEREDUCINGTHEWORKLOADONTHE
DATABASESERVERANDSTORAGEGRID
&ORTHE%XADATAPLATFORM YOUMAYCHOOSETOALLOWRT[[baeTODOALLOFTHEBLOCKFILTERINGFOR
INCREMENTALBACKUPS ORUSEITINTANDEMWITHBLOCKCHANGETRACKING"LOCKCHANGETRACKINGSEEMSTO
PROVIDETHEMOSTBENEFITWHENFEWERTHANPERCENTOFTHEBLOCKSINTHEDATABASEHAVECHANGEDSINCE
THELASTLEVELORLEVELBACKUP)FYOURDATABASEISCLOSETOTHATTHRESHOLD YOUSHOULDDOSOMETESTINGTO
DETERMINEWHETHERORNOT"#4IMPROVESINCREMENTALBACKUPPERFORMANCE4HE1;>2:BNB:8??43N8=N24;;
COLUMNOFTHEE102:D?N30C058;4VIEWSHOWSTHENUMBEROFBLOCKSTHATWEREREADANDFILTEREDOUTATTHE
STORAGECELL4HISOFFLOADINGISTRANSPARENTANDREQUIRESNOUSERINTERVENTIONORSPECIALPARAMETERSTOBE
SETAHEADOFTIME


#(!04%2 2%#/6%2).'%8!$!4!

Wait Events
4HEREARETWO%XADATA SPECIFICWAITEVENTSTHATARETRIGGEREDBYDATABASEBACKUPANDRECOVERY
OPERATIONSONTHE%XADATAPLATFORMRT[[b\PacX]RaT\T]cP[QPRZd_ ANDRT[[b\PacaTbc^aTUa^\
QPRZd_4HESEWAITEVENTSARECOVEREDINMOREDETAILIN#HAPTER
cell smart incremental backup:4HISWAITEVENTOCCURSWHEN%XADATAOFFLOADS
INCREMENTALBACKUPPROCESSINGTOTHESTORAGECELLS4HE0COLUMNOFTHE
EB4BB8>=NF08CVIEWCONTAINSTHECELLHASHNUMBER4HISHASHVALUECANBE
USEDTOCOMPARETHERELATIVEBACKUPPERFORMANCEOFEACHSTORAGECELLAND
DETERMINEIFTHEREISAPERFORMANCEPROBLEMONANYOFTHECELLS
cell smart restore from backup:4HISWAITEVENTOCCURSDURINGRESTORE
OPERATIONSWHEN%XADATAOFFLOADSTHETASKOFINITIALIZINGAFILETOTHESTORAGE
CELLS4HE0COLUMNOFEB4BB8>=NF08CCONTAINSTHECELLHASHNUMBER4HIS
HASHVALUECANBEUSEDTOCOMPARETHERELATIVERESTOREPERFORMANCEOFEACH
STORAGECELLANDDETERMINEIFTHEREISAPERFORMANCEPROBLEMONANYOFTHECELLS

Recovering Exadata
!BETTERTITLEFORTHISSECTIONMIGHTBE h7HEN4HINGS'O7RONGv!FTERALL THATSUSUALLYABOUTTHETIME
WEREALIZEHOWLITTLEPRACTICALEXPERIENCEWEHAVERECOVERINGOURSYSTEMS!SCORPORATE!MERICA
CONTINUESTOSQUEEZEEVERYDROPOFPRODUCTIVETIMEOUTOFOURWORKWEEK $"!SAND3YSTEM
!DMINISTRATORSSPENDMOSTIFNOTALLOFTHEIRWAKINGHOURSANDSOMETIMESSLEEPINGHOURS JUSThKEEPING
THEWHEELSONv3OACTUALLYPRACTICINGSYSTEMRECOVERYISMOREOFTENTHANNOTTREATEDLIKETHEPROVERBIAL
hRED HEADEDSTEPCHILDvˆSELDOMTHOUGHTABOUT ANDRARELYATTENDEDTO!NDEVENIFWEFINDOURSELVESIN
THEENVIABLEPOSITIONOFHAVINGTHETIMETOPRACTICESYSTEMRECOVERY ITSRARETOHAVETHESPARE
EQUIPMENTTOPRACTICEON3OKUDOSTOYOUIFYOUAREREADINGTHISANDNOTHINGISACTUALLYBROKEN)NTHIS
SECTIONWELLBEDISCUSSING%XADATASYSTEMRECOVERYUSINGTHEBACKUPMETHODSWECOVEREDINTHE
h"ACKING5P%XADATAvSECTIONOFTHISCHAPTER

2ESTORINGTHE$ATABASE3ERVER
"ACKINGUPANDRESTORINGTHEDATABASESERVERSCANBEDONEUSINGTHIRD PARTYBACKUPSOFTWAREOR
HOMEGROWNSCRIPTSUSINGFAMILIARCOMMANDSLIKEcPaANDiX_2ECENTLY/RACLEBEGANCONFIGURINGTHE
%XADATADATABASESERVERSWITHTHE,INUX,OGICAL6OLUME-ANAGER,6- WHICHPROVIDESSNAPSHOTSFOR
CREATINGPOINT IN TIME cPa BASEDBACKUPSETS4HEPROCEDUREFORRECOVERING%XADATADATABASESERVERSIS
AVERYSTRUCTUREDPROCESSTHATISSPECIFICTO%XADATA)NTHISSECTIONWELLBESTEPPINGTHROUGHTHIS
PROCEDUREPRESUMINGTHEBACKUPWASTAKENUSINGTHEBACKUPPROCEDUREDISCUSSEDEARLIERINTHIS
CHAPTER3O IFYOUHAVENTREADTHROUGHTHATSECTIONOFTHISCHAPTER YOUMIGHTWANTTOTAKEALOOKATIT
BEFORECONTINUING

Recovery Using LVM Snapshot-Based Backup Images


2ESTORINGTHEDATABASESERVERUSINGTHE,6-SNAPSHOTBACKUPPROCEDUREWEDISCUSSEDEARLIERINTHIS
CHAPTERISAFAIRLYSTRAIGHTFORWARDPROCESS4HEBACKUPIMAGEWEWILLUSEINTHISPROCEDURE
T]ZSQ NbhbcT\NQPRZd_cPaQi! ISTHEONEWECREATEDEARLIERINTHISCHAPTERANDINCLUDESTHE Q^^c
ANDd FILESYSTEMS4HEFIRSTTHINGYOUNEEDTODOISSTAGETHEBACKUPIMAGEONAN.&3FILESYSTEMTHAT
CANBEMOUNTEDBYTHEFAILEDDATABASESERVER4HESERVERISTHENBOOTEDFROMASPECIALDIAGNOSTICS)3/


#(!04%2 2%#/6%2).'%8!$!4!

BOOTIMAGEINCLUDEDONALL%XADATASERVERS7HENTHESYSTEMBOOTSFROMTHEDIAGNOSTICS)3/ YOUWILLBE
PROMPTEDSTEPBYSTEPTHROUGHTHERECOVERYPROCESS,ETSTAKEALOOKATTHEBASICSTEPSFORRECOVERINGA
FAILEDDATABASESERVERFROMTHE,6-SNAPSHOT BASEDBACKUPWETOOKEARLIERINTHISCHAPTER
 0LACETHE,6-SNAPSHOTBACKUPIMAGEONAN.&3SHAREDFILESYSTEMTHATIS
ACCESSIBLETOTHEFAILEDSERVERBY)0ADDRESS4HEFILEWELLBEWORKINGWITHIS
NAMEDT]ZSQ NbhbcT\NQPRZd_cPaQi!

■.OTE4HISRECOVERYPROCEDUREUSESABACKUPIMAGETAKENUSING,6-SNAPSHOTS"ACKUPSTHATARENOT
SNAPSHOT BASEDCANALSOBEUSEDFORSYSTEMSTHATARENOTCONFIGUREDWITH,6-7ITHOUT,6-SNAPSHOTS THE
BACKUPIMAGECANBECREATEDBYRUNNINGTHEFOLLOWINGCOMMANDFROMTHEROOTDIRECTORY

cPa_YReUT]ZSQ NbhbcT\NQPRZd_cPaQi!Q^^cTgR[dSTT]ZSQ NbhbcT\NQPRZd_cPaQi!

 !TTACHTHE^_c^aPR[TBd__^acC^^[bSXPV]^bcXRbXb^BOOTIMAGETOTHE
FAILEDSERVERTHROUGHTHE),/-4HISCANBEDONEFROMANYOFTHEOTHER
DATABASESERVERSINTHERACK
 2EBOOTTHEFAILEDSERVERANDSELECTTHE#$ 2/-ASTHEBOOTDEVICE7HENTHE
SYSTEMBOOTSFROMTHEDIAGNOSTICS)3/ ITWILLENTERASPECIALSERVERRECOVERY
PROCESS
 &ROMTHISPOINTON THERECOVERYPROCESSWILLINCLUDESTEP BY STEPDIRECTIONS
&OREXAMPLE THEFOLLOWINGPROCESSRECOVERSTHEDATABASESERVERFROMTHE
BACKUPIMAGE T]ZSQ NbhbcT\NQPRZd_cPaQi!!NSWERSTOTHEPROMPTSARE
SHOWNINbold_italics
2W^^bTUa^\U^[[^fX]VQhch_X]V[TccTaX])
T]cTaX]cTaPRcXeTSXPV]^bcXRbbWT[[<dbcdbTRaTST]cXP[bUa^\>aPR[Tbd__^acc^[^VX]
aTQ^^c^a_^fTaRhR[Tc^TgXccWTbWT[[
aTbc^aTbhbcT\Ua^\=5BQPRZd_PaRWXeT
BT[TRc)r

0aTh^dbdaTh]J]L)y

CWTQPRZd_UX[TR^d[SQTRaTPcTSTXcWTaUa^\;E<^a]^];E<QPbTSR^\_dcT]^STETabX^]bQT[^f
! " P]S !! ^aWXVWTaS^]^cbd__^ac;E<QPbTS_PacXcX^]X]VDbT;E<QPbTS
bRWT\Th])y

4]cTa_PcWc^cWTQPRZd_UX[T^]cWT=5BbTaeTaX]U^a\Pc)
+X_NPSSaTbbN^UNcWTN=5BNbWPaT-)+_PcW-+PaRWXeTNUX[T-

5^aTgP\_[T    )Tg_^ac^_TaPcX]VNbhbcT\cPaQi!

=5B[X]T)]UbNX_)/export/enkdb01_system_backup.tar.bz2
8?0SSaTbb^UcWXbW^bc)192.168.10.62


#(!04%2 2%#/6%2).'%8!$!4!

=Tc\PbZ^UcWXbW^bc)255.255.255.0
3TUPd[cVPcTfPh)192.168.15.1
 7HENALLTHEABOVEINFORMATIONISENTERED %XADATAWILLPROCEEDTOMOUNTTHE
BACKUPIMAGEACROSSTHENETWORKANDRECOVERTHESYSTEM7HENTHERECOVERY
ISFINISHED YOUWILLBEPROMPTEDTOLOGIN,OGINASROOTUSINGTHEPASSWORD
PROVIDEDINTHE/RACLEDOCUMENTATION
 $ETACHTHEDIAGNOSTICS)3/FROMTHE),/-
 2EBOOTTHESYSTEMUSINGTHEaTQ^^cCOMMAND4HEFAILEDSERVERSHOULDBE
COMPLETELYRESTOREDATTHISPOINT
7HENTHESYSTEMFINISHESBOOTINGYOUCANVERIFYTHERECOVERYUSINGTHEX\PVTWXbc^ahCOMMAND
4HEFOLLOWINGLISTINGSHOWSTHATTHEIMAGEWASCREATEDASAaTbc^aTUa^\]UbQPRZd_ANDWASCOMPLETED
SUCCESSFULLY
JT]ZSQ )^aPR[T)4G31 LW^\T^aPR[T
-bd
?Pbbf^aS)

JT]ZSQ )a^^cLa^^c
-X\PVTWXbc^ah
ETabX^]) ! !"
8\PVTPRcXePcX^]SPcT)! $ $$)$')$%&
8\PVX]V\^ST)UaTbW
8\PVX]VbcPcdb)bdRRTbb
...

ETabX^]) !!!  !%!
8\PVTPRcXePcX^]SPcT)!  ! & )$ )$"%
8\PVX]V\^ST)_PcRW
8\PVX]VbcPcdb)bdRRTbb

ETabX^]) !!!  !%!
8\PVTPRcXePcX^]SPcT)!  !" $)!")$%
8\PVX]V\^ST)restore from nfs backup
8\PVX]VbcPcdb)success
'ENERALLYSPEAKING ITSAGOODIDEANOTTOGETTOOCREATIVEWHENITCOMESTOCUSTOMIZINGYOUR
%XADATADATABASESERVER/RACLEPERMITSYOUTOCREATENEW,6-PARTITIONSANDADDFILESYSTEMSTOYOUR
DATABASESERVERS BUTIFYOUDOSO YOURRECOVERYWILLREQUIRESOMEADDITIONALSTEPS4HEYARENTTERRIBLY
DIFFICULT BUTIFYOUCHOOSETOCUSTOMIZEYOUR,6-PARTITIONS BESURETODOCUMENTTHECHANGES
SOMEWHEREANDFAMILIARIZEYOURSELFWITHTHERECOVERYPROCEDURESFORCUSTOMIZEDSYSTEMSINTHE/RACLE
DOCUMENTATION

Reimaging a Database Server


)FADATABASESERVERMUSTBEREPLACEDORREBUILTFROMSCRATCHANDTHEREISNOBACKUPIMAGETORECOVER
FROM ANIMAGECANBECREATEDFROMANINSTALLIMAGEPROVIDEDBY/RACLE3UPPORT)TISALENGTHYAND
HIGHLYCOMPLICATEDPROCESS BUTWELLHITTHEHIGHLIGHTSHERESOYOUGETAGENERALIDEAOFWHATTHIS
PROCESSINVOLVES


#(!04%2 2%#/6%2).'%8!$!4!

"EFORETHESERVERCANBEREIMAGEDITMUSTBEREMOVEDFROMTHE2!#CLUSTER4HISISTHESTANDARD
PROCEDUREFORDELETINGANODEFROMANYG22!#CLUSTER&IRSTTHELISTENERONTHEFAILEDSERVERMUSTBE
SHUTDOWNANDDISABLED4HENTHE>A02;4N7><4FORTHEDATABASEBINARIESISREMOVEDFROMTHE/RACLE
INVENTORY4HE6)0ISTHENSTOPPEDANDREMOVEDFROMTHECLUSTERCONFIGURATIONANDTHENODEDELETED
FROMTHECLUSTER&INALLYTHE>A02;4N7><4FORTHE'RID)NFRASTRUCTUREISREMOVEDFROMTHE/RACLE
INVENTORY
/RACLE3UPPORTWILLPROVIDEYOUWITHAR^\_dcT8\PVT<PZTaFILETHATISUSEDFORCREATINGANINSTALL
IMAGEFROMONEOFTHESURVIVINGDATABASESERVERS4HISIMAGEMAKERFILEISSPECIFICTOTHEVERSIONAND
PLATFORMOFYOUR%XADATASYSTEMANDWILLBENAMEDASFOLLOWS
R^\_dcT8\PVT<PZTaN{exadata_release}N;8=DGG%#N{release_date}{platform}cPaiX_
!NEXTERNAL53"FLASHDRIVEISUSEDTOBOOTTHERECOVERYIMAGEONTHEFAILEDSERVER4HE53"DRIVE
DOESNTNEEDTOBEVERYBIG An'"THUMBDRIVECANBEUSED4HENEXTSTEPISTOUNZIPTHEIMAGEMAKER
FILEYOUDOWNLOADEDFROM/RACLE3UPPORTONONEOFTHEOTHER%XADATADATABASESERVERSINYOURRACK!
SIMILARRECOVERYPROCESSESFORSTORAGECELLSUSESTHEFIRST53"DRIVEFOUNDONTHESYSTEM SOBEFORE
PROCEEDINGYOUSHOULDREMOVEALLOTHEREXTERNAL53"DEVICESFROMTHESYSTEM4OCREATEABOOTABLE
SYSTEMIMAGEFORRECOVERINGTHEFAILEDDATABASESERVER YOUWILLRUNTHE\PZT8\PVT<TSXPbWSCRIPTIT
PROMPTSYOUFORSYSTEM SPECIFICSETTINGSITWILLNEEDTOAPPLYTOTHEFAILEDSERVERDURINGTHEREIMAGING
PROCESS7HENTHE\PZT8\PVT<TSXPbWSCRIPTCOMPLETES YOUAREREADYTOINSTALLTHEIMAGEONYOURFAILED
SERVER2EMOVETHE53"DRIVEFROMTHEGOODSERVERANDPLUGITINTOTHEFAILEDSERVER,OGINTOTHE),/-
ONTHEFAILEDSERVERANDREBOOTIT7HENTHESERVERBOOTSUPITWILLAUTOMATICALLYFINDTHEBOOTABLE
RECOVERYIMAGEONTHEEXTERNAL53"DRIVEANDBEGINTHEREIMAGINGPROCESS&ROMTHISPOINT THEPROCESS
ISAUTOMATED&IRSTITWILLCHECKTHEFIRMWAREAND")/3VERSIONSONTHESERVERANDUPDATETHEMAS
NEEDEDTOMATCHTHEMWITHYOUROTHERDATABASESERVERS$ONTEXPECTTHISTODOANYTHINGIFYOUARE
REIMAGINGASERVERTHATWASALREADYPARTOFYOUR%XADATASYSTEM BUTITISNECESSARYIFTHEDAMAGEDSERVER
HASBEENREPLACEDWITHNEWEQUIPMENT/NCETHEHARDWARECOMPONENTSAREUPTODATE ANEWIMAGE
WILLBEINSTALLED7HENTHEREIMAGINGPROCESSISCOMPLETEYOUCANUNPLUGTHEEXTERNAL53"DRIVEAND
POWERCYCLETHESERVERTOBOOTUPTHENEWSYSTEMIMAGE
7HENTHEREIMAGINGPROCESSISCOMPLETEANDTHEDATABASESERVERISBACKONLINEITWILLBESETTO
FACTORYDEFAULTS$EPENDINGONTHEPATCHLEVELOFTHEINSTALLIMAGEYOUDOWNLOADEDFROM/RACLE3UPPORT
YOUMAYNEEDTOREINSTALLSOFTWAREPATCHESONTHESERVERTOMAKEITCURRENTWITHTHERESTOFYOUR%XADATA
SYSTEM9OUWILLALSONEEDTORECONFIGUREALLOTHERSITE SPECIFICSETTINGSSUCHASHOSTNAME )0ADDRESSES
.40SERVER $.3 ANDUSERANDGROUPACCOUNTS&ORALLINTENTSANDPURPOSESYOUSHOULDTHINKOFTHE
REIMAGEDSERVERASABRAND NEWSERVER/RACLEHASDONEANEXCELLENTJOBOFIMPROVINGTHEPRODUCTWITH
EVERYRELEASE0ERHAPSINTHENEARFUTURE WECANLOOKFORWARDTOAREIMAGINGPROCESSTHATAUTOMATICALLY
CONFIGURESMOSTOFTHESITE SPECIFICSETTINGSFORYOU/NCETHEOPERATINGSYSTEMISCONFIGURED YOUWILL
NEEDTOREINSTALLTHE'RID)NFRASTRUCTUREANDDATABASESOFTWAREANDADDTHENODEBACKINTOTHECLUSTER
4HISISAWELLDOCUMENTEDPROCESSTHATMANY2!#$"!SREFERTOASTHEhADDNODEvPROCEDURE)FYOURE
NOTFAMILIARWITHTHEPROCESS LETUSREASSUREYOU)TSNOTNEARLYASDAUNTINGORTIME CONSUMINGASYOU
MIGHTTHINK/NCEYOUHAVETHEOPERATINGSYSTEMPREPAREDFORTHEINSTALL MUCHOFTHEHEAVYLIFTINGIS
DONEFORYOUBYTHE/RACLE)NSTALLER4HE%XADATA/WNERS'UIDEDOESANEXCELLENTJOBOFWALKINGYOU
THROUGHEACHSTEPOFTHEPROCESS

Recovering the Storage Cell


3TORAGECELLRECOVERYISAVERYBROADSUBJECT)TCANBEASSIMPLEASREPLACINGANUNDERPERFORMINGOR
FAILEDDATADISKANDASCOMPLEXASRESPONDINGTOATOTALSYSTEMFAILURESUCHASAMALFUNCTIONINGCHIPON
THEMOTHERBOARD)NTHISSECTIONWELLBEDISCUSSINGVARIOUSTYPESOFCELLRECOVERYINCLUDINGREMOVING
ANDREPLACINGPHYSICALDISKS FAILEDFLASHCACHEMODULES ANDWHATTODOIFANENTIRESTORAGECELLDIESAND
MUSTBEREPLACED


#(!04%2 2%#/6%2).'%8!$!4!

System Volume Failure


2ECALLTHATTHEFIRSTTWODISKSINTHESTORAGECELLCONTAINTHE,INUXOPERATINGSYSTEMANDARECOMMONLY
REFERREDTOASTHEhSYSTEMVOLUMESv%XADATAPROTECTSTHESEVOLUMESUSINGSOFTWAREMIRRORINGTHROUGH
THE/3%VENSO CERTAINSITUATIONSMAYREQUIREYOUTORECOVERTHESEDISKSFROMBACKUP3OMEREASONS
FORPERFORMINGCELLRECOVERYWOULDINCLUDE
v 3YSTEMVOLUMESDISKSAND FAILSIMULTANEOUSLY
v 4HEBOOTPARTITIONISDAMAGEDBEYONDREPAIR
v &ILESYSTEMSBECOMECORRUPTED
v !PATCHINSTALLATIONORUPGRADEFAILS
)FYOUFINDYOURSELFINANYOFTHESESITUATIONS ITMAYBENECESSARY ORATLEASTMOREEXPEDIENT TO
RECOVERTHESYSTEMVOLUMESFROMBACKUP!SDISCUSSEDEARLIER %XADATAAUTOMATICALLYMAINTAINSA
BACKUPOFTHELASTGOODBOOTCONFIGURATIONUSINGA'"INTERNAL53"FLASHDRIVECALLEDTHE#%,,"//4
53"FLASHDRIVE2ECOVERINGTHESYSTEMVOLUMESUSINGTHISINTERNAL53"FLASHDISKISCOMMONLYREFERRED
TOASTHEstorage cell rescue procedure4HESTEPSFORPERFORMINGTHECELLRESCUEPROCEDUREBASICALLY
INVOLVEBOOTINGFROMTHEINTERNAL53"DRIVEANDFOLLOWINGTHEPROMPTSFORTHETYPEOFRESCUEYOUWANTTO
PERFORM"YTHEWAY SINCE%XADATACOMESEQUIPPEDWITHAN),/-)NTEGRATED,IGHTS/UT-ANAGEMENT
MODULE YOUCANPERFORMALLCELLRECOVERYOPERATIONSREMOTELY ACROSSTHENETWORK4HEREISNONEEDTO
STANDINFRONTOFTHERACKTOPERFORMAFULLCELLRECOVERYFROMTHEINTERNAL53"FLASHDISK
!SYOUMIGHTIMAGINE THISTYPEOFRECOVERYSHOULDNOTBEDONEWITHOUTTHEASSISTANCEOF/RACLE
3UPPORT4HISSECTIONISNOTINTENDEDTOBEASTEP BY STEPGUIDETOCELLRECOVERY SOWERENOTGOINGTOGO
INTOALLTHEDETAILSOFCELLRECOVERYFROMTHE#%,,"//453"FLASHDISKHERE4HE/RACLEDOCUMENTATION
SHOULDBEUSEDFORTHAT BUTWEWILLTAKEALOOKATWHATTOCONSIDERBEFORESTARTINGSUCHARECOVERY
Cell Disks and Grid Disks4HERESCUEPROCEDURERESTORESTHE,INUXSYSTEM
VOLUMESONLY#ELLDISKSANDTHEIRCONTENTSARENOTRESTOREDBYTHERESCUE
PROCEDURE)FTHESEPARTITIONSAREDAMAGEDTHEYMUSTBEDROPPEDANDRE
CREATED/NCETHEGRIDDISKSAREONLINE THEYCANBEADDEDBACKTOTHE!3-DISK
GROUPANDASUBSEQUENTREBALANCEWILLRESTORETHEDATA
ASM Redundancy: 2ECOVERINGASTORAGECELLFROM53"BACKUPCANPOTENTIALLY
CAUSETHELOSSOFALLDATAONTHESYSTEMVOLUMES4HISINCLUDESYOURDATABASE
DATAINTHEGRIDDISKSONTHESEDISKDRIVES)FYOUR!3-DISKGROUPSUSE.ORMAL
REDUNDANCY WESTRONGLYRECOMMENDMAKINGADATABASEBACKUPBEFORE
PERFORMINGCELLRECOVERYFROM53"DISK7ITH!3-(IGHREDUNDANCY YOUHAVE
TWOMIRRORCOPIESOFALLYOURDATA SOITISSAFETOPERFORMCELLRECOVERYWITHOUT
TAKINGDATABASEBACKUPS%VENSO WEDSTILLTAKEABACKUPIFATALLPOSSIBLE4HE
RECOVERYPROCESSDOESNOTDESTROYDATAVOLUMESCELLGRIDDISKS UNLESSYOU
EXPLICITLYCHOOSETODOSOWHENPROMPTEDBYTHERESCUEPROCEDURE
Software and Patches: !SOFVERSIONOFTHESTORAGECELLSOFTWARE THERESCUE
PROCEDUREWILLRESTORETHECELLTOITSFORMERSTATE PATCHESINCLUDED WHENTHE
BACKUPWASTAKEN!LSOINCLUDEDINTHERESTOREARETHENETWORKSETTINGSAND
33(KEYSFORTHEROOT CELLADMIN ANDCELLMONITORACCOUNTS4HEALERTSETTINGS
AND3-40CONFIGURATIONINCLUDINGEMAILADDRESSES FORALERTNOTIFICATIONWILL
NOTBERESTORED2ECONFIGURINGTHESESETTINGSISATRIVIALTASKANDCANBEDONE
USINGANOTHERCELLTODETERMINETHECORRECTSETTINGSTOAPPLY


#(!04%2 2%#/6%2).'%8!$!4!

#ELL2ESCUE/PTIONS
4HEREARETWOMAINRESCUEOPTIONS Partial ReconstructionANDFull Recovery!SYOUMIGHTGUESS A
PARTIALRECONSTRUCTIONATTEMPTSTOPRESERVEASMUCHOFYOURCURRENTCONFIGURATIONASPOSSIBLE WHILEA
FULLRECOVERYWIPESYOURSYSTEMANDRESETSITBACKTOTHELASTGOODCONFIGURATIONITKNOWSABOUT
Partial Reconstruction: )FTHISOPTIONISCHOSEN THERESCUEPROCEDUREWILLREPAIR
THEPARTITIONSWITHOUTDAMAGINGTHEFILESYSTEMS)TSCANSFORFILESYSTEMSON
THESEPARTITIONS ANDIFTHEYAREFOUNDWILLTRYTOREBOOTUSINGTHEM)FTHECELL
REBOOTSSUCCESSFULLY YOUCANUSETHE2T[[2;8COMMANDTOCHECKTHEINTEGRITY
OFTHECELLCONFIGURATION)FTHECELLFAILSTOREBOOT AFULLRECOVERYMUSTBE
PERFORMEDTOREPAIRTHEDAMAGEDSYSTEMVOLUMES
Full Recovery: !FULLRECOVERYDESTROYSANDRE CREATESALLSYSTEMPARTITIONSAND
RE CREATESTHEFILESYSTEMSFROMSCRATCH)TTHENRESTORESTHESYSTEMVOLUMES
FROMBACKUP4HEREARETWOFILESTHATARETOOBIGTOFITONTHEINTERNAL53"FLASH
DRIVE THEZTa]T[STQdVX]U^ ANDZTa]T[STQdVX]U^R^\\^]20-S4HESEFILES
MUSTBEREINSTALLEDBEFOREYOUCANUSECRASHKERNELSUPPORT)FFULLRECOVERYIS
PERFORMED YOUWILLNEEDTORECONFIGURETHECELLALERTAND3-40CONFIGURATION
)TISIMPORTANT SO)LLREPEATIT#ELLANDGRIDDISKSARENOTOVERWRITTENBYTHIS
PROCESS9OUWILL HOWEVER NEEDTORE IMPORTTHECELLDISKSBEFORETHEYCANBE
USED
3O WHATHAPPENSIFFORSOMEREASON THEINTERNAL#%,,"//453"FLASHDISKCANNOTBEUSEDFORTHE
RESCUEPROCEDURE)FTHISHAPPENSYOUCANBOOTTHESTORAGECELLFROMANEXTERNAL53"DRIVECONTAININGA
BACKUPCOPYOFTHE#%,,"//453"FLASHDISK4HEPROCESSISTHESAMEASITISFORPERFORMINGCELLRESCUE
USINGTHEINTERNAL#%,,"//453"FLASHDISK

Rolling Back a Failed Patch


%XADATASTORAGECELLSCOMEEQUIPPEDWITHWHAT/RACLECALLSAvalidation framework4HISFRAMEWORKISA
SETOFTESTSTHATARERUNATTHEENDOFTHEBOOTPROCESS4HEVALIDATIONSCRIPTISCALLEDe[Sad]ANDISCALLED
FROMTcRaR[^RP[ ASCANBESEENINTHEFOLLOWINGLISTING
-RPcTcRaRSaR>aPR[T4gPSPcP
...
?TaU^a\eP[XSPcX^]bbcT_
^_c^aPR[TRT[[^be[Sad]P[[
...
)NADDITIONTOTHEREGULARVALIDATIONSTHATARERUNEVERYTIMETHESYSTEMBOOTS OTHERVALIDATIONSARE
RUNUNDERCERTAINCIRCUMSTANCES&OREXAMPLE AFTERTHECELLISPATCHEDORUPGRADED ORTHESYSTEMIS
RECOVEREDUSINGTHESTORAGECELLRESCUEPROCEDURE VALIDATIONSARERUNTOENSURETHATTHECONFIGURATION
ANDSOFTWAREAREALLINTACT4HEVALIDATIONFRAMEWORKWRITESITSOUTPUTTOTHE
ePa[^VRT[[^beP[XSPcX^]bDIRECTORY ASYOUCANSEEINTHEFOLLOWINGLISTING
-[b[ePa[^VRT[[^beP[XSPcX^]b
c^cP[ '#
afa a^^ca^^c%'$3TR & )# QTVX]UXabcQ^^c[^V
afa a^^ca^^c"('!3TR"  !)"&QX^bQ^^c^aSTa[^V
afa a^^ca^^c!$"&3TR & )!%RT[[R^_h\TcPSPcP[^V
afa a^^ca^^c!%'3TR"  !)"&RT[[SbcPcdb[^V


#(!04%2 2%#/6%2).'%8!$!4!

afa a^^ca^^c"$$$9P]! ! )&RWTRZR^]UXVb[^V


afa a^^ca^^c % !3TR"  !)"&RWTRZSTeTPRWQ^^c[^V
afa a^^ca^^c!$&3TR & )# RaTPcTRT[[[^V
afa a^^ca^^c !""3TR"  !)"&X_\XbTccX]Vb[^V
afa a^^ca^^c"&''3TR"  !)"&\XbRTPRWQ^^c[^V
afa a^^ca^^c ""3TR & )!%\XbRiTa^Q^^c[^V
afa a^^ca^^c!!'3TR"  !)"&^bfPcRWTa[^V
afa a^^ca^^c"##$"3TR & )!%_^bcX]bcP[[[^V
afa a^^ca^^c# "!3TR"  !)"'bPeTR^]UXV[^V
afa a^^ca^^c%$9P]!  !)#(b^baT_^ac[^V
afa a^^ca^^c&$3TR & )!%bhbRWTRZ[^V
afa a^^ca^^c&'&"3TR & )##d_VaPSTRQdbQ[^V
!SDISCUSSEDINTHEh!CTIVEAND)NACTIVE3YSTEM6OLUMESvSECTIONOFTHISCHAPTER %XADATASTORAGE
CELLSMAINTAINTWOSETSOFSYSTEMVOLUMES WHICHCONTAINTHE,INUXOPERATINGSYSTEMANDSTORAGECELL
SOFTWARE"YMAINTAININGSEPARATE!CTIVEAND)NACTIVESYSTEMIMAGES %XADATAENSURESTHATFAILEDOUT OF
PARTITIONUPGRADESDONOTCAUSEANOUTAGETOTHEDATABASES)FTHEVALIDATIONTESTSDETECTAPROBLEMAFTER
ANOUT OF PARTITIONUPGRADE %XADATAWILLAUTOMATICALLYFAILBACKTOTHELASTGOODCONFIGURATIONBY
SWITCHINGTHE!CTIVEAND)NACTIVESYSTEMVOLUMES&ORIN PARTITIONPATCHES %XADATAWILLREAPPLYALLTHE
SETTINGSANDFILESCHANGEDBYTHEPATCHFROMONLINEBACKUPS&OLLOWINGTHEFIRSTBOOT UPAFTERINSTALLINGA
PATCHORUPGRADETHEVALIDATIONRESULTSCANBEFOUNDINTHELOGFILE
ePa[^VRT[[^be[Sad]UXabcNQ^^c[^V6ALIDATIONTESTSWILLBELOGGEDTOTHE
ePa[^VRT[[^beP[XSPcX^]b[^VFILEFORALLSUBSEQUENTREBOOTS4HEPATCHROLLBACKPROCEDURECANBE
PERFORMEDMANUALLY BUTTHEREISNOMENTIONOFITINTHEDOCUMENTATION SOITISPROBABLYNOTSOMETHING
/RACLEEXPECTSADMINISTRATORSTORUNWITHOUTTHEHELPOF/RACLE3UPPORT

Cell Disk Failure


!3-HANDLESTHETEMPORARYORPERMANENTLOSSOFACELLDISKTHROUGHITSREDUNDANTFAILUREGROUP
TECHNOLOGY3OTHELOSSOFACELLDISKSHOULDNOTCAUSEANYINTERRUPTIONTOTHEDATABASESASLONGASTHE
DISKGROUPISDEFINEDWITH.ORMALREDUNDANCY)F(IGHREDUNDANCYISUSED THEDISKGROUPCANSUFFERTHE
SIMULTANEOUSLOSSOFTWOCELLDISKSWITHINTHESAMEFAILUREGROUP2ECALLTHATON%XADATA EACHSTORAGE
CELLCONSTITUTESASEPARATEFAILUREGROUP4HISMEANSTHATWITH.ORMALREDUNDANCY YOUCANLOSEAN
ENTIRESTORAGECELLCELLDISKS WITHOUTIMPACTTOYOURDATABASES7ITH(IGHREDUNDANCYYOUCANLOSE
TWOSTORAGECELLSSIMULTANEOUSLYANDYOURDATABASESWILLCONTINUETOSERVICEYOURCLIENTSWITHOUT
INTERRUPTION4HATSPRETTYIMPRESSIVE2EDUNDANCYISNTCHEAP THOUGH&OREXAMPLE CONSIDERADISK
GROUPWITHTERABYTESOFUSABLESPACECONFIGUREDFOR%XTERNALREDUNDANCY 7ITH.ORMALREDUNDANCY
THATTERABYTESBECOMESTERABYTESOFUSABLESPACE7ITH(IGHREDUNDANCY ITBECOMESTERABYTES
OFUSABLESTORAGE!LSOKEEPINMINDTHATTHEDATABASEWILLALWAYSREADTHEPRIMARYCOPYOFYOURDATA
UNLESSITISUNAVAILABLE.ORMALAND(IGHREDUNDANCYPROVIDENOPERFORMANCEBENEFITS4HEYAREUSED
STRICTLYFORFAULTTOLERANCE4HEKEYISTOCHOOSEAREDUNDANCYLEVELTHATSTRIKESABALANCEBETWEEN
RESILIENCYANDBUDGET

3IMULATED$ISK&AILURE
)NTHISSECTIONWEREGOINGTOTESTWHATHAPPENSWHENACELLDISKFAILS4HESYSTEMUSEDFORTHESETESTS
WASAQUARTERRACK %XADATA67EVECREATEDADISKGROUPCALLEDB2A0C27N36 DEFINEDASFOLLOWS


#(!04%2 2%#/6%2).'%8!$!4!

BHB)0B<!-2A40C438B:6A>D?B2A0C27N36=>A<0;A43D=30=2H
508;6A>D?24;; 38B:^ (! %' !"B2A0C27N36N23N$NRT[[ 
508;6A>D?24;;!38B:^ (! %' !#B2A0C27N36N23N$NRT[[!
508;6A>D?24;;"38B:^ (! %' !$B2A0C27N36N23N$NRT[["
PccaXQdcTR^\_PcXQ[TaSQ\b, !
R^\_PcXQ[TPb\, !
PdNbXiT,#<
RT[[b\PacNbRP]NRP_PQ[T,cadT*
.OTICETHATTHISDISKGROUPISCREATEDUSINGTHREEGRIDDISKS&OLLOWING%XADATABESTPRACTICES WEVE
USEDONEGRIDDISKFROMEACHSTORAGECELL)TSINTERESTINGTONOTETHATEVENIFWEHADNTSPECIFIEDTHREE
FAILUREGROUPSWITHONEDISKINEACH !3-WOULDHAVEDONESOAUTOMATICALLY7ETHENCREATEDASMALL
SINGLE INSTANCEDATABASECALLEDB2A0C27USINGTHISDISKGROUP4HEDISKGROUPISCONFIGUREDWITHNORMAL
REDUNDANCYTWOMIRRORCOPIESFOREACHBLOCKOFDATA WHICHMEANSOURDATABASESHOULDBEABLETO
SUFFERTHELOSSOFONECELLDISKWITHOUTLOSINGACCESSTODATAORCAUSINGACRASH3INCEEACHGRIDDISK
RESIDESONASEPARATESTORAGECELL WECOULDEVENSUFFERTHELOSSOFANENTIRESTORAGECELLWITHOUTLOSING
DATA7ELLDISCUSSWHATHAPPENSWHENASTORAGECELLFAILSLATERINTHECHAPTER
)NAMOMENTWELLTAKEALOOKATWHATHAPPENSWHENAGRIDDISKISREMOVEDFROMTHESTORAGECELLA
SIMULATEDDISKFAILURE "UTBEFOREWEDO THEREAREAFEWTHINGSWENEEDTOCHECK
v 6ERIFYTHATNOREBALANCEOROTHERVOLUMEMANAGEMENTOPERATIONSARERUNNING
v %NSURETHATALLGRIDDISKSFORTHEB2A0C27N36DISKGROUPAREONLINE
v 6ERIFYTHATTAKINGADISKOFFLINEWILLNOTIMPACTDATABASEOPERATIONS
v #HECKTHEDISKREPAIRTIMERTOENSURETHEDISKISNOTAUTOMATICALLYDROPPEDBEFORE
WECANBRINGITBACKONLINEAGAIN
4HEREAREACOUPLEOFWAYSTOVERIFYTHATVOLUMEMANAGEMENTACTIVITYISNOTGOINGON&IRSTLETS
CHECKTHECURRENTSTATEOFTHEDISKGROUPSUSINGPb\R\S4HE[b~[COMMANDSHOWSTHEDISKGROUPS THE
TYPEOFREDUNDANCY ANDWHETHERORNOTAREBALANCEOPERATIONISCURRENTLYUNDERWAY"YTHEWAY YOU
COULDALSOGETTHISINFORMATIONUSINGTHE[bSVCOMMAND WHICHALSOINCLUDESOTHERINTERESTING
INFORMATIONLIKESPACEUTILIZATION ONLINEOFFLINESTATUS ANDMORE4HEATQP[COLUMNINTHEFOLLOWING
LISTINGINDICATESTHATNOREBALANCEOPERATIONSAREEXECUTINGATTHEMOMENT
-Pb\R\S_
0B<2<3JL-[b[
BcPcTCh_TATQP[=P\T
<>D=C43=>A<0;=30C0N36
<>D=C43=>A<0;=A42>N36
<>D=C43=>A<0;=B2A0C27N36
<>D=C43=>A<0;=BC064N36
<>D=C43=>A<0;=BHBC4<N36
.OTICETHATNOTALLVOLUMEMANAGEMENTOPERATIONSARESHOWNINTHEPb\R\SCOMMANDS)FAGRID
DISKHASBEENOFFLINEFORAPERIODOFTIME THEREMAYBEACONSIDERABLEAMOUNTOFBACKLOGGEDDATATHAT
MUSTBECOPIEDTOITINORDERTOBRINGITUPTODATE$EPENDINGONTHEVOLUMEOFDATA ITMAYTAKESEVERAL
MINUTESTOFINISHRESYNCHRONIZINGADISK!LTHOUGHTHISOPERATIONISDIRECTLYRELATEDTOMAINTAINING
BALANCEACROSSALLDISKS ITISNOTTECHNICALLYAhREBALANCEvOPERATION!SSUCH ITWILLNOTAPPEARINTHE
LISTING&OREXAMPLE EVENTHOUGHTHE[b~[COMMANDINTHEPREVIOUSLISTINGSHOWEDASTATUSOF=FOR
REBALANCEOPERATIONS YOUCANCLEARLYSEETHATADISKISCURRENTLYBEINGBROUGHTONLINEBYRUNNINGTHE
NEXTQUERY


#(!04%2 2%#/6%2).'%8!$!4!

BHB)0B<!-bT[TRcSV]P\T^_Ta^_TaPcX^]^_TabcPcT
Ua^\VePb\N^_TaPcX^]^_Ta
VePb\NSXbZVa^d_SV
fWTaTSVVa^d_N]d\QTa,^_TaVa^d_N]d\QTa
P]SSVX]bcNXS,^_TaX]bcNXS*

=0<4>?4A0C8>=

B2A0C27N36>=;8=
#HECKINGFORTHEONLINEOFFLINESTATEOFADISKISASIMPLEMATTEROFRUNNINGTHEFOLLOWINGQUERYFROM
31,
0LUS)NTHELISTINGBELOWYOUCANSEETHATTHEB2A0C27N23N$N24;; DISKISOFFLINEBYITS
<>D=CNBC0C4OF<8BB8=6AND74034ANBC0CDBOFD=:=>F=
BHB)0B<!-bT[TRcS]P\TS<>D=CNBC0CDBS74034ANBC0CDBSBC0C4
Ua^\ePb\NSXbZS
fWTaTS]P\T[XZTB2A0C27
^aSTaQh *

=0<4<>D=CNB74034ANBC0CDBC0C4

B2A0C27N23N$N24;; <8BB8=6D=:=>F==>A<0;
B2A0C27N23N$N24;;!202743<4<14A=>A<0;
B2A0C27N23N$N24;;"202743<4<14A=>A<0;
3TILL PERHAPSABETTERWAYOFCHECKINGTHESTATUSOFALLDISKSINTHEB2A0C27N36DISKGROUPWOULDBETO
CHECKTHE\^STNbcPcdbINE0B<N38B:NBC0C4HEFOLLOWINGLISTINGSHOWSTHATALLGRIDDISKSINTHE
B2A0C27N36DISKGROUPAREONLINE
BHB)0B<!-bT[TRc]P\T\^STNbcPcdbUa^\ePb\NSXbZNbcPcfWTaT]P\T[XZTB2A0C27*

=0<4<>34NBC

B2A0C27N23N$N24;;">=;8=4
B2A0C27N23N$N24;; >=;8=4
B2A0C27N23N$N24;;!>=;8=4
4HENEXTTHINGWELLLOOKATISTHEDISKREPAIRTIMER2ECALLTHATTHEDISKGROUPATTRIBUTE
SXbZNaT_PXaNcX\TDETERMINESTHEAMOUNTOFTIME!3-WILLWAITBEFOREITPERMANENTLYREMOVESADISK
FROMTHEDISKGROUPANDREBALANCESTHEDATATOTHESURVIVINGGRIDDISKSWHENREADWRITEERRORSOCCUR
"EFORETAKINGADISKOFFLINEWESHOULDCHECKTOSEETHATTHISTIMERISGOINGTOGIVEUSENOUGHTIMETOBRING
THEDISKBACKONLINEBEFORE!3-AUTOMATICALLYDROPSIT4HISATTRIBUTECANBEDISPLAYEDUSING31,
0LUS
ANDRUNNINGTHEFOLLOWINGQUERY"YTHEWAY THEE0B<VIEWSAREVISIBLEWHETHERYOUARECONNECTEDTO
AN!3-INSTANCEORADATABASEINSTANCE
BHB)0B<!-bT[TRcSV]P\T3XbZ6^d_
Pcca]P\T
PccaeP[dT
Ua^\ePb\NSXbZVa^d_SV
ePb\NPccaXQdcTPcca
fWTaTSVVa^d_N]d\QTa,PccaVa^d_N]d\QTa
P]SPcca]P\T,SXbZNaT_PXaNcX\T*



#(!04%2 2%#/6%2).'%8!$!4!

3XbZ6^d_=0<4E0;D4

30C0N36SXbZNaT_PXaNcX\T&!W
A42>N36SXbZNaT_PXaNcX\T&!W
B2A0C27N36SXbZNaT_PXaNcX\T'$W
BC064N36SXbZNaT_PXaNcX\T&!W
BHBC4<N36SXbZNaT_PXaNcX\T&!W
4HEDEFAULTVALUEFORTHEDISKREPAIRTIMERISHOURS)NPRODUCTIONSYSTEMSYOUWILLWANTTOSET
THETIMERHIGHENOUGHFORYOUTORESOLVETRANSIENTDISKERRORS4HESEERRORSOCCURWHENASTORAGECELLIS
REBOOTEDORWHENADISKISTEMPORARILYTAKENOFFLINEBUTONRAREOCCASION THEYCANALSOOCCUR
SPONTANEOUSLY3OMETIMESSIMPLYPULLINGADISKOUTOFTHECHASSISANDREINSERTINGITWILLCLEAR
UNEXPECTEDTRANSIENTERRORS!NYDATATHATWOULDNORMALLYBEWRITTENTOTHEFAILEDDISKWILLQUEUEUP
UNTILTHEDISKISBROUGHTBACKONLINEORTHEDISKREPAIRTIMEEXPIRES)F!3-DROPSADISK ITCANBE
MANUALLYADDEDBACKINTOTHEDISKGROUPBUTITWILLREQUIREAFULLREBALANCEWHICHCANBEALENGTHY
PROCESS4HEFOLLOWINGCOMMANDWASUSEDTOSETTHEDISKREPAIRTIMERTOHOURSFORTHEB2A0C27N36
DISKGROUP
BHB)0B<!-P[cTaSXbZVa^d_B2A0C27N36bTcPccaXQdcTSXbZNaT_PXaNcX\T,'$W*
.OW LETSVERIFYWHETHERTAKINGACELLDISKOFFLINEWILLAFFECTTHEAVAILABILITYOFTHEDISKGROUP7ECAN
DOTHATBYCHECKINGTHEPb\STPRcXePcX^]^dcR^\TANDPb\\^STbcPcdbATTRIBUTESOFOURGRIDDISKS&OR
EXAMPLE THEFOLLOWINGLISTINGSHOWSTHEOUTPUTFROMTHE;8BC6A8338B:COMMANDWHENAGRIDDISKINA
NORMALREDUNDANCYDISKGROUPISTAKENOFFLINE)NTHISEXAMPLE WEHAVEAB2A0C27N36DISKGROUP
CONSISTINGOFONEGRIDDISKFROMTHREEFAILUREGROUPST]ZRT[ T]ZRT[! ANDT]ZRT[" &IRSTWELLCHECK
THESTATUSOFTHEGRIDDISKSWHENALLDISKSAREACTIVE
JT]ZSQ!)a^^cLa^^c
-SR[XVRT[[NVa^d_[a^^cbdRT[[PS\X]RKRT[[R[XT[XbcVaXSSXbZK
PccaXQdcTb]P\TPb\STPRcXePcX^]^dcR^\TPb\\^STbcPcdbKkVaT_B2A0C27
T]ZRT[ )B2A0C27N36N23N$NRT[[ HTb>=;8=4
T]ZRT[!)B2A0C27N36N23N$NRT[[!HTb>=;8=4
T]ZRT[")B2A0C27N36N23N$NRT[["HTb>=;8=4
.OW WELLDEACTIVATEONEOFTHESETHEGRIDDISKSATTHESTORAGECELLANDRUNTHECOMMANDAGAIN
2T[[2;8-P[cTaVaXSSXbZB2A0C27N36N23N$NRT[[ X]PRcXeT
6aXS3XbZB2A0C27N36N23N$NRT[[ bdRRTbbUd[[hP[cTaTS

JT]ZSQ!)a^^cLa^^c
-SR[XVRT[[NVa^d_[a^^cbdRT[[PS\X]RKRT[[R[XT[XbcVaXSSXbZK
PccaXQdcTb]P\TPb\STPRcXePcX^]^dcR^\TPb\\^STbcPcdbKkVaT_B2A0C27
T]ZRT[ )B2A0C27N36N23N$NRT[[ HTb>55;8=4
T]ZRT[!)B2A0C27N36N23N$NRT[[!2P]]^cSTPRcXePcTSdTc^^cWTa^UU[X]TSXbZbX]cWT
SXbZVa^d_>=;8=4
T]ZRT[")B2A0C27N36N23N$NRT[["2P]]^cSTPRcXePcTSdTc^^cWTa^UU[X]TSXbZbX]cWT
SXbZVa^d_>=;8=4
!SYOUCANSEE THEPb\\^STbcPcdbATTRIBUTEOFTHEOFFLINEDGRIDDISKISNOWSETTO>55;8=4 ANDTHE
Pb\STPRcXePcX^]^dcR^\TATTRIBUTEOFTHEOTHERTWODISKSINTHEDISKGROUPWARNSUSTHATTHESEGRIDDISKS
CANNOTBETAKENOFFLINE$OINGSOWOULDCAUSE!3-TODISMOUNTTHEB2A0C27N36DISKGROUPDISKGROUP


#(!04%2 2%#/6%2).'%8!$!4!

■.OTE.OTICETHATWEUSETHESR[XCOMMANDTORUNTHE2T[[2;8COMMAND;8BC6A8338B:0CCA81DC4BON
EACHCELLINTHESTORAGEGRID"ASICALLY SR[XALLOWSUSTORUNACOMMANDCONCURRENTLYONMULTIPLENODES4HE
RT[[NVa^d_PARAMETERISAFILECONTAININGALISTOFALLOFOURSTORAGECELLS

)FTHEOUTPUTFROMTHE;8BC6A8338B:COMMANDINDICATESITISSAFETODOSO WECANTESTWHAT
HAPPENSWHENWETAKEONEOFTHEGRIDDISKSFOROURB2A0C27N36DISKGROUPOFFLINE&ORTHISTESTWEWILL
PHYSICALLYREMOVETHEDISKDRIVEFROMTHESTORAGECELLCHASSIS4HETESTCONFIGURATIONWILLBEASFOLLOWS
v &ORTHISTESTWEWILLCREATEANEWTABLESPACEWITHONEDATAFILE4HEDATAFILEISSETTO
Pdc^TgcT]SSOITWILLGROWINTOTHEDISKGROUPASDATAISLOADED
v .EXT WELLGENERATEACONSIDERABLEAMOUNTOFDATAINTHETABLESPACEBYCREATINGA
LARGETABLEACOUPLEOFBILLIONROWSFROM310NB46<4=CBSHOULDDOIT
v 7HILEDATAISBEINGLOADEDINTOTHELARGETABLE WEWILLPHYSICALLYREMOVETHEDISK
FROMTHECELLCHASSIS
v /NCETHEDATAISFINISHEDLOADING WEWILLREINSTALLTHEDISKANDOBSERVE%XADATAS
AUTOMATEDDISKRECOVERYINACTION
4HEFIRSTORDEROFBUSINESSISTOIDENTIFYTHELOCATIONOFTHEDISKDRIVEWITHINTHESTORAGECELL4ODO
THISWEWILLUSETHEGRIDDISKNAMETOFINDTHECELLDISKITRESIDESON THENWELLUSETHECELLDISKNAMETO
FINDTHESLOTADDRESSOFTHEDISKDRIVEWITHINTHESTORAGECELL/NCEWEHAVETHESLOTADDRESSWEWILLTURN
ONTHESERVICE,%$ONTHEFRONTPANELSOWEKNOWWHICHDISKTOREMOVE
&ROMSTORAGECELL WECANUSETHE;8BC6A8338B:COMMANDTOFINDTHENAMEOFTHECELLDISKWEARE
LOOKINGFOR
2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TRT[[SXbZfWTaT]P\T[XZTB2A0C27STcPX[
]P\T)B2A0C27N36N23N$NRT[["
RT[[3XbZ)23N$NRT[["
.OWTHATWEHAVETHECELLDISKNAME WECANUSETHE;8BC;D=COMMANDTOFINDTHESLOTADDRESSOF
THEPHYSICALDISKWEWANTTOREMOVE)NTHEFOLLOWINGLISTINGWESEETHESLOTADDRESSWERELOOKINGFOR

2T[[2;8-[Xbc;D=PccaXQdcTbRT[[SXbZ_WhbXRP[SaXeTbfWTaTRT[[SXbZ,23N$NRT[["STcPX[
RT[[3XbZ)23N$NRT[["
_WhbXRP[3aXeTb) %)$
7ITHTHESLOTADDRESS WECANUSETHE<TVP2[X%#COMMANDTOACTIVATETHEDRIVESSERVICE,%$ONTHE
FRONTPANELOFTHESTORAGECELL.OTETHATTHEKCHARACTERSINTHE<TVP2[X%#COMMANDBELOWAREUSEDTO
PREVENTTHE"ASHSHELLFROMINTERPRETINGTHEBRACKETS;= AROUNDTHEPHYSICALDRIVEADDRESS3INGLE
QUOTESWORKASWELL BYTHEWAY
^_c<TVPA083<TVP2[X<TVP2[X%#_S[^RPcT_WhbSaeKJ %)$KLP
4HEAMBER,%$ONTHEFRONTOFTHEDISKDRIVESHOULDBEFLASHINGASCANBESEENIN&IGURE 


#(!04%2 2%#/6%2).'%8!$!4!

Amber LED indicator flashes to


help you locate the right disk


Figure 9-2. Disk drive front panel

!NDINCASEYOUWEREWONDERING THESERVICE,%$CANBETURNEDOFFAGAINUSINGTHEbc^_OPTIONOF
THE<TVP2[X%#COMMAND LIKETHIS
^_c<TVPA083<TVP2[X<TVP2[X%#_S[^RPcT–stop_WhbSaeKJ %)$KLP
.OWTHATWEVELOCATEDTHERIGHTDISK WECANREMOVEITFROMTHESTORAGECELLBYPRESSINGTHERELEASE
BUTTONANDGENTLYPULLINGTHELEVERONTHEFRONTOFTHEDISK ASYOUCANSEEIN&IGURE 


Figure 9-3. Ejected disk drive

■.OTE!LLDISKDRIVESINTHESTORAGECELLAREHOT PLUGGABLEANDMAYBEREPLACEDWITHOUTPOWERINGDOWNTHE
STORAGECELL

#HECKINGTHEGRIDDISKSTATUSIN2T[[2;8 WESEETHATITHASBEENCHANGEDFROM!CTIVETO)NACTIVE
4HISMAKESTHEGRIDDISKUNAVAILABLETOTHE!3-STORAGECLUSTER


#(!04%2 2%#/6%2).'%8!$!4!

2T[[2;8-[XbcVaXSSXbZfWTaT]P\T,B2A0C27N23N$NRT[["*
B2A0C27N23N$NRT[["X]PRcXeT
!3-IMMEDIATELYNOTICESTHELOSSOFTHEDISK TAKESITOFFLINE ANDSTARTSTHEDISKREPAIRTIMER4HE
!3-ALERTLOGP[TacN0B<![^V SHOWSTHATWEHAVEABOUTHOURS TOBRINGTHEDISKBACK
ONLINEBEFORE!3-PERMANENTLYDROPSITFROMTHEDISKGROUP
P[TacN0B< [^V

CdT3TR!'')#)$#! 
6<>=RWTRZX]VSXbZ\^STbU^aVa^d_$Pc ! U^a_XS$!^bXS!(!(!
4aa^abX]UX[Td P__^aPR[TSXPVPb\Pb\0B<!caPRT0B<!NV\^]N$( !caR)
>A0!&%")2T[[bc^aPVT8>Taa^a8>UPX[TS^]SXbZ^ (! %' !$B2A0C27N23N$NRT[["Pc
^UUbTc# ('#U^aSPcP[T]VcW#(%
>A0!&%!%)4gPSPcPTaa^a)! 6T]TaXR8>Taa^a
F0A=8=6)FaXcT5PX[TSVa^d_)$SXbZ)"0D) ^UUbTc)#(%bXiT)#(%
...
F0A=8=6)3XbZB2A0C27N36N23N$N24;;"X]\^STg&UXb]^fQTX]V^UU[X]TS
F0A=8=6)3XbZB2A0C27N36N23N$N24;;"X]\^STg&UXb]^fQTX]VcPZT]^UU[X]T
...
CdT3TR!'')#")! ! 
F0A=8=6)3XbZB2A0C27N36N23N$N24;;"will be dropped in: (30596)bTRb^]0B<X]bc)!
CdT3TR!'')#")!"! 
4HESTATUSOFTHEDISKIN!3-CANBESEENUSINGTHEFOLLOWINGQUERYFROMONEOFTHE!3-INSTANCES
.OTICETHATTHEB2A0C27DISKGROUPISSTILLMOUNTEDONLINE 
BHB)0B<!-bT[TRcSV]P\TS]P\TSVbcPcTS\^d]cNbcPcdbSWTPSTaNbcPcdbSbcPcT
Ua^\ePb\NSXbZS
ePb\NSXbZVa^d_SV
fWTaTSV]P\T,B2A0C27N36
P]SSVVa^d_N]d\QTa,SVa^d_N]d\QTa
^aSTaQh !*

=0<4=0<4BC0C4<>D=CNB74034ANBC0CDBC0C4

B2A0C27B2A0C27N36N23N$N24;; <>D=C43202743<4<14A=>A<0;
B2A0C27B2A0C27N36N23N$N24;;!<>D=C43202743<4<14A=>A<0;
B2A0C27B2A0C27N36N23N$N24;;"<>D=C43<8BB8=6D=:=>F==>A<0;
7HILETHEDISKISOFFLINE !3-CONTINUESTOPOLLITSSTATUSTOSEEIFTHEDISKISAVAILABLE7ESEETHE
FOLLOWINGQUERYREPEATINGINTHE!3-ALERTLOG
P[TacN0B< [^V

F0A=8=6)4gPSPcP0dc^<P]PVT\T]c)>B?83)$( '>_TaPcX^]83)" $)X]SXbZVa^d_5PX[TS
B@;)4gPSPcP0dc^<V\c)BT[TRcSXbZbX]36cWPcPaT]^c>=;8=4
bT[TRc]P\TUa^\ePb\NSXbZNbcPc
fWTaT
\^STNbcPcdb,>55;8=4
P]S
Va^d_N]d\QTaX]

bT[TRcVa^d_N]d\QTaUa^\ePb\NSXbZVa^d_NbcPc


#(!04%2 2%#/6%2).'%8!$!4!

fWTaT
]P\T,B2A0C27N36
P]S
bcPcT,<>D=C43

/URTESTDATABASEALSODETECTEDTHELOSSOFTHEGRIDDISK ASCANBESEENINTHEDATABASEALERTLOG
P[TacNB2A0C27[^V

CdT3TR!'')#)$#! 
4aa^abX]UX[Td P__^aPR[TSXPVaSQ\bbRaPcRWB2A0C27caPRTB2A0C27NRZ_cN!!$!(caR)
>A0!&%")2T[[bc^aPVT8>Taa^a8>UPX[TS^]SXbZ^ (! %' !$B2A0C27N23N$NRT[["Pc
^UUbTc!%"% ! &!#U^aSPcP[T]VcW %"'#
>A0!&%!%)4gPSPcPTaa^a)! 6T]TaXR8>Taa^a
F0A=8=6)ATPS5PX[TSVa^d_)$SXbZ)"0D)%!'$^UUbTc) %"'#bXiT) %"'#
F0A=8=6)UPX[TSc^aTPS\Xaa^abXST ^UeXacdP[TgcT]c[^VXRP[TgcT]c^UUX[T!%X]
Va^d_J$ % '#&#"&LUa^\SXbZB2A0C27N23N$N24;;"P[[^RPcX^]d]Xc%!'$aTPb^]Taa^a*XU
_^bbXQ[TfX[[cahP]^cWTa\Xaa^abXST
=>C4)bdRRTbbUd[[haTPS\Xaa^abXST!^UeXacdP[TgcT]c[^VXRP[TgcT]c ^UUX[T!%X]
Va^d_J$ % '#&#"&LUa^\SXbZB2A0C27N23N$N24;;!P[[^RPcX^]d]Xc!!#
...
CdT3TR!'')#)$#! 
=>C4)SXbZ"B2A0C27N23N$N24;;"X]Va^d_$B2A0C27Xb^UU[X]TU^aaTPSb
=>C4)SXbZ"B2A0C27N23N$N24;;"X]Va^d_$B2A0C27Xb^UU[X]TU^afaXcTb
.OTICETHATTHEDATABASEAUTOMATICALLYSWITCHESTOTHEMIRRORCOPYFORDATAITCANNOLONGERREAD
FROMTHEFAILEDGRIDDISK4HISIS!3-NORMALREDUNDANCYINACTION
7HENWEREINSERTTHEDISKDRIVE THESTORAGECELLRETURNSTHEGRIDDISKTOASTATEOF!CTIVE AND!3-
BRINGSTHEDISKBACKONLINEAGAIN7ECANSEETHATTHEGRIDDISKHASRETURNEDTOASTATEOF202743ANDA
74034ANBC0CDBOF=>A<0;INTHEFOLLOWINGQUERY
BHB)0B<!-bT[TRcSV]P\TS]P\TSVbcPcTS\^d]cNbcPcdbSWTPSTaNbcPcdbSbcPcT
Ua^\ePb\NSXbZS
ePb\NSXbZVa^d_SV
fWTaTSV]P\T,B2A0C27
P]SSVVa^d_N]d\QTa,SVa^d_N]d\QTa
^aSTaQh !*

=0<4=0<4BC0C4<>D=CNB74034ANBC0CDBC0C4

B2A0C27B2A0C27N23N$N24;; <>D=C43202743<4<14A=>A<0;
B2A0C27B2A0C27N23N$N24;;!<>D=C43202743<4<14A=>A<0;
B2A0C27B2A0C27N23N$N24;;"<>D=C43202743<4<14A=>A<0;Å
)TISLIKELYTHATTHEDISKGROUPWILLNEEDTOCATCHUPONWRITINGDATATHATQUEUEDUPWHILETHEDISKWAS
OFFLINE)FTHEDURATIONOFTHEOUTAGEWASSHORTANDTHEWRITEACTIVITYWASLIGHT THENTHEREBALANCEWONT
TAKELONG)TMAYEVENGOUNNOTICED"UTIFTHEDISKHASBEENOFFLINEFORSEVERALHOURSORDAYS ORIFTHERE
WASALOTOFWRITEACTIVITYINTHEDISKGROUPDURINGTHEOUTAGE THISCOULDTAKEAWHILE'ENERALLYSPEAKING
THEDELAYISNOTAPROBLEM BECAUSEITALLHAPPENSINTHEBACKGROUND$URINGTHERESILVERINGPROCESS
!3-REDUNDANCYALLOWSOURDATABASESTOCONTINUEWITHNOINTERRUPTIONTOSERVICE
)FTHISHADBEENANACTUALDISKFAILUREANDWEACTUALLYREPLACEDTHEDISKDRIVE WEWOULDNEEDTOWAIT
FORTHE2!)$CONTROLLERTOACKNOWLEDGETHENEWDISKBEFOREITCOULDBEUSED4HISDOESNTTAKELONGBUT


#(!04%2 2%#/6%2).'%8!$!4!

YOUSHOULDCHECKTHESTATUSOFTHEDISKTOENSURETHATITSSTATUSIS.ORMALBEFOREUSINGIT4HEDISKSTATUS
MAYBEVERIFIEDUSINGTHE2T[[2;8COMMAND;8BC?7HB820;38B:ASSHOWNHERE
2T[[2;8-[Xbc_WhbXRP[SXbZfWTaTSXbZCh_T,7PaS3XbZ0=3bcPcdb,RaXcXRP[STcPX[
7HENADISKISREPLACED THESTORAGECELLPERFORMSTHEFOLLOWINGTASKSAUTOMATICALLY
v 4HEDISKFIRMWAREISUPDATEDTOMATCHTHEOTHERDISKDRIVESINTHESTORAGECELL
v 4HECELLDISKISRE CREATEDTOMATCHTHATOFTHEDISKITREPLACED
v 4HEREPLACEMENTCELLDISKISBROUGHTONLINESTATUSSETTO.ORMAL 
v 4HEGRIDDISKORGRIDDISKS THATWEREONTHEFAILEDDISKARERE CREATED
v 4HEGRIDDISKSTATUSISSETTO!CTIVE
/NCETHEREPLACEMENTGRIDDISKSARESETTO!CTIVE !3-AUTOMATICALLYOPENSTHEDISKANDBEGINSTHE
RESILVERINGPROCESS!LLTHESETASKSAREHANDLEDAUTOMATICALLYBY%XADATA MAKINGDISKREPLACEMENTA
FAIRLYPAINLESSPROCESS

7HENTO2EPLACEA#ELL$ISK
$ISKFAILURECANOCCURABRUPTLY CAUSINGTHEDISKTOGOOFFLINEIMMEDIATELY ORITCANOCCURGRADUALLY
MANIFESTINGPOOR)/PERFORMANCE3TORAGECELLSARECONSTANTLYMONITORINGTHEDISKDRIVES4HIS
MONITORINGINCLUDESDRIVEPERFORMANCE INTERMSOFBOTH)/ANDTHROUGHPUT AND3-!24METRICSSUCH
ASTEMPERATURE SPEED ANDREADWRITEERRORS4HEGOALISTOPROVIDEEARLYWARNINGFORDISKSTHATARELIKELY
TOFAILBEFORETHEYACTUALLYDO7HEN%XADATADETECTSAPROBLEM ANALERTISGENERATEDWITHSPECIFIC
INSTRUCTIONSONHOWTOREPLACETHEDISK)FTHESYSTEMHASBEENCONFIGUREDFOREMAILNOTIFICATIONTHESE
ALERTSWILLBEEMAILEDTOYOUAUTOMATICALLY
)NTHEPREVIOUSSECTIONWEWALKEDTHROUGHASIMULATEDDRIVEFAILURE(ADTHISBEENANACTUALDISK
FAILURE THEPROCEDUREFORREPLACINGTHEDISKWOULDFOLLOWTHESAMESTEPSWEUSEDFORTHESIMULATION"UT
WHATHAPPENSWHEN%XADATASEARLYWARNINGSYSTEMDETERMINESTHATADRIVEISLIKELYTOFAILSOON7HEN
%XADATADETECTSDRIVEPROBLEMSITSETSTHEPHYSICALDISKSTATUSATTRIBUTEACCORDINGLY4HEFOLLOWING
2T[[2;8COMMANDDISPLAYSTHESTATUSOFALLDISKSINTHESTORAGECELL
2T[[2;8-[Xbc_WhbXRP[SXbZPccaXQdcTb]P\TbcPcdbfWTaTSXbZch_T,7PaS3XbZ
"$)]^a\P[
"$) ]^a\P[
...
"$) ]^a\P[
4ABLE SHOWSTHEVARIOUSDISKSTATUSVALUESANDWHATTHEYMEAN


#(!04%2 2%#/6%2).'%8!$!4!

Table 9-3. Disk Status Definitions

Status Description
.ORMAL 4HEDRIVEISHEALTHY

0REDICTIVE&AILURE 4HEDISKISSTILLWORKINGBUTLIKELYTOFAILSOONANDSHOULDBEREPLACEDASSOONAS
POSSIBLE

0OOR0ERFORMANCE 4HEDISKISEXHIBITINGEXTREMELYPOORPERFORMANCEANDSHOULDBEREPLACED

0REDICTIVE&AILURE
)FADISKSTATUSSHOWS0REDICTIVE&AILURE !3-WILLAUTOMATICALLYDROPTHEGRIDDISKSFROMTHEDRIVEAND
REBALANCEDATATOOTHERDISKSINTHEDISKGROUPACCORDINGTOTHEREDUNDANCYPOLICYOFTHEAFFECTEDDISK
GROUPSTHATUSETHEDRIVE/NCE!3-HASFINISHEDREBALANCINGANDCOMPLETEDTHEDROPOPERATION YOU
CANREPLACETHEDISKDRIVE4HEFOLLOWINGLISTINGCANBEUSEDTOTRACKTHESTATUSOFTHE!3-DISK!STATUS
OF/FFLINEINDICATESTHAT!3-HASNOTYETFINISHEDREBALANCINGTHEDISKGROUP/NCETHEREBALANCEIS
COMPLETE THEDISKWILLNOLONGERAPPEARINTHELISTING"YTHEWAY TAILINGTHE!3-ALERTLOGISALSOAN
EXCELLENTWAYOFCHECKINGTHEPROGRESSOFTHEDROP
BHB)0B<!-bT[TRc]P\T\^STNbcPcdb
Ua^\ePb\NSXbZNbcPc
fWTaT]P\T[XZTB2A0C27
^aSTaQh *

=0<4<>34NBC

B2A0C27N23N$N24;; >=;8=4
B2A0C27N23N$N24;;!>=;8=4
B2A0C27N23N$N24;;">55;8=4

■#AUTION4HEFIRSTTWOPHYSICALDISKSINTHESTORAGECELLALSOCONTAINTHE,INUXOPERATINGSYSTEM4HE/3
PARTITIONSONTHESETWODISKSARECONFIGUREDASMIRRORSOFONEANOTHER)FONEOFTHESEDISKSFAILS THEDATAMUSTBE
INSYNCWITHTHEMIRRORDISKBEFOREYOUREMOVEIT5SETHE#ELL#,)COMMANDP[cTaRT[[eP[XSPcT
R^]UXVdaPcX^]TOVERIFYTHATNO\PS\ERRORSEXISTBEFOREREPLACINGTHEDISK

4HE2T[[2;8COMMANDE0;830C42>=586DA0C8>=PERFORMSTHISVERIFICATIONFORYOU
2T[[2;8-0;C4A24;;E0;830C42>=586DA0C8>=
2T[[T]ZRT[ bdRRTbbUd[[hP[cTaTS


#(!04%2 2%#/6%2).'%8!$!4!

0OOR0ERFORMANCE
)FADISKEXHIBITSPOORPERFORMANCE ITSHOULDBEREPLACED!SINGLEPOORLYPERFORMINGCELLDISKCAN
IMPACTTHEPERFORMANCEOFOTHERHEALTHYDISKS7HENADISKBEGINSPERFORMINGEXTREMELYBADLY ITS
STATUSWILLBESETTO0OOR0ERFORMANCE!SISTHECASEWITH0REDICTIVE&AILURESTATUS !3-WILL
AUTOMATICALLYDROPALLGRIDDISKSONTHISCELLDISK FROMTHEDISKGROUPSANDBEGINAREBALANCEOPERATION
/NCETHEREBALANCEISCOMPLETEYOUCANREMOVEANDREPLACETHEFAILINGDISKDRIVE9OUCANUSETHE
2T[[2;8COMMAND20;81A0C4TOMANUALLYCHECKTHEPERFORMANCEOFALLDISKSINTHESTORAGECELL4HE
FOLLOWINGLISTINGSHOWSTHEOUTPUTOFTHE20;81A0C4COMMAND/RDINARILY RT[[baeSHOULDBESHUTDOWN
BEFORERUNNING20;81A0C4 BECAUSEITCANSIGNIFICANTLYIMPACT)/PERFORMANCEFORDATABASESUSINGTHE
STORAGECELL)FYOUCANNOTSHUTDOWNRT[[baeFORTHETEST YOUCANRUN20;81A0C4USINGTHE5>A24OPTION
!SDAUNTINGASTHATSOUNDS 5>A24SIMPLYOVERRIDESTHESAFETYSWITCHANDALLOWSYOUTORUN20;81A0C4
WHILERT[[baeISUPANDAPPLICATIONSAREUSINGTHECELLDISKS4HEFOLLOWINGLISTINGSHOWSTHEOUTPUTFROM
THE20;81A0C4COMMANDRUNONAHEALTHYSETOFCELLDISKS
2T[[2;8-RP[XQaPcT
2P[XQaPcX^]fX[[cPZTPUTf\X]dcTb
0VVaTVPcTaP]S^\aTPScWa^dVW_dcPRa^bbP[[WPaSSXbZ[d]b) !$<1?B
0VVaTVPcTaP]S^\aTPScWa^dVW_dcPRa^bbP[[U[PbWSXbZ[d]b)"'(( '<1?B
0VVaTVPcTaP]S^\aTPS8>b_TabTR^]S8>?BPRa^bbP[[WPaSSXbZ[d]b) &&
0VVaTVPcTaP]S^\aTPS8>b_TabTR^]S8>?BPRa^bbP[[U[PbWSXbZ[d]b) #$ $'
2^]ca^[[TaaTPScWa^dVW_dc) !#$'<1?B
2P[XQaPcX]VWPaSSXbZbaTPS^][h
;d]N^]SaXeTJ"$)LaP]S^\aTPScWa^dVW_dc)'"'<1?BP]S ##8>?B
;d]N ^]SaXeTJ"$) LaP]S^\aTPScWa^dVW_dc)'&'$<1?BP]S #$8>?B
;d]N ^]SaXeTJ"$) LaP]S^\aTPScWa^dVW_dc)( !"<1?BP]S #$8>?B
;d]N ^]SaXeTJ"$) LaP]S^\aTPScWa^dVW_dc)( "!<1?BP]S $8>?B
;d]N!^]SaXeTJ"$)!LaP]S^\aTPScWa^dVW_dc)(!&<1?BP]S #&8>?B
;d]N"^]SaXeTJ"$)"LaP]S^\aTPScWa^dVW_dc)( $(<1?BP]S $8>?B
;d]N#^]SaXeTJ"$)#LaP]S^\aTPScWa^dVW_dc)("& <1?BP]S #(8>?B
;d]N$^]SaXeTJ"$)$LaP]S^\aTPScWa^dVW_dc)'('%<1?BP]S #&8>?B
;d]N%^]SaXeTJ"$)%LaP]S^\aTPScWa^dVW_dc)( %$<1?BP]S #'8>?B
;d]N&^]SaXeTJ"$)&LaP]S^\aTPScWa^dVW_dc)''%<1?BP]S #$8>?B
;d]N'^]SaXeTJ"$)'LaP]S^\aTPScWa^dVW_dc)( <1?BP]S #(8>?B
;d]N(^]SaXeTJ"$)(LaP]S^\aTPScWa^dVW_dc)(' <1?BP]S #(8>?B
2P[XQaPcX]VU[PbWSXbZbaTPS^][h]^cTcWPcfaXcTbfX[[QTbXV]XUXRP]c[hb[^fTa
;d] N^]SaXeTJJ!)))LLaP]S^\aTPScWa^dVW_dc)!#!$ <1?BP]S ("$8>?B
;d] N ^]SaXeTJJ!)) )LLaP]S^\aTPScWa^dVW_dc)!#'(<1?BP]S ( '8>?B
;d] N!^]SaXeTJJ!))!)LLaP]S^\aTPScWa^dVW_dc)!#(<1?BP]S ( 8>?B
;d] N"^]SaXeTJJ!))")LLaP]S^\aTPScWa^dVW_dc)!# %!<1?BP]S '(!"8>?B
;d]!N^]SaXeTJJ#)))LLaP]S^\aTPScWa^dVW_dc)!#!'<1?BP]S (%%8>?B
;d]!N ^]SaXeTJJ#)) )LLaP]S^\aTPScWa^dVW_dc)!$  <1?BP]S (!%"8>?B
;d]!N!^]SaXeTJJ#))!)LLaP]S^\aTPScWa^dVW_dc)!#$%$<1?BP]S ( (8>?B
;d]!N"^]SaXeTJJ#))")LLaP]S^\aTPScWa^dVW_dc)!#&'"<1?BP]S ( "(8>?B
;d]#N^]SaXeTJJ )))LLaP]S^\aTPScWa^dVW_dc)!$"%<1?BP]S ("%8>?B
;d]#N ^]SaXeTJJ )) )LLaP]S^\aTPScWa^dVW_dc)!#('!<1?BP]S (%8>?B
;d]#N!^]SaXeTJJ ))!)LLaP]S^\aTPScWa^dVW_dc)!$!'!<1?BP]S ( #8>?B
;d]#N"^]SaXeTJJ ))")LLaP]S^\aTPScWa^dVW_dc)!$'<1?BP]S '(&(8>?B
;d]$N^]SaXeTJJ")))LLaP]S^\aTPScWa^dVW_dc)!$"! <1?BP]S ( %&8>?B
;d]$N ^]SaXeTJJ")) )LLaP]S^\aTPScWa^dVW_dc)!$! <1?BP]S ( $!8>?B
;d]$N!^]SaXeTJJ"))!)LLaP]S^\aTPScWa^dVW_dc)!$ '%<1?BP]S ( %8>?B
;d]$N"^]SaXeTJJ"))")LLaP]S^\aTPScWa^dVW_dc)!##!#<1?BP]S '(!$8>?B


#(!04%2 2%#/6%2).'%8!$!4!

20;81A0C4aTbd[cbPaTfXcWX]P]PRRT_cPQ[TaP]VT

20;81A0C4bcaTbbcTbcXb]^fad]]X]V
2P[XQaPcX^]WPbUX]XbWTS

Cell Flash Cache Failure


%XADATASTORAGECELLSCOMEEQUIPPEDWITHFOUR&0#)EFLASHCACHECARDS%ACHCARDHASFOURFLASH
CACHEDISKS&$/-S FORATOTALOFFLASHDISKS4HESEFLASHCACHECARDSOCCUPYSLOTS   ANDINSIDE
THESTORAGECELL)FAFLASHCACHEMODULEFAILS PERFORMANCEOFTHESTORAGECELLWILLBEDEGRADEDANDIT
SHOULDBEREPLACEDATYOUREARLIESTOPPORTUNITY)FYOUAREUSINGSOMEOFYOURFLASHCACHEFORFLASHDISK
BASEDGRIDDISKS YOURDISKGROUPREDUNDANCYWILLBEAFFECTEDASWELL4HESEFLASHCACHECARDSARENOT
HOT PLUGGABLE SOREPLACINGTHEMWILLREQUIREYOUTOPOWEROFFTHEAFFECTEDCELL
)FAFLASHDISKFAILS %XADATAWILLSENDYOUANEMAILNOTIFYINGYOUOFTHEFAILURE4HEEMAILWILLINCLUDE
THESLOTADDRESSOFTHECARD ANDIFASPECIFIC&$/-HASFAILEDITWILLINCLUDETHEADDRESSOFTHE&$/-ON
THECARD  OR 4HEFAILEDFLASHCACHECARDCANBESEENUSINGTHE2T[[2;8COMMAND;8BC
?7HB820;38B:ASFOLLOWS
2T[[2;8-[Xbc_WhbXRP[SXbZfWTaTSXbZch_T,U[PbWSXbZP]SbcPcdb,]^a\P[

]P\T)J#))")L
SXbZCh_T)5[PbW3XbZ
[d]b)!N"
\PZT<^ST[)<0AE4;;B3''B0!
_WhbXRP[5Xa\fPaT)3!H
_WhbXRP[8]bTacCX\T)! &!'C!)()#"$)
_WhbXRP[8]cTaUPRT)bPb
_WhbXRP[BTaXP[)$'!R&S%5<>3"
_WhbXRP[BXiT)!!'''% $!"#"&$6
b[^c=d\QTa)?28B[^c)!*53><)"
bcPcdb)critical
4HEb[^c=d\QTaATTRIBUTEHERESHOWSYOUWHERETHECARDAND&$/-AREINSTALLED)NOURCASE THE
CARDISINSTALLEDIN0#)ESLOT/NCEYOUHAVETHISINFORMATION YOUCANSHUTDOWNANDPOWEROFFTHE
STORAGECELLANDREPLACETHEDEFECTIVEPART+EEPINMINDTHATWHENTHECELLISOFFLINE !3-WILLNOLONGER
HAVEACCESSTOTHEGRIDDISKS3OBEFOREYOUSHUTDOWNTHECELL MAKESURETHATSHUTTINGITDOWNWILLNOT
IMPACTTHEAVAILABILITYOFTHEDISKGROUPSITSUPPORTS4HISISTHESAMEPROCEDUREWEDESCRIBEDINTHE
h#ELL$ISK&AILUREvSECTIONOFTHISCHAPTER/NCETHEPARTISREPLACEDANDTHECELLREBOOTS THESTORAGECELL
WILLAUTOMATICALLYCONFIGURETHECELLDISKONTHEREPLACEMENTCARDAND IFITWASUSEDFORFLASHCACHE YOU
WILLSEEYOURFLASHCACHERETURNTOITSFORMERSIZE

Cell Failure
4HEREARETWOMAINTYPESOFCELLFAILURE TEMPORARYANDPERMANENT4EMPORARYCELLFAILURESCANBEAS
HARMLESSASACELLREBOOTORAPOWERFAILURE%XTENDEDCELLFAILURESCANALSOBETEMPORARYINNATURE&OR
EXAMPLE IFAPATCHINSTALLATIONFAILSORACOMPONENTMUSTBEREPLACED ITCOULDTAKETHECELLOFFLINEFOR
HOURSOREVENDAYS0ERMANENTCELLFAILURESAREMORESEVEREINNATUREANDREQUIRETHEENTIRECELLCHASSIS
TOBEREPLACED)NEITHERCASE IFYOURSYSTEMISCONFIGUREDPROPERLY THEREWILLBENOINTERRUPTIONTO!3-
ORYOURDATABASES)NTHISSECTIONWELLTAKEALOOKATWHATHAPPENSWHENACELLISTEMPORARILYOFFLINE AND
WHATTODOIFYOUEVERHAVETOREPLACEONE


#(!04%2 2%#/6%2).'%8!$!4!

4EMPORARY#ELL&AILURE
!SDISCUSSEDIN#HAPTER %XADATASTORAGECELLSARE3UNSERVERSWITHINTERNALDISKDRIVESRUNNING/RACLE
%NTERPRISE,INUX)FASTORAGECELLGOESOFFLINE ALLTHEDISKSONTHATCELLBECOMEUNAVAILABLETOTHE
DATABASESERVERS4HISMEANSTHATALLDISKGROUPSCONTAININGDATABASEDATAASWELLAS/#2AND6OTING
FILES ONTHATSTORAGECELLAREOFFLINEFORTHEDURATIONOFTHEOUTAGE!3-FAILUREGROUPSPROVIDE
REDUNDANCYTHATALLOWSYOURCLUSTERANDDATABASESTOCONTINUETORUNDURINGTHEOUTAGE ALBEITWITH
REDUCED)/PERFORMANCE7HENGRIDDISKSARECREATEDINASTORAGECELLTHEYAREASSIGNEDTOAFAILURE
GROUP%ACHCELLCONSTITUTESAFAILUREGROUP ASCANBESEENINTHEFOLLOWINGLISTING
BHB)0B<!-bT[TRcSV]P\TSXbZVa^d_S]P\TSXbZSUPX[Va^d_
Ua^\ePb\NSXbZVa^d_SV
ePb\NSXbZS
fWTaTSVVa^d_N]d\QTa,SVa^d_N]d\QTa
P]SSV]P\T[XZTB2A0C27
^aSTaQh !"*

38B:6A>D?38B:508;6A>D?

B2A0C27N36B2A0C27N36N23N$N24;; 24;; 
B2A0C27N36B2A0C27N36N23N$N24;;!24;;!
B2A0C27N36B2A0C27N36N23N$N24;;"24;;"
"ECAUSEB2A0C27N36WASCREATEDUSING.ORMALREDUNDANCY OURB2A0C27DATABASESHOULDBEABLETO
CONTINUEEVENIFANENTIRESTORAGECELLDIES)NTHISSECTIONWELLBETESTINGWHATHAPPENSWHENASTORAGE
CELLGOESDARK7ELLUSETHESAMEDISKGROUPCONFIGURATIONWEUSEDFORTHEDISKFAILURESIMULATIONEARLIER
INTHISCHAPTER4OSIMULATEACELLFAILURE WELLLOGINTOTHE),/-ONSTORAGECELLANDPOWERITOFF
"ECAUSEEACHSTORAGECELLCONSTITUTESAN!3-FAILUREGROUP THISSCENARIOISVERYSIMILARTOLOSINGASINGLE
CELLDISK )/PERFORMANCENOTWITHSTANDING4HEDIFFERENCE OFCOURSE ISTHATWEARELOSINGANENTIRE
FAILUREGROUP*USTASWEDIDINOURCELLDISKFAILURETESTS WELLGENERATEDATAINTHEB2A0C27DATABASE
DURINGTHEFAILURETOVERIFYTHATTHEDATABASECONTINUESTOSERVICECLIENTREQUESTSDURINGTHECELLOUTAGE
4OGENERATE)/FORTHETESTSWELLBEREPEATEDLYINSERTINGROWSFROMTHE186C01TABLEINTO
THEQXVcPQ!TABLE
A9>7=B>=)B2A0C27-X]bTacP__T]SX]c^QXVcPQ!]^[^VVX]VbT[TRcUa^\QXVcPQ*
A9>7=B>=)B2A0C27-R^\\Xc*
7HILETHEABOVEINSERTSARERUNNING LETSPOWEROFFCELLANDTAKEALOOKATTHEDATABASEALERTLOG
!SYOUCANSEE THEDATABASETHROWSANERRORWHENREADINGFROMADISKON#ELL hFAILEDTOREADMIRROR
SIDEv!COUPLEOFLINESFURTHERDOWNINTHELOGYOUSEETHEDATABASESUCCESSFULLYREADINGTHEMIRROR
COPYOFTHEEXTENT hSUCCESSFULLYREADMIRRORSIDEv
P[TacNB2A0C27[^V

5aX9P] #! )()#$! 
4aa^abX]UX[Td P__^aPR[TSXPVaSQ\bbRaPcRWB2A0C27caPRTB2A0C27N\\^]N" %&"caR)
>A0!&%")2T[[bc^aPVT8>Taa^a8>UPX[TS^]SXbZ^ (! %' !$B2A0C27N23N$NRT[["Pc
^UUbTc!#'"##"$!U^aSPcP[T]VcW %"'#
>A0!&%!%)4gPSPcPTaa^a) !=Tcf^aZTaa^a
...
F0A=8=6)ATPS5PX[TSVa^d_)"SXbZ)!0D)$(!^UUbTc) %"'#bXiT) %"'#


#(!04%2 2%#/6%2).'%8!$!4!

F0A=8=6)UPX[TSc^aTPS\Xaa^abXST ^UeXacdP[TgcT]c![^VXRP[TgcT]c^UUX[T!%X]
Va^d_J"%'(#&&%" LUa^\SXbZB2A0C27N23N$N24;;"P[[^RPcX^]d]Xc$(!aTPb^]Taa^a*XU
_^bbXQ[TfX[[cahP]^cWTa\Xaa^abXST
=>C4)bdRRTbbUd[[haTPS\Xaa^abXST!^UeXacdP[TgcT]c![^VXRP[TgcT]c ^UUX[T!%X]
Va^d_J"%'(#&&%" LUa^\SXbZB2A0C27N23N$N24;; P[[^RPcX^]d]Xc$'(
4URNINGTOTHE!3-ALERTLOGWESEETHAT!3-ALSONOTICEDTHEISSUEWITH#ELLANDRESPONDSBY
TAKINGGRIDDISKB2A0C27N23N$N24;;"OFFLINE.OTICEFURTHERONTHAT!3-ISINTHEPROCESSOFTAKING
OTHERGRIDDISKSOFFLINEASWELL4HISCONTINUESUNTILALLGRIDDISKSON#ELLAREOFFLINE
P[TacN0B<![^V

CTbc2T[["5PX[daT
5aX9P] #! )()#$! 
=>C4)_a^RTbb!"##$X]XcXPcX]V^UU[X]T^USXbZ!"( $(""&'#B2A0C27N23N$N24;;"fXcW\PbZ
g&TX]Va^d_"
...
F0A=8=6)3XbZB2A0C27N23N$N24;;"X]\^STg&UXb]^fQTX]V^UU[X]TS
5aX9P] #! )()#&! 
=>C4)_a^RTbb (&$"X]XcXPcX]V^UU[X]T^USXbZ "( $(""%"A42>N23N N24;;"fXcW\PbZ
g&TX]Va^d_!
#HECKINGTHEEB4BB8>=ANDEB@;VIEWSWECANSEETHATTHEINSERTISSTILLRUNNING
B83?A>6B@;N83B@;NC4GC

"b`[_[db/T](]RRic(`RV\'X]bTacP__T]SX]c^QXVcPQ!]^[^VVX
3OOURDATABASESCONTINUETOSERVICECLIENTREQUESTSEVENWHENOFALLSTORAGEISLOST4HATSPRETTY
AMAZING,ETSPOWERUP#ELLAGAINANDOBSERVEWHATHAPPENSWHENTHISSTORAGEISAVAILABLEAGAIN
,OOKINGAT#ELLSALERTLOGWESEERT[[baeBRINGOURGRIDDISKSBACKONLINEAGAIN4HELASTTHINGWE
SEEIN#ELLSALERTLOGISITREJOININGTHESTORAGEGRIDBYESTABLISHINGAHEARTBEATWITHTHESXbZ\^]DISK
MONITOR PROCESSONTHEDATABASESERVERS
2T[["0[Tac[^V

Bc^aPVT8]STg0[[^RPcX^]U^a6aXS3XbZB2A0C27N36N23N$NRT[["bdRRTbbUd[JR^ST) L
2T[[3XbZe$]P\T,23N$NRT[["bcPcdb,=>A<0;VdXS,TSR$U% T%P%#'R(P#P%$'R#"P'%P&RU^d]S
^]STe,STebSU
6aXSSXbZB2A0C27N36N23N$NRT[["]d\QTaXb(%
Bc^aPVT8]STg0[[^RPcX^]U^a6aXS3XbZA42>N23N%NRT[["bdRRTbbUd[JR^ST) L
Bc^aPVT8]STg0[[^RPcX^]U^a6aXS3XbZBHBC4<N23N%NRT[["bdRRTbbUd[JR^ST) L
Bc^aPVT8]STg0[[^RPcX^]U^a6aXS3XbZBC064N23N%NRT[["bdRRTbbUd[JR^ST) L
Bc^aPVT8]STg0[[^RPcX^]U^a6aXS3XbZ30C0N23N%NRT[["bdRRTbbUd[JR^ST) L
2T[[3XbZe$]P\T,23N%NRT[["bcPcdb,=>A<0;VdXS, !'T Q%S"%U^d]S
^]STe,STebSV
6aXSSXbZA42>N23N%NRT[["]d\QTaXb 
6aXSSXbZBHBC4<N23N%NRT[["]d\QTaXb #
6aXSSXbZBC064N23N%NRT[["]d\QTaXb '
6aXSSXbZ30C0N23N%NRT[["]d\QTaXb !
...
5aX9P] #!!)$ )"! 
7TPacQTPcfXcWSXbZ\^]bcPacTS^]T]ZSQ!T]ZXcTRR^\
7TPacQTPcfXcWSXbZ\^]bcPacTS^]T]ZSQ T]ZXcTRR^\


#(!04%2 2%#/6%2).'%8!$!4!

5aX9P] #!!)$ )#! 


...

0ERMANENT#ELL&AILURE
3OFARWEVEDISCUSSEDWHATHAPPENSWHENACELLDISKISLOSTANDWHATHAPPENSWHENASTORAGECELLIS
TEMPORARILYOFFLINE"UTWHATDOYOUDOWHENASTORAGECELLCOMPLETELYFAILSANDTHEREISNOBRINGINGIT
BACKAGAIN%XADATAPROVIDESAMECHANISMFORREMOVINGYOURGOODDISKDRIVESFROMAFAILEDSTORAGECELL
ANDMOVINGTHEMTOAREPLACEMENTCELL
"ELIEVEITORNOT REPLACINGASTORAGECELLISNOTATERRIBLYCOMPLICATEDPROCESS*USTABOUTEVERYTHING
YOUNEEDISCONTAINEDONTHOSESPINNINGDISKSINSIDETHECELLCHASSIS!SLONGASYOUROPERATINGSYSTEMIS
INTACTONTHESYSTEMVOLUMES YOUHAVEJUSTABOUTEVERYTHINGYOUNEEDTOMAKETHEMOVE+EEPINMIND
THATTHEDISKREPAIRTIMERMIGHTNEEDTOBEREADJUSTEDTOALLOWUSTIMEFORANEXTENDEDOUTAGE)TWILL
AFTERALL TAKETIMETOSHIPANEWSTORAGECELLTOYOURDATACENTER4HEPROCESSLOOKSSOMETHINGLIKETHIS
1. )FPOSSIBLE YOUSHOULDTAKECOPIESOFTHECONFIGURATIONFILESFROMTHEFAILED
STORAGECELL4HEYMAYCOMEINHANDYLATERON
v TcRW^bcb
v TcR\^S_a^QTR^]U
v TcRbhbR^]UXV]Tcf^aZ
v TcRbhbR^]UXV]Tcf^aZbRaX_cb
2. 6ERIFYTHATTHEDISKREPAIRTIMERWILLGIVEYOUENOUGHTIMETOCOMPLETETHE
PROCEDURE
BHB)0B<!-bT[TRcSV]P\T3XbZ6^d_Pcca]P\TPccaeP[dT
Ua^\ePb\NSXbZVa^d_SVePb\NPccaXQdcTPcca
fWTaTSVVa^d_N]d\QTa,PccaVa^d_N]d\QTa
P]SPcca]P\T,SXbZNaT_PXaNcX\T*

3XbZ6^d_=0<4E0;D4

30C0N36SXbZNaT_PXaNcX\T'W
A42>N36SXbZNaT_PXaNcX\T'W
B2A0C27N36SXbZNaT_PXaNcX\T'W
BC064N36SXbZNaT_PXaNcX\T'W
BHBC4<N36SXbZNaT_PXaNcX\T'W
)FYOUNEEDTO YOUCANADJUSTTHEDISKREPAIRTIMERFORYOURDISKGROUPSBY
LOGGINGINTOTHE!3-INSTANCEANDUSINGTHE0;C4A38B:6A>D?COMMAND&OR
EXAMPLE
JT]ZSQ!)^aPR[T)0B<!LW^\T^aPR[T
-b`[_[dbPbbhbPb\
q
BHB)0B<!-P[cTaSXbZVa^d_B2A0C27N36bTcPccaXQdcTSXbZNaT_PXaNcX\T,&!W*
3. $EACTIVATETHEGRIDDISKSONTHEFAILEDSTORAGECELLANDTHENSHUTITDOWN4HIS
CANBEDONEUSINGTHE2T[[2;8AND,INUXCOMMANDSASFOLLOWS


#(!04%2 2%#/6%2).'%8!$!4!

24;;2[X-P[cTaVaXSSXbZP[[X]PRcXeT

JT]ZRT[")a^^cLa^^c
-bWdcS^f]~W]^f
4. /NCETHESYSTEMISSHUTDOWNYOUCANPOWERITOFFUSINGTHEPOWERBUTTONON
THEFRONTPANEL
5. /PENTHECASESOFBOTHTHEFAILEDCELLANDTHEREPLACEMENTCELL ANDMOVETHE
FOLLOWINGCOMPONENTSFROMTHEOLDCELLTOTHENEWCELL
a. &LASH#ACHECARDS
b. $ISKCONTROLLERCARD
c. 53"FLASHDRIVE
d. $ISKDRIVES

■#AUTION)TISIMPORTANTTHATYOUPLACETHEFIRSTTWODISKSINTHESAMELOCATIONONTHENEWSTORAGECELL4HESEARE
THESYSTEMVOLUMESTHATCONTAINTHE,INUXOPERATINGSYSTEM)FYOUDONT THECELLMAYNOTBOOT!LSOMAKESURE
YOUINSTALLTHEFLASHCACHEMODULESINTHESAME0#)SLOTSASTHEYWEREINTHEFAILEDCELL)NGENERALITISAGOOD
PRACTICETOSIMPLYREMOVEEACHDEVICE ONEATATIME ANDREINSTALLTHEMINTOTHESAMELOCATIONONTHENEWSTORAGE
CELL

6. 0OWERONTHENEWCELL
7. ,OGINTOTHENEWCELLASROOT USINGEITHERTHE+6-OR),/-INTERFACE
8. #HECKTHECONFIGURATIONFILESINTHEFOLLOWINGDIRECTORIES)FTHEYAREDAMAGED
OROTHERWISECORRUPTED REPLACETHEMWITHTHEBACKUPCOPIESYOUCREATEDIN
STEP
9. 4HENETWORKSETTINGSFORYOUR%THERNETDEVICESWILLREMAINTHESAMEWITHTHE
EXCEPTIONOFTHEHARDWAREADDRESS OR-!#ADDRESS&INDTHENEW-!#
ADDRESSESOFTHENETWORKDEVICESETH ETH ETH ANDETH4HISCANBEDONE
USINGTHEXUR^]UXVCOMMANDASFOLLOWS
JT]ZRT[")a^^cLa^^c
-XUR^]UXVTcW

TcW;X]ZT]RP_)4cWTa]Tc7FPSSa)! )!')'4)01)3'
X]TcPSSa) (! %''!$1RPbc) (! %' !$$<PbZ)!$$!$$!$!
X]Tc%PSSa)UT'))!! )!'UU)UT'T)PQS'%#BR^_T);X]Z
D?1A>0320BCAD==8=6<D;C820BC<CD) $<TcaXR) 
AG_PRZTcb)%!"'Taa^ab)Sa^__TS)^eTaad]b)UaP\T)
CG_PRZTcb)!!"!%Taa^ab)Sa^__TS)^eTaad]b)RPaaXTa)
R^[[XbX^]b)cg`dTdT[T]) 


#(!04%2 2%#/6%2).'%8!$!4!

AGQhcTb)$'"&#$$<X1CGQhcTb)#"'# (# <X1


<T\^ah)U'R%U'R'
10. 5SINGTHE-!#ADDRESSESFROMSTEP EDITTHETcRbhbR^]UXV]Tcf^aZ
bRaX_cbXURUVTcWj"lFILESANDREPLACETHEOLD-!#ADDRESSESWITHTHENEW
ONES(EREISANEXAMPLEUSINGTHEXURUVTcWFILE
JT]ZRT[")a^^cLTcRbhbR^]UXV]Tcf^aZbRaX_cb
-RPcXURUVTcW
3>=>CA4<>E4C74B4;8=4B
64=4A0C431H24;;
34E824,TcW
1>>C?A>C>,bcPcXR
>=1>>C,hTb
8?033A, (! %''!$
=4C<0B:,!$$!$$!$!
=4CF>A:, (! %''
1A>0320BC, (! %' !$$
60C4F0H, (! %'  
7>C?;D6,]^
8?E%8=8C,]^
7F033A,00:21:28:8e:ab:d8Å Replace this MAC address with the new address
11. 2EBOOTTHENEWSTORAGECELLTOPICKUPTHENEW-!#ADDRESSES
12. !FTERREBOOTINGTHECELL YOUSHOULDBEABLETOLOGINTOITUSINGbbW JUSTASYOU
NORMALLYWOULD,OGINANDREACTIVATETHEGRIDDISKSUSINGTHE2T[[2;8
COMMAND0;C4A6A8338B:COMMANDASFOLLOWS
2T[[2;8-P[cTaVaXSSXbZP[[PRcXeT
13. /NCETHEGRIDDISKSAREACTIVATED !3-WILLSETTHEMTOASTATEOFONLINEAND
BEGINUSINGTHEMONCEAGAIN4HISISONLYTRUEIFTHEDISKREPAIRTIMERHASNOT
EXPIRED
14. 4HELASTTHINGYOUWILLNEEDTODOISCONFIGURETHE),/-FOR!32#ONFIGURING
THE),/-ISALITTLEOFFTOPICANDISCOVEREDVERYWELLINTHE/RACLE
DOCUMENTATION SOWEWONTBEDISCUSSINGITHERE

Summary
%XADATAISAHIGHLYREDUNDANTPLATFORMWITHALOTOFMOVINGPARTS"USINESSESDONTTYPICALLYINVESTIN
SUCHAPLATFORMWITHOUTEXPECTATIONSOFMINIMALDOWNTIME!SSUCH %XADATAISCOMMONLYUSEDFOR
HOSTINGMISSION CRITICALBUSINESSAPPLICATIONSWITHVERYSTRINGENTUPTIMEREQUIREMENTS+NOWINGWHAT
TODOWHENTHINGSGOWRONGISCRITICALTOMEETINGTHESEUPTIMEREQUIREMENTS)NTHISCHAPTERWEVE
DISCUSSEDTHEPROPERPROCEDURESFORPROTECTINGYOURAPPLICATIONSANDCUSTOMERSFROMCOMPONENTAND
SYSTEMFAILURES"EFOREYOURSYSTEMISROLLEDINTOPRODUCTION MAKEITAPRIORITYTOPRACTICEBACKINGUP
ANDRESTORINGSYSTEMVOLUMES REMOVINGANDREPLACINGDISKDRIVES ANDREBOOTINGSTORAGECELLS AND
BECOMEFAMILIARWITHWHATHAPPENSTOYOURDATABASES2UNTHEDIAGNOSTICTOOLSWEVEDISCUSSEDINTHIS
CHAPTERANDMAKESUREYOUUNDERSTANDHOWTOINTERPRETTHEOUTPUT)FYOUAREGOINGTOBERESPONSIBLE
FORMAINTAINING%XADATAFORYOURCOMPANY NOWISTHETIMETOGETCOMFORTABLEWITHTHETOPICSDISCUSSED
INTHISCHAPTER


C H A P T E R 10



Exadata Wait Events

4HE/RACLEDATABASEISAVERYWELLINSTRUMENTEDPIECEOFCODE ANDITHASBEENSOFORQUITEAWHILE)T
KEEPSTRACKOFTHEAMOUNTOFTIMESPENTINDISCRETEOPERATIONSVIATHEUSEOFWAITEVENTS7HILETHE
DATABASESOFTWAREISQUITECOMPLEX WAITEVENTANALYSISALLOWSPERFORMANCEANALYSTSTODETERMINE
PRECISELYWHERETHEDATABASEISSPENDINGITSTIME-ANYDIFFICULTPERFORMANCEPROBLEMSCANBERESOLVED
BYANALYZINGTHESEWAITEVENTS4HEINTRODUCTIONOF%XADATAHASRESULTEDINTHECREATIONOFSEVERALNEW
WAITEVENTSTOSUPPORTTHEUNIQUEOPERATIONSTHATAREPERFORMEDONTHEPLATFORM4HISCHAPTERWILLFOCUS
ONDESCRIBINGTHESENEWEVENTSANDHOWTHEYRELATETOTHEACTIVITIESACTUALLYBEINGPERFORMED WHILE
CONTRASTINGTHEMWITHTHEWAITEVENTSUSEDBYTHEDATABASEONNON %XADATAPLATFORMS)TWILLALSO
DESCRIBEAFEWWAITEVENTSTHATARENTSPECIFICTO%XADATABUTPLAYANIMPORTANTROLEON%XADATA
PLATFORMS
!wait eventISACTUALLYASECTIONOFCODETHATISTIMEDANDASSIGNEDANAME4HEPIECESOFCODE
COVEREDBYTHESEEVENTSAREQUITEOFTENDISCRETEOPERATINGSYSTEMCALLSSUCHAS)/REQUESTS BUTSOME
WAITEVENTSCOVERCONSIDERABLYLARGERPORTIONSOFCODE4HEEVENTSMAYEVENINCLUDESECTIONSOFCODE
THATCONTAINOTHERWAITEVENTS4HENAMINGOFWAITEVENTSHASBEENSOMEWHATINCONSISTENTOVERTHE
YEARS ANDMANYEVENTSHAVESOMEWHATMISLEADINGNAMES%VENTHOUGHSOMEOFTHEEVENTNAMESARE
ACKNOWLEDGEDTOBEPOTENTIALLYMISLEADING /RACLEHASBEENUNDERSTANDABLYRELUCTANTTOCHANGETHEM
4HE%XADATAPLATFORMHASPROVIDEDANEXCUSETORENAMESOMEOFTHE)/ RELATEDEVENTS ANDASYOULLSEE
SHORTLY THEDEVELOPERSTOOKTHEOPPORTUNITYTODOJUSTTHAT

Events Specific to Exadata


4HEREAREACTUALLYNOEVENTSTHATEXISTEXCLUSIVELYONTHE%XADATAPLATFORM7AITEVENTSAREBUILTINTOTHE
DATABASECODE ANDSINCETHECOMPUTENODESON%XADATARUNSTANDARD/RACLE$ATABASESOFTWARE ALLTHE
WAITEVENTSTHATAREUSEDWHENINVOKING%XADATA SPECIFICFEATURESAREAVAILABLEINDATABASESTHATARE
RUNNINGONNON %XADATAPLATFORMSASWELL"UTBECAUSETHE%XADATAFEATURESAREONLYAVAILABLEONTHE
%XADATAPLATFORM NOTIMEISEVERALLOCATEDTOTHOSEEVENTSONOTHERPLATFORMS"YWAYOFPROOF CONSIDER
THEFOLLOWINGEXAMPLE WHICHCOMPARESTHEEVENTSFROME4E4=CN=0<4WHICHEXPOSESTHEVALIDWAIT
EVENTS FIRSTONAN%XADATA$ATABASE-ACHINEANDTHENONASTANDARDG2DATABASEONANON %XADATA
PLATFORM
BHB/4G31-bT[TRcR^d]cUa^\eTeT]cN]P\T*

2>D=C

 '


#(!04%2 %8!$!4!7!)4%6%.43

BHB/4G31-bT[TRcR^d]cUa^\eTeT]cN]P\T/;01 !*

2>D=C

 '

BHB/4G31-bT[TRc]P\TTeT]cUa^\eTeT]cN]P\T
!\X]db
"bT[TRc]P\TUa^\eTeT]cN]P\T/;01 !*

]^a^fbbT[TRcTS
3OTHEREARENODIFFERENCESINTHEEVENTS4HISDOESMAKEITALITTLEDIFFICULTTOCOMEUPWITHALISTOF
h%XADATA/NLYvEVENTS

4HEhCELLv%VENTS
4HEOracle Exadata Storage Server Software User’s Guide 11g Release 2PROVIDESATABLEOFWAITEVENTS!LL
OFTHEMSTARTWITHTHEWORDhCELLv4HEMANUALLISTSNINESUCHEVENTS/NEOFTHEMRT[[X]cTaR^]]TRc
aTcaP]b\XcSdaX]V_WhbXRP[aTPS DOESNTACTUALLYEXIST
4HEREAREALSOANOTHERNINEEVENTSHAVINGTHEWORDhCELLvINTHEIRNAMESTHATARENOTINCLUDEDINTHE
DOCUMENTATION3OWELLUSETHECOMPLETELISTOFhCELLvEVENTSASASTARTINGPOINT9OUCANQUERY
E4E4=CN=0<4FORTHATLIST ANDYOULLGETTHEFOLLOWINGRESULTS.OTICETHATMOSTOFTHEEVENTSAREINONEOF
THE)/CLASSES4HEREAREONLYROWS BECAUSEONEOFTHEDOCUMENTEDEVENTSDOESNOTEXISTINTHE
VERSIONOF/RACLETHATWERERUNNING 
BHB/?>2!-/eP[XSNTeT]cb
4]cTaeP[dTU^aTeT]cN]P\T)RT[[

4E4=C2;0BB

RT[[[Xbc^UQ[^RZb_WhbXRP[aTPSDbTa8>
RT[[\d[cXQ[^RZ_WhbXRP[aTPSDbTa8>
RT[[bX]V[TQ[^RZ_WhbXRP[aTPSDbTa8>
RT[[b\PacUX[TRaTPcX^]DbTa8>
RT[[b\PacX]STgbRP]DbTa8>
RT[[b\PaccPQ[TbRP]DbTa8>
RT[[bcPcXbcXRbVPcWTaDbTa8>
RT[[\P]PVTaR[^bX]VRT[[BhbcT\8>
RT[[\P]PVTaSXbR^eTaX]VSXbZbBhbcT\8>
RT[[\P]PVTa^_T]X]VRT[[BhbcT\8>
RT[[b\PacX]RaT\T]cP[QPRZd_BhbcT\8>
RT[[b\PacaTbc^aTUa^\QPRZd_BhbcT\8>
RT[[\P]PVTaRP]RT[f^aZaT`dTbc>cWTa
RT[[b\PacU[PbWd]ZTT_>cWTa
RT[[f^aZTa^][X]TR^\_[TcX^]>cWTa
RT[[f^aZTaaTcah>cWTa
RT[[f^aZTaXS[T8S[T

&a^fbbT[TRcTS


#(!04%2 %8!$!4!7!)4%6%.43

4HEFOLLOWINGSECTIONSWILLCOVERALLOFTHESEEVENTS ALONGWITHACOUPLEOFADDITIONALEVENTSTHAT
HAVESPECIALAPPLICABILITYTO%XADATA

0LAN3TEPS4HAT4RIGGER%VENTS
&IRST THOUGH ITMIGHTBEINTERESTINGTOSEEWHATOPERATIONSPLANSTEPS CAUSETHEhCELLvWAITEVENTSTO
OCCUR(EREISAQUERYAGAINST310N78BCN02C8E4NB4BBN78BC>AHONANACTIVEPRODUCTIONSYSTEMRUNNING
ONAN%XADATA6THATSHOWSCELLEVENTSANDTHEOPERATIONSTHATCAUSEDTHEM
BHB/4G31 -bT[TRcTeT]c^_TaPcX^]R^d]cUa^\
!bT[TRcb`[NXSTeT]cb`[N_[P]N^_TaPcX^]kkkkb`[N_[P]N^_cX^]b^_TaPcX^]
"Ua^\310N78BCN02C8E4NB4BBN78BC>AH
#fWTaTTeT]c[XZTRT[[
$Va^d_Qh^_TaPcX^]TeT]c
%^aSTaQh !"
&

4E4=C>?4A0C8>=2>D=C

RT[[[Xbc^UQ[^RZb_WhbXRP[aTPS%!
33;BC0C4<4=C!
8=34G50BC5D;;B20= 
8=34GA0=64B20="%
8=34GBC>A06450BC5D;;B20=&
8=34GBC>A064B0<?;450BC5D;;B20= 
8=34GD=8@D4B20= $'
8=B4ACBC0C4<4=C%
C01;40224BB1H6;>10;8=34GA>F83 $ 
C01;40224BB1H8=34GA>F83$#$'
C01;40224BB1H;>20;8=34GA>F83 " 
C01;40224BBBC>A0645D;; '"
C01;40224BBBC>A064B0<?;4!
C01;40224BBBC>A064B0<?;41HA>F83A0= 
RT[[\d[cXQ[^RZ_WhbXRP[aTPS"!!
33;BC0C4<4=C $&
8=34G50BC5D;;B20=(#
8=34GA0=64B20=!
8=34GBC>A06450BC5D;;B20=%""#
8=34GBC>A064B0<?;450BC5D;;B20=#!(

D=8@D4B20=!
E84F0224BBBC>A0645D;;%"#
<0CNE84F0224BBBC>A064B0<?;4$%
C01;40224BB1H6;>10;8=34GA>F83$
C01;40224BB1H8=34GA>F83#'#
C01;40224BB1H;>20;8=34GA>F83"
C01;40224BBBC>A0645D;;# $$(
C01;40224BBBC>A064B0<?;4 &%"
C01;40224BBBC>A064B0<?;41HA>F83A0=&'
D?30C4#


#(!04%2 %8!$!4!7!)4%6%.43

RT[[bX]V[TQ[^RZ_WhbXRP[aTPS ' '%


1D554AB>AC 
2A40C4C01;4BC0C4<4=C%&
33;BC0C4<4=C('$
34;4C4 !#
34;4C4BC0C4<4=C%
58G43C01;458G438=34G"$!
5>AD?30C4!&
70B76A>D?1H"
70B79>8= #
70B79>8=A867C>DC4A 
8=34G1D8;3=>=D=8@D4'
8=34G1D8;3D=8@D4%
8=34G50BC5D;;B20=(
8=34G5D;;B20=  
8=34GA0=64B20= &$(&
8=34GA0=64B20=<8=<0G 
8=34GA0=64B20=34B24=38=6%
8=34GB:8?B20=%( 
8=34GBC>A06450BC5D;;B20=" "
8=34GBC>A064B0<?;450BC5D;;B20=&!
8=34GD=8@D4B20="( 
8=B4ACBC0C4<4=C$ &#
;>030BB4;42C !
;>03C01;42>=E4=C8>=0;$'!&
<0CNE84F0224BBBC>A0645D;;"
<0CNE84F0224BBBC>A064B0<?;4 
<4A64 !
?G2>>A38=0C>A 
B4;42CBC0C4<4=C(&'
B>AC2A40C48=34G 
B>AC6A>D?1H 
B>AC9>8=$
B>AC>A34A1H!
C01;40224BB1H6;>10;8=34GA>F83$' !
C01;40224BB1H8=34GA>F83%$&((
C01;40224BB1H;>20;8=34GA>F83#$( 
C01;40224BB1HDB4AA>F83#%#
C01;40224BB2;DBC4A$&
C01;40224BBBC>A0645D;;& %'
C01;40224BBBC>A064B0<?;4!$
C01;40224BBBC>A064B0<?;41HA>F83A0=!#
D=8>=0;;&
D?30C4'("$"
D?30C4BC0C4<4=C"%&
F8=3>F278;3?DB743A0=:!
F8=3>FB>AC 
F8=3>FB>AC?DB743A0=: 
RT[[b\PacUX[TRaTPcX^]"$
34;4C4"
8=34G1D8;3=>=D=8@D4$
;>030BB4;42C"


#(!04%2 %8!$!4!7!)4%6%.43

;>03C01;42>=E4=C8>=0; 
D?30C4 
RT[[b\PacX]RaT\T]cP[QPRZd_& #
RT[[b\PacX]STgbRP] #
8=34GBC>A06450BC5D;;B20=#!
8=34GBC>A064B0<?;450BC5D;;B20="!
RT[[b\PaccPQ[TbRP] %"
<0CNE84F0224BBBC>A0645D;; 
C01;40224BBBC>A0645D;; !$#
/BVIOUSLYTHISOUTPUTDOESNOTSHOWALLTHEPOSSIBLECOMBINATIONS BUTITSHOULDGIVEYOUANIDEAOF
THERELATIVEFREQUENCYOFEVENTSANDWHICHOPERATIONSGENERALLYMOTIVATETHEM

Exadata Wait Events in the User I/O Class


4HE5SER)/#LASSISFARANDAWAYTHEMOSTIMPORTANTFOR%XADATA4HEMOSTINTERESTINGEVENTSINTHIS
CATEGORYAREOFCOURSETHETWO3MART3CANEVENTSRT[[b\PaccPQ[TbRP]ANDRT[[b\PacX]STgbRP] 
4HESEARETHEEVENTSTHATRECORDTIMEFORTHEPRIMARY/FFLOADINGOPTIMIZATIONSPROVIDEDBY%XADATA
WHICHINCLUDEPREDICATEFILTERING COLUMNPROJECTION ANDSTORAGEINDEXUSAGE4HE5SER)/#LASSALSO
CONTAINSTHREEEVENTSDESCRIBEDASphysical I/OEVENTS4HESETHREEEVENTSACTUALLYMEASURETIMEFOR
PHYSICAL)/USINGTHEMOREFAMILIARMULTI BLOCKANDSINGLE BLOCKREADMECHANISMSWEREUSEDTOSEEING
ONNON %XADATAPLATFORMS ALTHOUGHTHEIRNAMESHAVEBEENCHANGEDTOSOMETHINGALITTLEMORE
MEANINGFUL&INALLY THEREARETWOEVENTSTHATDONTREALLYSEEMTOBELONGINTHE5SER)/CATEGORYATALL
/NEHASTODOWITHINITIALIZATIONOFBLOCKSWHENFILESPACEISALLOCATED4HEOTHERHASTODOWITHGATHERING
STATISTICALINFORMATIONFROMTHESTORAGECELLS7ELLCOVEREACHOFTHESEWAITEVENTSINTURNINTHENEXT
SEVERALSECTIONS STARTINGWITHTHE3MART3CANEVENTS

CELLSMARTTABLESCAN
4HERT[[b\PaccPQ[TbRP]EVENTISWHAT/RACLEUSESTOACCOUNTFORTIMESPENTWAITINGFOR&ULL4ABLE
3CANSTHATARE/FFLOADED)TISTHEMOSTIMPORTANTNEWEVENTONTHE%XADATAPLATFORM)TSPRESENCEOR
ABSENCECANBEUSEDTOVERIFYWHETHERASTATEMENTBENEFITEDFROM/FFLOADINGORNOT!SDISCUSSEDIN
#HAPTER /FFLOADINGONLYOCCURSWHEN/RACLEISABLETODODIRECTPATHREADS#ONSEQUENTLY THISEVENT
REPLACESTHESXaTRc_PcWaTPSEVENTINMOSTCASESON%XADATA!SWITHNORMALDIRECTPATHREADS DATAIS
RETURNEDDIRECTLYTOTHE0'!OFTHEREQUESTINGPROCESSONTHEDATABASESERVEREITHERTHEUSERSSHADOW
PROCESSORAPARALLELSLAVEPROCESS "LOCKSARENOTRETURNEDTOTHEBUFFERCACHE

Event Meaning
!LTHOUGHTHEMECHANISMFORPERFORMINGREADSACROSSTHE)NFINI"ANDNETWORKISVERYDIFFERENTFROMTHAT
FORNORMALREADSONNON %XADATAPLATFORMS THECODEPATHDRIVINGTHESMARTSCANSISACTUALLYVERYSIMILAR
TOADIRECTPATHREADONANON %XADATAPLATFORM4HEMAINDIFFERENCELIESINTHEFACTTHATEACHREQUESTTO
ASTORAGECELLCONTAINSAREFERENCETOTHEMETADATAOFTHESTATEMENT WHICHINTHECASEOF%XADATA
INCLUDESTHEPREDICATESANDTHELISTOFCOLUMNSTOBERETURNED3INCETHESTORAGECELLSHAVEACCESSTOTHIS
INFORMATION THEYCANAPPLYTHEFILTERSANDDOTHECOLUMNPROJECTIONBEFORERETURNINGTHEDATATOTHE
REQUESTINGPROCESS4HESEOPTIMIZATIONSAREAPPLIEDTOEACHSETOFBLOCKSASTHEYAREREQUESTED4HE
PROCESSESONTHEDATABASESERVERSTHATREQUESTTHEDATAHAVEACCESSTOTHE!3-EXTENTMAPANDCAN
THEREFOREREQUESTTHEREQUIREDALLOCATIONUNITS!5S FROMEACHSTORAGECELL4HESTORAGECELLSREADTHE
REQUESTED!5ANDAPPLYTHEPREDICATEFILTERSAND IFANYROWSSATISFYTHEFILTERS RETURNTHEPROJECTED


#(!04%2 %8!$!4!7!)4%6%.43

COLUMNSTOTHEREQUESTINGPROCESS4HEPROCESSTHENREQUESTSTHENEXT!5ANDTHEENTIREROUTINEIS
REPEATEDUNTILALLTHEDATAHASBEENSCANNED3OTHISEVENTWILLOCCURREPEATEDLYINALARGESCAN

■.OTE#OLUMN0ROJECTIONISONEOFTHEMAJOROPTIMIZATIONSPROVIDEDBY3MART3CANS4HEFEATUREISSLIGHTLY
MISUNDERSTOOD)TDOESNOTPASSONLYCOLUMNSINTHESELECTLISTBACKTOTHEDATABASESERVERSITALSOPASSESBACK
SOMECOLUMNSFROMTHEF74A4CLAUSE/LDERVERSIONSOFRT[[baePASSEDALLCOLUMNSSPECIFIEDINAF74A4CLAUSE
BACKTOTHEDATABASETIER,ATERVERSIONSHAVECORRECTEDTHISBEHAVIORTOINCLUDEONLYCOLUMNSTHATAREINVOLVEDIN
JOINPREDICATES

(ERESAPORTIONOFATRACEFILESHOWINGSOMEOFTHEEVENTS4HEQUERYGENERATINGTHISTRACEFILE
DIDAFULLTABLESCANWHICHWASPERFORMEDVIATHEDIRECTREADMECHANISM.OTETHATWEVESHORTENED
SOMEOFTHELINESTOGETTHEMTOFIT PRIMARILYBYSTRIPPINGOFFTHETIMEVALUES 
?0AB8=68=2DAB>A![T],"!ST_,dXS,^Rc,"[XS,We, !"PS, (%b`[XS, %!fY]efhhQW]
bT[TRcbd\_ZNR^[Ua^\Zb^bZTf

4=3>5BC<C
?0AB4!)R,!T,!#!#_,Ra,Rd,\Xb, a,ST_,^V, _[W,$%'"!!"&%
4G42!)R,T,"#_,Ra,Rd,\Xb,a,ST_,^V, _[W,$%'"!!"&%
F08C!)]P\,B@;=Tc\TbbPVTc^R[XT]cT[P,"SaXeTaXS, %$' $!"!QhcTb, _",^QY, 
F08C!)]P\,VTb\TbbPVTQdUUTaP[[^RPcX^]T[P,!_^^[,aT`dTbc, P[[^RPcTS,^QY, 
F08C!)]P\,:92)FPXcU^a\bVbT]Sbc^R^\_[TcTT[P, \bV,%%&##$"%'STbckaRea,%$$"%
F08C!)]P\,aT[XPQ[T\TbbPVTT[P, &RWP]]T[R^]cTgc,%& !!&'&!RWP]]T[WP]S[T,%%(%&(( 
F08C!)]P\,VTb\TbbPVTQdUUTaP[[^RPcX^]T[P, _^^[,aT`dTbc, P[[^RPcTS,^QY, 
F08C!)]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P, #]P\Tk\^ST, !%!,%$$&$, ^QY, 
F08C!)]P\,VTb\TbbPVTQdUUTaP[[^RPcX^]T[P, _^^[,aT`dTbc, P[[^RPcTS,^QY, 
F08C!)]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P, "]P\Tk\^ST, !%!,%$$&$,!^QY, 
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P, %!RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,!##RT[[WPbW,"&(""(($'_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P, ' RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P, !'$RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P, "!&RT[[WPbW,"&(""(($'_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P, " RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P, (&$$RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,"(RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,!#RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,'#&RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,##RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,%&#RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,"!RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,"(RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,(!'RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,"&RT[[WPbW," &%$(##(_!,_",^QY,%%'#(
F08C!)]P\,RT[[b\PaccPQ[TbRP]T[P,(&RT[[WPbW,"&(""(($'_!,_",^QY,%%'#(
4HISPORTIONOFTHETRACEFILEALSOSHOWSTHET]`):>UPbc^QYTRcRWTRZ_^X]cEVENT WHICHISUSED
TOENSURETHATANYDIRTYBLOCKSFORTHESCANNEDOBJECTAREFLUSHEDTODISKPRIORTOBEGINNINGTHESCAN"Y


#(!04%2 %8!$!4!7!)4%6%.43

THEWAY THESXaTRc_PcWaTPSEVENTISNOTCOMPLETELYELIMINATEDON%XADATAPLATFORMS)NFACT WECAN


USEAHINTTODISABLE/FFLOADINGANDSEEHOWTHESAMESTATEMENTBEHAVESWITHOUT/FFLOADING
?0AB8=68=2DAB>A![T],'#ST_,dXS,^Rc,"[XS,We, !"PS, (%b`[XS,RRii%h%aci#Q]
bT[TRc>?CN?0A0<RT[[N^UU[^PSN_a^RTbbX]VUP[bTbd\_ZNR^[Ua^\Zb^bZTf
4=3>5BC<C
?0AB4!)R,!%(($T,""$'!_, Ra, Rd,\Xb, a,ST_,^V, _[W,$%'"!!"&%
4G42!)R,T,!_,Ra,Rd,\Xb,a,ST_,^V, _[W,$%'"!!"&%
F08C!)]P\,B@;=Tc\TbbPVTc^R[XT]cT[P,"SaXeTaXS, %$' $!"!QhcTb, _",^QY, 
F08C!)]P\,VTb\TbbPVTQdUUTaP[[^RPcX^]T[P,"_^^[,aT`dTbc, P[[^RPcTS,^QY, 
F08C!)]P\,:92)FPXcU^a\bVbT]Sbc^R^\_[TcTT[P, "\bV,%%STbckaRea,%$$"%\ch_T, !
F08C!)]P\,aT[XPQ[T\TbbPVTT[P, "$$RWP]]T[R^]cTgc,%& !!&'&!RWP]]T[
WP]S[T,%%(%&($! %Qa^PSRPbc\TbbPVT,%&# ""$'$%^QY, cX\, !'$#$$%&%!%# '
F08C!)]P\,VTb\TbbPVTQdUUTaP[[^RPcX^]T[P,!_^^[,aT`dTbc, P[[^RPcTS,^QY, 
F08C!)]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P, &!]P\Tk\^ST, !%!,%$$&", ^QY, 
F08C!)]P\,VTb\TbbPVTQdUUTaP[[^RPcX^]T[P,!_^^[,aT`dTbc, P[[^RPcTS,^QY, 
F08C!)]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P,!! ]P\Tk\^ST, !%!,%$$&",!^QY,
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P, #R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(

F08C!)]P\,SXaTRc_PcWaTPST[P,!"&#%UX[T]d\QTa,&UXabcSQP,&%"!!Q[^RZR]c,(#
^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,!'R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,!R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P, R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,%R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,SXaTRc_PcWaTPST[P, '$%%UX[T]d\QTa,&UXabcSQP,&%'Q[^RZR]c, !'
^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P, (R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,!R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,%R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,SXaTRc_PcWaTPST[P,"$'"UX[T]d\QTa,&UXabcSQP,&& '#Q[^RZR]c, !'
^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P, (R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,!!R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,&R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
F08C!)]P\,ZUZ)Pbh]RSXbZ8>T[P,$R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'#(
.OTETHATWESTILLHAVETHET]`):>~UPbc^QYTRcRWTRZ_^X]cEVENTSFORFLUSHINGDIRTYBLOCKS3OIT
ISCLEARTHATTHERT[[b\PaccPQ[TbRP]EVENTREPLACESTHISEVENT

Parameters
4HEPARAMETERSFORTHISEVENTARENOTPARTICULARLYINFORMATIVE/NLYTHEOBJECT)$OFTHETABLEBEING
SCANNEDANDTHECELLHASHNUMBERAREPROVIDED
? #ELLHASHNUMBER
?! .OTUSED
?" .OTUSED
^QY 4HEOBJECTNUMBEROFTHETABLEBEINGSCANNED


#(!04%2 %8!$!4!7!)4%6%.43

9OULLNOTICETHATTHESXaTRc_PcWaTPSEVENTWHICHRT[[b\PaccPQ[TbRP]REPLACES PROVIDES
ADDITIONALINFORMATIONINCLUDINGTHEFILENUMBER THEOFFSETINTOTHEFILEUXabcSQP ANDTHENUMBEROF
CONTIGUOUSBLOCKSREADQ[^RZR]c /NTHEOTHERHAND WITHTHESXaTRc_PcWaTPSEVENT THEREISNO
INDICATIONHOWTHEREADREQUESTSAREROUTEDTOTHEINDIVIDUALCELLS

■.OTE4HE#ELLHASHNUMBERREPORTEDWITHMANYOFTHEWAITEVENTSCANBEFOUNDINTHEE24;;VIEW4HISVIEW
HASONLYTWOCOLUMNS 24;;N?0C7AND24;;N70B7E0;4HE24;;N?0C7COLUMNACTUALLYCONTAINSTHE)0ADDRESSOF
THESTORAGECELL

CELLSMARTINDEXSCAN
4IMEISCLOCKEDTOTHERT[[b\PacX]STgbRP]EVENTWHENFASTFULLINDEXSCANSAREPERFORMEDTHATARE
/FFLOADED4HISEVENTISANALOGOUSTORT[[b\PaccPQ[TbRP] EXCEPTTHATTHEOBJECTBEINGSCANNEDISAN
INDEX)TREPLACESTHESXaTRc_PcWaTPSEVENTANDRETURNSDATADIRECTLYTOTHE0'!OFTHEREQUESTING
PROCESSASOPPOSEDTOTHEBUFFERCACHE

Event Meaning
4HISEVENTDOESNOTSHOWUPVERYOFTENONTHESYSTEMSWEHAVEOBSERVED PROBABLYFORSEVERALREASONS
v %XADATAISQUITEGOODATDOINGFULLTABLESCANSANDSOTHETENDENCYISTOELIMINATEA
LOTOFINDEXESWHENMOVINGTOTHEPLATFORM
v $IRECTPATHREADSARENOTDONEASOFTENONINDEXSCANSASTHEYAREONTABLESCANS
/NEOFTHEIMPORTANTCHANGESTO/RACLEISTHEAGGRESSIVENESSWITHWHICHIT
DOESDIRECTPATHREADSONSERIALTABLESCANS4HISENHANCEMENTWASPROBABLY
PUSHEDFORWARDSPECIFICALLYINORDERTOALLOW%XADATATODOMORE3MART&ULL4ABLE
3CANS BUTREGARDLESSOFTHAT WITHOUTTHISFEATURE ONLYPARALLELTABLESCANSWOULD
BEABLETOTAKEADVANTAGEOF3MART3CANS4HESAMEENHANCEMENTAPPLIESTOINDEX
FASTFULLSCANS4HATIS THEYCANALSOBEDONEVIASERIALDIRECTPATHREADS(OWEVER
THEALGORITHMCONTROLLINGWHENTHEYHAPPENAPPEARSTOBELESSLIKELYTOUSETHIS
TECHNIQUEWITHINDEXESPROBABLYBECAUSETHEINDEXESAREUSUALLYMUCHSMALLER
THANTABLES 
v )NADDITION ONLYFASTFULLSCANSOFINDEXESAREELIGIBLEFOR3MART3CANSRANGESCANS
ANDFULLSCANSARENOTELIGIBLE 


#(!04%2 %8!$!4!7!)4%6%.43

■+EVINSAYS!3MART3CANONANINDEXISPOSSIBLEWITHOUTPARALLELISM BUTTHERULESARESTRICT)FYOUALTERTHE
SESSIONTODISABLEPARALLELQUERYANDSETNbTaXP[NSXaTRcNaTPS,CAD4INTHESESSION ANDTHENRUNYOURTEST YOU
SHOULDGETASMART SERIAL index fast full scan)&&3 )FNOT THENYOURELOOKINGATABUG)NSHORT TOGETASERIAL
)&&3THEOBJECTNEEDSTOBEMORETHANFIVETIMESTHESIZEOFTHE3'!

'LUINGRANGESCANSTOSMARTINDEXSCANSCANBEDONE BUTITSVERYMESSY4HEREISNTLIKELYMUCHTOBEGAINED
THEREINTERMSOFCOMPLETINGAQUERY

!SARESULTOFTHESEISSUES RT[[b\PacX]STgbRP]bAREFAIRLYRARECOMPAREDTORT[[b\PaccPQ[T
bRP]b)TIS OFCOURSE POSSIBLETOENCOURAGETHEFEATUREWITHHINTSSUCHAS_PaP[[T[NX]STg ORBY
DECORATINGSPECIFICINDEXESWITHAPARALLELDEGREESETTINGOFGREATERTHAN(ERESANEXCERPTFROMA
TRACEFILESHOWINGTHEEVENT
?0AB8=68=2DAB>A [T], !ST_, dXS,^Rc,"[XS,We, !"PS, (&b`[XS,S]\d\WZ($((_&
bT[TRc_PaP[[T[NX]STgPbZTf!NP[['X]STgNUUbPbZTf!NP[[bd\_ZNR^[Ua^\
Zb^bZTf!PfWTaTR^[ - 
4=3>5BC<C
?0AB4 )R,T,'(_,Ra,Rd,\Xb,a,ST_, ^V, _[W,!' ' & cX\, !'$"&!##'&$ (!
F08C )]P\,?G3T`)4gTRdcX^]<bVT[P," !#b[TT_cX\TbT]STaXS,!%'_PbbTb, _",^QY, 
F08C )]P\,RT[[b\PacX]STgbRP]T[P, ""RT[[WPbW,"&(""(($'_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,$!!RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,!&&RT[[WPbW," &%$(##(_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P, ( RT[[WPbW,"&(""(($'_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,""RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,"#'RT[[WPbW," &%$(##(_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,#$ %!RT[[WPbW," &%$(##(_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P, "RT[[WPbW," &%$(##(_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,!&RT[[WPbW,"&(""(($'_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,"RT[[WPbW,"&(""(($'_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,&&(RT[[WPbW," &%$(##(_!,_",^QY,%%'$%
F08C )]P\,RT[[b\PacX]STgbRP]T[P,"RT[[WPbW,! ""#$(#'"_!,_",^QY,%%'$%
.OTETHATTHISTRACEFILEWASPRODUCEDBYONEOFTHEPARALLELSLAVEPROCESSESANDNOTTHEREQUESTING
PROCESS4HETRACEPRODUCEDFORTHESAMESTATEMENTWHEN/FFLOADINGISDISABLEDSHOULDLOOKFAMILIAR
(ERESANEXCERPT
?0AB8=68=2DAB>A [T], $'ST_, dXS,^Rc,"[XS,We,""'PS, (%b`[XS,V!(%%SfP!gU\'
bT[TRc>?CN?0A0<RT[[N^UU[^PSN_a^RTbbX]VUP[bT_PaP[[T[NX]STgPbZTf!NP[['
X]STgNUUbPbZTf!NP[[bd\_ZNR^[Ua^\Zb^bZTf!PfWTaTR^[ - 
4=3>5BC<C
?0AB4 )R,T,(#_,Ra,Rd,\Xb,a,ST_, ^V, _[W,!' ' & cX\, !'$$#%((# $&##
F08C )]P\,?G3T`)4gTRdcX^]<bVT[P,!"&&b[TT_cX\TbT]STaXS,!%'$%%$!&_PbbTb, _",
F08C )]P\,[PcRW)RPRWTQdUUTabRWPX]bT[P,##PSSaTbb,%%"%%"("#]d\QTa, $caXTb,
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P, !R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,SXaTRc_PcWaTPST[P,!'($&UX[T]d\QTa,%UXabcSQP, "Q[^RZR]c, !#^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,"!R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!#R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%


#(!04%2 %8!$!4!7!)4%6%.43

F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!#R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%


F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,'R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,SXaTRc_PcWaTPST[P, # UX[T]d\QTa,%UXabcSQP, "#%#Q[^RZR]c, !'
^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!#R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,! R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!#R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!"R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!"R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!"R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,"!R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!'R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,! R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!$R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P," R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%

F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,&R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,SXaTRc_PcWaTPST[P, %&!$UX[T]d\QTa,%UXabcSQP, "" & Q[^RZR]c, !$
^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!#R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,!&R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
F08C )]P\,ZUZ)Pbh]RSXbZ8>T[P,'R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY,%%'$%
!GAINWESEETHEREPEATINGPATTERNOFASINGLESXaTRc_PcWaTPSEVENTFOLLOWEDBYSEVERALZUZ)
Pbh]RSXbZ8>EVENTS4HERT[[b\PacX]STgbRP]EVENTREPLACESBOTHOFTHESEEVENTS4HET]`):>~
UPbc^QYTRcRWTRZ_^X]cEVENTSFORFLUSHINGDIRTYBLOCKSPRIORTOSTARTINGTHEDIRECTPATHREADSARESTILL
PRESENTALTHOUGHNOTSHOWNINTHISEXCERPTBECAUSETHEYOCCURINTHEQUERYCOORDINATORPROCESS NOTIN
THEPARALLELSLAVEPROCESSES 

Parameters
*USTASWITHTHERT[[b\PaccPQ[TbRP]EVENT THEPARAMETERSFORRT[[b\PacX]STgbRP]DONOTCONTAIN
ALOTOFDETAILS4HECELLHASHNUMBERANDTHEOBJECT)$OFTHESEGMENTBEINGSCANNEDARETHEONLY
INFORMATIONPROVIDED
? #ELLHASHNUMBER
?! .OTUSED
?" .OTUSED
^QY 4HEOBJECTNUMBEROFTHEINDEXBEINGSCANNED

CELLSINGLEBLOCKPHYSICALREAD
4HISEVENTISEQUIVALENTTOTHESQUX[TbT`dT]cXP[aTPSEVENTUSEDONNON %XADATAPLATFORMS3INGLE
BLOCKREADSAREUSEDMOSTOFTENFORINDEXACCESSPATHSBOTHTHEINDEXBLOCKREADSANDTHETABLEBLOCK
READSVIAROWIDSFROMTHEINDEXLOOKUPS 4HEYCANALSOBEUSEDFORAWIDEVARIETYOFOTHEROPERATIONS
WHEREITMAKESSENSETOREADASINGLEBLOCK


#(!04%2 %8!$!4!7!)4%6%.43

Event Meaning
(EREISTHEOUTPUTOFAQUERYTHATSHOWSTHEOPERATIONSTHATRESULTEDINTHERT[[bX]V[TQ[^RZ_WhbXRP[
aTPSWAITEVENTONANACTIVEPRODUCTIONSYSTEM
BHB/4G31 -bT[TRcTeT]c^_TaPcX^]R^d]cUa^\
!bT[TRcb`[NXSTeT]cb`[N_[P]N^_TaPcX^]kkkkb`[N_[P]N^_cX^]b^_TaPcX^]
"Ua^\310N78BCN02C8E4NB4BBN78BC>AH
#fWTaTTeT]c[XZTRT[[bX]V[T
$Va^d_Qh^_TaPcX^]TeT]c
%^aSTaQh !"
&

4E4=C>?4A0C8>=2>D=C

RT[[bX]V[TQ[^RZ_WhbXRP[aTPS ""! 
2A40C4C01;4BC0C4<4=C"$
33;BC0C4<4=C '
34;4C4!%(
58G43C01;458G438=34G"
5>AD?30C4!
70B79>8=#
70B79>8=A867C>DC4A'
8=34G5D;;B20=(!'"
8=34G5D;;B20=<8=<0G 
8=34GA0=64B20=!&%"
8=34GBC>A06450BC5D;;B20=%
8=34GBC>A064B0<?;450BC5D;;B20= "
8=34GD=8@D4B20= %&%
8=B4ACBC0C4<4=C ' 
;>030BB4;42C%
;>03C01;42>=E4=C8>=0;(!
<4A64 %
B4;42CBC0C4<4=C# 
B>AC>A34A1H%
C01;40224BB1H6;>10;8=34GA>F83 %"'
C01;40224BB1H8=34GA>F83'& #
C01;40224BB1H;>20;8=34GA>F83 ##%
C01;40224BB2;DBC4A !
C01;40224BBBC>A0645D;;&&%
C01;40224BBBC>A064B0<?;4#
D?30C4' %
!SYOUCANSEE ROWACCESSVIAANINDEXISTHEMOSTCOMMONOPERATIONTHATGENERATESTHISEVENT
9OUSHOULDALSOBEAWARETHAT%XADATAPROVIDESALARGEAMOUNTOFFLASHCACHE' ONEACHSTORAGE
CELL&ORTHATREASON PHYSICALREADSBOTHMULTI BLOCKANDSINGLE BLOCK ARECONSIDERABLYFASTERTHANON
MOSTDISK BASEDSTORAGESYSTEMS(EREISANEXCERPTFROMAN!72REPORTSHOWINGAHISTOGRAMOFSINGLE
BLOCKREADSFORTHEINSTANCE
^UFPXcb

C^cP[


#(!04%2 %8!$!4!7!)4%6%.43

4eT]cFPXcb+ \b+!\b+#\b+'\b+ %\b+"!\b+, b- b



RT[[bX]V[TQ[^RZ_WhbXRP[!(#:(##"!"%($!
.OTICETHATABOUTOFTHERT[[bX]V[TQ[^RZ_WhbXRP[aTPSEVENTSTAKELESSTHANMS4HISIS
FAIRLYREPRESENTATIVEOFSEVERALPRODUCTIONSYSTEMSTHATWEVEOBSERVED

Parameters
4HERT[[bX]V[TQ[^RZ_WhbXRP[aTPSEVENTPROVIDESMOREINFORMATIONTHANMOSTCELLEVENTS4HE
PARAMETERSALLOWYOUTOTELLEXACTLYWHICHOBJECTWASREADALONGWITHPROVIDINGTHEDISKANDCELLWHERE
THEBLOCKWASSTORED
? #ELLHASHNUMBER
?! $ISKHASHNUMBER
?" 4OTALBYTESPASSEDDURINGREADOPERATIONALWAYSASSUMING+BLOCK
SIZE
^QY 4HEOBJECTNUMBEROFTHEOBJECTBEINGREAD

CELLMULTIBLOCKPHYSICALREAD
4HISISANOTHERRENAMEDEVENT)TISEQUIVALENTTOTHELESSCLEARLYNAMEDSQUX[TbRPccTaTSaTPSEVENT
/NNON %XADATAPLATFORMS /RACLE$ATABASEG2STILLUSESTHESQUX[TbRPccTaTSaTPSEVENT
WHENEVERITISSUESACONTIGUOUSMULTI BLOCKREADTOTHEOPERATINGSYSTEM

Event Meaning
4HISEVENTISGENERALLYUSEDWITH&ULL4ABLE3CANSAND&AST&ULL)NDEXSCANS ALTHOUGHITCANBEUSEDWITH
MANYOTHEROPERATIONS4HENEWNAMEONTHE%XADATAPLATFORMISMUCHMOREDESCRIPTIVETHANTHEOLDER
NAME4HISWAITEVENTISNOTNEARLYASPREVALENTON%XADATAPLATFORMSASONNON %XADATAPLATFORMS
BECAUSE%XADATAHANDLESMANYFULLSCANOPERATIONSWITH3MART3CANSTHATHAVETHEIROWNWAITEVENTS
RT[[b\PaccPQ[TbRP]ANDRT[[b\PacX]STgbRP] 4HERT[[\d[cXQ[^RZ_WhbXRP[aTPSEVENTON
%XADATAPLATFORMSISUSEDFORSERIAL&ULL3CANOPERATIONSONTABLESTHATAREBELOWTHETHRESHOLDFORSERIAL
DIRECTPATHREADS4HATISTOSAY YOUWILLSEETHISEVENTUSEDMOSTOFTENON&ULL3CANSOFRELATIVELYSMALL
TABLES)TISALSOUSEDFOR&AST&ULL)NDEX3CANSTHATARENOTEXECUTEDWITHDIRECTPATHREADS(EREISTHE
OUTPUTOFAQUERYTHATSHOWSTHEOPERATIONSTHATRESULTEDINTHERT[[\d[cXQ[^RZ_WhbXRP[aTPSWAIT
EVENTONANACTIVEPRODUCTIONSYSTEM
4E4=C>?4A0C8>=2>D=C

RT[[\d[cXQ[^RZ_WhbXRP[aTPS&%#
33;BC0C4<4=C!'
8=34G50BC5D;;B20=!
8=34GBC>A06450BC5D;;B20=%$&
8=34GBC>A064B0<?;450BC5D;;B20= ""
C01;40224BB1H8=34GA>F83&#


#(!04%2 %8!$!4!7!)4%6%.43

C01;40224BB1H;>20;8=34GA>F83 #!'
C01;40224BBBC>A0645D;;$#%
C01;40224BBBC>A064B0<?;4( %

Parameters
4HERT[[\d[cXQ[^RZ_WhbXRP[aTPSEVENTALSOPROVIDESMOREINFORMATIONTHANMOSTCELLEVENTS4HE
PARAMETERSINTHEFOLLOWINGLISTALLOWYOUTOTELLWHICHOBJECTWASREADANDIDENTIFIESTHEDISKANDCELL
WHERETHEBLOCKSWERESTORED4HETOTALBYTESPASSEDSHOULDBEAMULTIPLEOFTHEBLOCKSIZE
? #ELLHASHNUMBER
?! $ISKHASHNUMBER
?" 4OTALBYTESPASSEDDURINGREADOPERATION
^QY 4HEOBJECTNUMBEROFTHEOBJECTBEINGREAD

CELLLISTOFBLOCKSPHYSICALREAD
4HISEVENTISAREPLACEMENTFORTHESQUX[T_PaP[[T[aTPSEVENT)TAPPEARSTHATTHEDEVELOPERSTOOKTHE
OPPORTUNITYTORENAMESOMEOFTHEEVENTSTHATARERELATEDTODISKOPERATIONS ANDTHISISONEOFTHOSE
EVENTS4HENEWNAMEISACTUALLYMUCHMOREDESCRIPTIVETHANTHEPREVIOUSNAME SINCETHEWAITEVENT
HASNOTHINGWHATSOEVERTODOWITHPARALLELQUERYORPARALLEL$-,

Event Meaning
4HISEVENTISUSEDFORAMULTI BLOCKREADOFNONCONTIGUOUSBLOCKS4HISISMOREEFFECTIVEWITHASYNC)/
WHICHISENABLEDON%XADATABYDEFAULT4HISEVENTCANBEPROVOKEDBYSEVERALOPERATIONS4HEMOST
COMMONARE)NDEX2ANGE3CANS )NDEX5NIQUE3CANSAND4ABLE!CCESS"Y)NDEX2OWID4HEMOST
COMMONREASONFORTHEEVENTISINDEXPRE FETCHING(EREISTHEOUTPUTOFAQUERYTHATSHOWSTHE
OPERATIONSTHATRESULTEDINTHISWAITEVENTONANACTIVEPRODUCTIONSYSTEM
BHB/4G31 -bT[TRcTeT]c^_TaPcX^]R^d]cUa^\
!bT[TRcb`[NXSTeT]cb`[N_[P]N^_TaPcX^]kkkkb`[N_[P]N^_cX^]b^_TaPcX^]
"Ua^\310N78BCN02C8E4NB4BBN78BC>AH
#fWTaTTeT]c[XZTRT[[[Xbc
$Va^d_Qh^_TaPcX^]TeT]c
%^aSTaQh !"
&

4E4=C>?4A0C8>=2>D=C

RT[[[Xbc^UQ[^RZb_WhbXRP[aTPS!
8=34GA0=64B20= $%
8=34GBC>A06450BC5D;;B20= 
8=34GD=8@D4B20=%%
C01;40224BB1H6;>10;8=34GA>F83(
C01;40224BB1H8=34GA>F83 !&"
C01;40224BB1H;>20;8=34GA>F83!$("


#(!04%2 %8!$!4!7!)4%6%.43

C01;40224BBBC>A0645D;;!
C01;40224BBBC>A064B0<?;4 
!SYOUCANSEE THEVASTMAJORITYOFTHESEEVENTSWEREMOTIVATEDBYINDEXACCESSPATHS"YTHEWAY
ONNON %XADATAPLATFORMS NONCONTIGUOUSMULTI BLOCKREADSSTILLCLOCKTIMETOTHEOLDSQUX[T_PaP[[T[
aTPSEVENT)TSALSOPOSSIBLEFORTHISOLDERWAITEVENTNAMETOSHOWUPONAN%XADATAPLATFORMFORSOME
OPERATIONS

Parameters
4HERT[[[Xbc^UQ[^RZb_WhbXRP[aTPSEVENTPROVIDESMOREINFORMATIONTHANMOSTCELLEVENTS4HE
FOLLOWINGPARAMETERSALLOWYOUTOTELLEXACTLYWHICHOBJECTWASREADALONGWITHIDENTIFYINGTHEDISKAND
CELLWHERETHEBLOCKWASSTORED
? #ELLHASHNUMBER
?! $ISKHASHNUMBER
?" .UMBEROFBLOCKSREAD
^QY 4HEOBJECTNUMBEROFTHEOBJECTBEINGREAD

CELLSMARTFILECREATION
%XADATAHASANOPTIMIZATIONTECHNIQUETHATALLOWSTHESTORAGECELLSTODOTHEINITIALIZATIONOFBLOCKS
WHENADATAFILEISCREATEDOREXTENDED4HISOCCURSWHENATABLESPACEISCREATEDORADATAFILEIS
MANUALLYADDEDTOATABLESPACE(OWEVER ITCANALSOOCCURWHENADATAFILEISAUTOMATICALLYEXTENDED
DURING$-,OPERATIONS

Event Meaning
7EPREVIOUSLYSTATEDTHATTHISEVENTSEEMEDOUTOFPLACEINTHE5SER)/CLASS(OWEVER IFITOCCURS
BECAUSEOF$-,OPERATIONS ITMAKESSENSETOHAVEITINTHISCATEGORY!TANYRATE OFFLOADINGTHEBLOCK
FORMATTINGELIMINATES#05USAGEAND)/FROMTHEDATABASESERVERSANDMOVESITTOTHESTORAGETIER
7HENTHISOCCURS TIMEISCOLLECTEDINTHERT[[b\PacUX[TRaTPcX^]EVENT4HISEVENTREPLACESTHE3PcP
UX[TX]XcfaXcTEVENTTHATISSTILLUSEDONNON %XADATAPLATFORMS(EREISTHEOUTPUTOFAQUERYFROMA
BUSYPRODUCTIONSYSTEMSHOWINGOPERATIONSTHATGENERATEDTHISEVENT
BHB/4G31 -bT[TRcTeT]c^_TaPcX^]R^d]cUa^\
!bT[TRcb`[NXSTeT]cb`[N_[P]N^_TaPcX^]kkkkb`[N_[P]N^_cX^]b^_TaPcX^]
"Ua^\310N78BCN02C8E4NB4BBN78BC>AH
#fWTaTTeT]c[XZTRT[[b\PacUX[T
$Va^d_Qh^_TaPcX^]TeT]c
%^aSTaQh !"
&

4E4=C>?4A0C8>=2>D=C

RT[[b\PacUX[TRaTPcX^]"$
34;4C4"
8=34G1D8;3=>=D=8@D4$


#(!04%2 %8!$!4!7!)4%6%.43

;>030BB4;42C"
;>03C01;42>=E4=C8>=0; 
D?30C4 
9OULLNOTICETHATONTHISPARTICULARSYSTEM THERT[[b\PacUX[TRaTPcX^]EVENTWASOCCASIONALLY
GENERATEDBYA34;4C4STATEMENT4HEFACTTHATA34;4C4COULDCAUSETHISEVENTMIGHTBEALITTLE
SURPRISING"UTREMEMBERTHATTHISEVENTISACTUALLYTIMINGASECTIONOFCODETHATDOESBLOCKFORMATTING
NOTFILECREATION

Parameters
4HEONLYPARAMETEROFINTERESTFORTHISEVENTIS? WHICHSHOWSWHICHCELLWASBEINGACCESSEDWHENTHIS
EVENTWASGENERATED
? #ELLHASHNUMBER
?! .OTUSED
?" .OTUSED

CELLSTATISTICSGATHER
4HERT[[bcPcXbcXRbVPcWTaEVENTRECORDSTIMESPENTREADINGFROMVARIOUSEANDGTABLES!LTHOUGH
THEEVENTISGROUPEDINTHE5SER)/CATEGORY ITDOESNOTREFERTO)/INTHESENSEOFREADINGANDWRITING
TOANDFROMDISK

Event Meaning
4IMEISCLOCKEDTOTHISEVENTWHENASESSIONISREADINGFROME24;; E24;;NC7A403N78BC>AH
G:258B>BB= E24;;NA4@D4BCNC>C0;BG:258B>BBC ANDAFEWOTHERGTABLESINTHESAMEFAMILY4HE
EVENTISMISCATEGORIZEDINOUROPINIONANDDOESNOTREALLYBELONGINTHE5SER)/CATEGORY

Parameters
4HEPARAMETERSFORTHISEVENTPROVIDENOADDITIONALINFORMATION)NFACT VALUESARENOTEVENSETFORTHE
PARAMETERSINTHISEVENT(EREARETHEPARAMETERDEFINITIONS

?  #ELLHASHNUMBERALWAYS 
?!.OTUSED
?".OTUSED

Exadata Wait Events in the System I/O Class


4HE%XADATAWAITEVENTSTHATAREASSIGNEDTOTHE3YSTEM)/CLASSAREOFLESSIMPORTANCEANDDONOT
GENERALLYSHOWUPASMAJORCONSUMERSOFTIME4HEBACKUPEVENTSARETHEMOSTINTERESTINGASTHEY
RECORDTIMEFORSECTIONSOFCODETHATHAVEBEENOPTIMIZEDONTHE%XADATAPLATFORM4HEOTHERSARE


#(!04%2 %8!$!4!7!)4%6%.43

SIMPLYHOUSEKEEPINGEVENTS4HENON BACKUPEVENTSARELISTEDIN4ABLE WHILETHEBACKUPEVENTS


AREDETAILEDINTHEFOLLOWINGSECTIONS

Table 10-1. Miscellaneous System I/O Class Events

Event Description
RT[[\P]PVTaR[^bX]VRT[[ 4HISISASHUTDOWN RELATEDEVENT4HECELLHASHNUMBERISCONTAINEDIN
THE? COLUMNOFTHEebTbbX^]NfPXcVIEWFORTHISEVENT4HE?!AND?"
COLUMNSAREUNUSED

RT[[\P]PVTaSXbR^eTaX]VSXbZb 4HISISASTARTUP RELATEDEVENT4HECELLHASHNUMBERISCONTAINEDINTHE


? COLUMNOFTHEebTbbX^]NfPXcVIEWFORTHISEVENT4HE?!AND?"
COLUMNSAREUNUSED

RT[[\P]PVTa^_T]X]VRT[[ 4HISISASTARTUP RELATEDEVENT4HECELLHASHNUMBERISCONTAINEDINTHE


? COLUMNOFTHEebTbbX^]NfPXcVIEWFORTHISEVENT4HE?!AND?"
COLUMNSAREUNUSED

CELLSMARTINCREMENTALBACKUP
4HISEVENTISUSEDTOMEASURETIMESPENTWAITINGON2-!.WHENDOINGAN)NCREMENTAL,EVELBACKUP
%XADATAOPTIMIZESINCREMENTALBACKUPSBYOFFLOADINGMUCHOFTHEPROCESSINGTOTHESTORAGETIER4HIS
NEWWAITEVENTWASADDEDTOACCOUNTFORTIMESPENTWAITINGONTHEOPTIMIZEDINCREMENTALBACKUP
PROCESSINGTHATISOFFLOADEDTOTHESTORAGECELLS

Event Meaning
)NTERESTINGLY AN)NCREMENTAL,EVELBACKUPDOESNOTRESULTINTHISWAITEVENTEVENTHOUGHTHEWORD
hINCREMENTALvISINTHE2-!.COMMAND4HATISBECAUSETHE,EVELBACKUPDOESNTACTUALLYDOAN
INCREMENTALBACKUPATALL)TGENERATESAFULLBACKUPTHATISFLAGGEDASABASELINEFORFUTUREINCREMENTAL
BACKUPS(ERESANEXCERPTFROMATRACEFILEGENERATEDONAPROCESSTHATWASDOINGANINCREMENTAL
,EVELBACKUP
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P,!&RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P,$#RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P, (RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P,%"RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P, !RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,R^]ca^[UX[TbT`dT]cXP[aTPST[P,"&'UX[T,Q[^RZ, Q[^RZb, ^QY, 
F08C)]P\,R^]ca^[UX[TbT`dT]cXP[aTPST[P,"&'UX[T, Q[^RZ, Q[^RZb, ^QY, 
F08C)]P\,R^]ca^[UX[TbT`dT]cXP[aTPST[P,!$#UX[T,Q[^RZ, $Q[^RZb, ^QY, 
F08C)]P\,R^]ca^[UX[TbT`dT]cXP[aTPST[P,""!UX[T,Q[^RZ, &Q[^RZb, ^QY, 
F08C)]P\,R^]ca^[UX[TbT`dT]cXP[aTPST[P,!%'UX[T,Q[^RZ,"(Q[^RZb, ^QY, 
F08C)]P\,R^]ca^[UX[TbT`dT]cXP[aTPST[P, $&(#UX[T,Q[^RZ,"&Q[^RZb, ^QY, 
F08C)]P\,R^]ca^[UX[T_PaP[[T[faXcTT[P,"$ UX[Tb,!Q[^RZ," aT`dTbcb,!^QY, 
F08C)]P\,R^]ca^[UX[T_PaP[[T[faXcTT[P,##UX[Tb,!Q[^RZ, 'aT`dTbcb,!^QY, 
F08C)]P\,R^]ca^[UX[T_PaP[[T[faXcTT[P,! UX[Tb,!Q[^RZ, %aT`dTbcb,!^QY, 
F08C)]P\,R^]ca^[UX[T_PaP[[T[faXcTT[P,!(#UX[Tb,!Q[^RZ, aT`dTbcb,!^QY, 


#(!04%2 %8!$!4!7!)4%6%.43

F08C)]P\,R^]ca^[UX[TbT`dT]cXP[aTPST[P,(##UX[T,Q[^RZ, Q[^RZb, ^QY, 


F08C)]P\,:BE\PbcTafPXcT[P, ""$!_ ,_!,_",^QY, cX\, !'$$ '$'%##!&&$
F08C)]P\,0B<UX[T\TcPSPcP^_TaPcX^]T[P,"!\bV^_,# [^R],_",^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,"""R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,3XbZUX[T^_TaPcX^]b8>T[P,%&5X[T>_TaPcX^],"UX[T]^, UX[Tch_T, ^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P,"(!RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P,($RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P, %(RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P, #RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P, !'RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P, $RT[[WPbW," &%$(##(_!,_",^QY, 
F08C)]P\,RT[[b\PacX]RaT\T]cP[QPRZd_T[P,&!!RT[[WPbW," &%$(##(_!,_",^QY, 

Parameters
4HEONLYPARAMETERUSEDFORTHISEVENTIS? WHICHSHOWSWHICHCELLWASRESPONSIBLEFORGENERATINGTHE
EVENT
? #ELLHASHNUMBER
?! .OTUSED
?" .OTUSED
^QY .OTUSED

■.OTE4HEOBJFIELDISAPARTOFMANYWAITEVENTS EVENSOMETHATARENOTSPECIFICALLYRELATEDTOANINDIVIDUAL
OBJECT"EAWARETHATINSOMECASES THEVALUEMAYBESETBYONEEVENTANDTHENNOTCLEAREDAPPROPRIATELYWHEN
THEWAITENDS RESULTINGINMEANINGLESSVALUESLEFTINPLACEFORTHENEXTWAITEVENT)NTHEPREVIOUSEXAMPLE THE
OBJWASCLEAREDSETTOAVALUEOF  

CELLSMARTRESTOREFROMBACKUP
4HISEVENTISUSEDTOMEASURETIMESPENTWAITINGON2-!.WHENDOINGARESTORE%XADATAOPTIMIZES
2-!.RESTORESBYOFFLOADINGPROCESSINGTOTHESTORAGECELLS

Event Meaning
4HEEVENTACTUALLYRECORDSTIMERELATEDTOFILEINITIALIZATIONDURINGARESTORE(ERESANEXCERPTFROMA
TRACEFILETAKENWHILEARESTOREWASINPROGRESS
CWTX]_dcQPRZd__XTRT
A42>cTbcQPRZd_bTc! N(N!%]]]S]NcPV! (!%c 'N !%"&"&!$&(XbX]10B82 !
R^\_aTbbTSU^a\Pc


#(!04%2 %8!$!4!7!)4%6%.43

F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,('R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,&$&R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,(#R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P,!R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#^QY, 
F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P,!!R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#&^QY,
F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P, $R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#&^QY,
F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P, R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#&^QY,
F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P, #R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#&^QY,

F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P, "%#R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#&
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P, %R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,"R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P,#&'"R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#&
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,$R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,A<0=QPRZd_aTR^eTah8>T[P,!($!R^d]c, X]ca,!$%cX\T^dc,! #&#'"%#&
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P, #R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,""R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,%!R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P,(!R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 
F08C)]P\,ZUZ)Pbh]RSXbZ8>T[P, !R^d]c, X]ca,cX\T^dc,#!(#(%&!($^QY, 

F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P,#"!#(RT[[WPbW,"&(""(($'_!,_",^QY,
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, ' # RT[[WPbW,! ""#$(#'_!,_",^QY,
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P,#"RT[[WPbW,"&(""(($'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P,"&'RT[[WPbW,! ""#$(#'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, $RT[[WPbW,! ""#$(#'"_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, "$$RT[[WPbW,! ""#$(#'_!,_",^QY,
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P,&%%RT[[WPbW,! ""#$(#'"_!,_",^QY,
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, %&RT[[WPbW,"&(""(($'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, ((RT[[WPbW,! ""#$(#'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, (RT[[WPbW,! ""#$(#'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P,!!%RT[[WPbW,"&(""(($'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, !&RT[[WPbW,! ""#$(#'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, RT[[WPbW,! ""#$(#'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, &&RT[[WPbW,"&(""(($'_!,_",^QY, 
F08C)]P\,RT[[b\PacaTbc^aTUa^\QPRZd_T[P, %RT[[WPbW,! ""#$(#'_!,_",^QY, 

Parameters
4HEONLYPARAMETERUSEDFORTHISEVENTIS0 WHICHSHOWSWHICHCELLWASRESPONSIBLEFORGENERATINGTHE
EVENT
? #ELLHASHNUMBER
?! .OTUSED
?" .OTUSED


#(!04%2 %8!$!4!7!)4%6%.43

Exadata Wait Events in the Other and Idle Classes


4HESEARERELATIVELYMINOREVENTSTHATOCCURPRIMARILYDURINGSTARTUPANDSHUTDOWNOFSTORAGECELLSAND
FAULTCONDITIONS9OUWILLPROBABLYNOTSEETHEMONNORMALLYFUNCTIONINGSYSTEMS4HEREISONE
EXCEPTIONTOTHIS THERT[[b\PacU[PbWd]ZTT_EVENT4ABLELISTSTHEhCELLvWAITEVENTSINTHE/THER
CLASSALONGWITHTHEIRPARAMETERS!SEPARATESECTIONWILLCOVERRT[[b\PacU[PbWd]ZTT_

Table 10-2. Miscelaneous Other and Idle Class Events

Event Description
RT[[\P]PVTaRP]RT[f^aZaT`dTbc 4HISEVENTISNOTVERYINFORMATIVE ASALLTHREEOFTHEPARAMETERS
? ?! ?" FROMTHEebTbbX^]NfPXcVIEWAREUNUSED

RT[[f^aZTa^][X]TR^\_[TcX^] 4HISAPPEARSTOBEASTARTUPEVENT4HECELLHASHNUMBERIS
CONTAINEDINTHE? COLUMNOFTHEebTbbX^]NfPXcVIEWFORTHIS
EVENT4HE?!AND?"COLUMNSAREUNUSED

RT[[f^aZTaaTcah 4HECELLHASHNUMBERISCONTAINEDINTHE? COLUMNOFTHE


ebTbbX^]NfPXcVIEWFORTHISEVENT4HE?!AND?"COLUMNSARE
UNUSED

RT[[f^aZTaXS[T 4HE? 0AND0COLUMNSFROMTHEebTbbX^]NfPXcVIEWARE


UNUSEDINTHISIDLEEVENT

CELLSMARTFLASHUNKEEP
4HISEVENTRECORDSTHETIMESPENTWAITINGWHEN/RACLEMUSTFLUSHBLOCKSOUTOF%XADATA3MART&LASH
#ACHE4HISCANOCCURWHENATABLETHATHASASTORAGECLAUSEDESIGNATINGTHATITBEPINNEDIN%XADATA
3MART&LASH#ACHEISTRUNCATEDORDROPPED

Event Meaning
4RUNCATINGANDDROPPINGTABLESDOESNTGENERALLYHAPPENVERYOFTENINMOSTPRODUCTIONSYSTEMSWITH
SOMENOTABLEEXCEPTIONS ANDTHEREFORETHISWAITEVENTWILLPROBABLYNOTBESEENVERYOFTEN(ERESAN
EXCERPTFROMATRACEFILESHOWINGTHEEVENT
F08C#)]P\,T]`)A>UPbc^QYTRcaTdbTT[P,"("]P\Tk\^ST, "'((%!!,%$$' , ^QY, 
F08C#)]P\,aT[XPQ[T\TbbPVTT[P, $#'RWP]]T[R^]cTgc,%& !!&'&!RWP]]T[WP]S[T,%%(%'&'$%
Qa^PSRPbc\TbbPVT,%&# "#!('#^QY, cX\, !'%! '(!%#!( %
F08C#)]P\,T]`)A>UPbc^QYTRcaTdbTT[P,! !&]P\Tk\^ST, "'((!,%$$' , ^QY, 
F08C#)]P\,VTb\TbbPVTQdUUTaP[[^RPcX^]T[P,!_^^[,aT`dTbc, P[[^RPcTS,^QY, 
F08C#)]P\,T]`)A>UPbc^QYTRcaTdbTT[P, $(]P\Tk\^ST, "'(($&!,%$$' ,!^QY, 
F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P,""%RT[[WPbW,"&(""(($'_!,_",^QY, 
F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P,!( RT[[WPbW,! ""#$(#'"_!,_",^QY, 
F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P," (RT[[WPbW," &%$(##(_!,_",^QY, 
F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P,# 'RT[[WPbW,"&(""(($'_!,_",^QY, 
F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P, RT[[WPbW,! ""#$(#'"_!,_",^QY, 


#(!04%2 %8!$!4!7!)4%6%.43

F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P,! %RT[[WPbW," &%$(##(_!,_",^QY, 


F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P,!!!RT[[WPbW,"&(""(($'_!,_",^QY, 
F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P, (%RT[[WPbW,! ""#$(#'"_!,_",^QY, 
F08C#)]P\,RT[[b\PacU[PbWd]ZTT_T[P,! %RT[[WPbW," &%$(##(_!,_",^QY, 
.OTETHATTHERT[[b\PacU[PbWd]ZTT_EVENTISPRECEDEDBYAHANDFULOFT]`)A>~UPbc^QYTRc
aTdbTEVENTS WHICHAREUSEDTOMARKTIMEASSOCIATEDWITHCLEANINGUPTHEBUFFERCACHEAFTERADROPOR
TRUNCATE4HERT[[b\PacU[PbWd]ZTT_ISBASICALLYANEXTENSIONOFTHATEVENTTOCLEANUPTHE%XADATA
3MARTFLASHCACHEONTHESTORAGESERVERASWELL

Parameters
4HEONLYPARAMETERUSEDFORTHISEVENTIS? WHICHSHOWSWHICHCELLWASRESPONSIBLEFORGENERATINGTHE
EVENT
? #ELLHASHNUMBER
?! .OTUSED
?" .OTUSED

Old Events
)NADDITIONTOTHENEWCELLEVENTS THEREAREALSOAFEWNON %XADATA SPECIFICWAITEVENTSTHATYOUSHOULD
BEAWAREOF4HESEAREEVENTSTHATYOUMAYALREADYBEFAMILIARWITHFROMMANAGING/RACLEONOTHER
PLATFORMS4HEYHAPPENTOALSOBEIMPORTANTINAN%XADATAENVIRONMENT SOTHEYREPRESENTCASESIN
WHICHYOUREXISTINGKNOWLEDGEANDSKILLCANCARRYOVERANDSTANDYOUINGOODSTEADASYOUMOVEINTO
MANAGING%XADATA

DIRECTPATHREAD
$IRECTPATHREADSAREUSEDBY/RACLETOREADDATADIRECTLYINTO0'!MEMORYINSTEADOFINTOTHEBUFFER
CACHE 4HEYAREANINTEGRALPARTOF%XADATA/FFLOADINGBECAUSE31,PROCESSINGCANONLYBEOFFLOADEDTO
THESTORAGECELLSWHENTHEDIRECTPATHREADMECHANISMISUSED4HESXaTRc_PcWaTPSWAITEVENTIS
ACTUALLYREPLACEDBYTHERT[[b\PaccPQ[TbRP]ANDRT[[b\PacX]STgbRP]WAITEVENTSWHENAQUERYIS
OFFLOADED(OWEVER THEDIRECTPATHREADMECHANISMISSTILLUSEDBYTHECODECOVEREDBYTHOSENEWWAIT
EVENTS4HATIS EITHERTHEPLANMUSTINCLUDEAPARALLELSCANOR/RACLEMUSTDECIDETOUSETHESERIALDIRECT
PATHREADMECHANISM

Event Meaning
4HISEVENTRECORDSTIMETHAT/RACLESPENDSWAITINGONADIRECTPATHREADTOCOMPLETE9OUSHOULDKNOW
THATTHEDIRECTPATHREADWAITEVENTCANBEVERYMISLEADING"OTHTHENUMBEROFEVENTSRECORDEDANDTHE
TIMINGSASSOCIATEDWITHTHEMCANAPPEARTOBEINACCURATE4HISISDUETOTHEFACTTHATDIRECTPATHREADS
AREDONEINANASYNCHRONOUSANDOVERLAPPINGFASHION3EE-/3NOTEFORFURTHERDETAILSABOUT
WHYTIMERECORDEDBYTHISEVENTCANBEMISLEADING)TALSOBEARSMENTIONINGTHATG2CONTAINSAN
ENHANCEMENTTHATCAUSESSERIALDIRECTPATHREADSTOOCCURMOREFREQUENTLYTHANINPREVIOUSRELEASES3EE
-/3.OTE WHICHBRIEFLYMENTIONSTHISCHANGE


#(!04%2 %8!$!4!7!)4%6%.43

"YTHEWAY THESXaTRc_PcWaTPSWAITEVENTDOESSTILLSHOWUPONTHE%XADATAPLATFORMFORVARIOUS
OPERATIONSBUTGENERALLYNOTFORFULLTABLESCANSUNLESSTHETABLEORPARTITIONISRELATIVELYSMALL 

Parameters
4HEPARAMETERSFORTHISEVENTSHOWYOUEXACTLYWHICHSEGMENTOBJ ISSCANNEDANDWHICHSETOFBLOCKS
WERESCANNEDDURINGTHISEVENT
? &ILENUMBER
?! &IRST$"!
?" "LOCKCOUNT
^QY 4HEOBJECTNUMBEROFTHETABLEBEINGSCANNED
!SMENTIONEDINTHE#ELL3MART4ABLE3CANSECTION THEPARAMETERSCONTAINSPECIFICINFORMATION
ABOUTWHICHFILEANDOBJECTAREBEINGACCESSED4HEOFFSETINTOTHEFILEISALSOPROVIDEDINTHE0
PARAMETER ALONGWITHTHENUMBEROFCONTIGUOUSBLOCKSREADINTHE0PARAMETER

ENQ+/ˆFASTOBJECTCHECKPOINT
4HET]`):>EVENTHASAVERYSTRANGENAME$ONTBEPUTOFFBYTHAT4HEEVENTISESSENTIALLYAN^QYTRc
RWTRZ_^X]cEVENT4HEE;>2:NCH?4VIEWDESCRIBESTHE+/LOCKASFOLLOWS
BHB/4G31 -bT[TRcch_T]P\TSTbRaX_cX^]Ua^\e[^RZNch_T
!fWTaTch_T,:>*

CH?4=0<434B2A8?C8>=

:><d[cX_[T>QYTRc2WTRZ_^X]c2^^aSX]PcTbRWTRZ_^X]cX]V^U\d[cX_[T^QYTRcb

Event Meaning
4HISEVENTISUSEDWHENASESSIONISWAITINGFORALLDIRTYBLOCKSTOBEFLUSHEDFROMTHEBUFFERCACHEFORAN
OBJECTPRIORTOSTARTINGASXaTRc_PcWaTPSORCT[[b\PaccPQ[TbRP]ORRT[[b\PacX]STgbRP]4HIS
EVENTISIMPORTANTBECAUSETHETIMEREQUIREDTODOTHECHECKPOINTMAYOUTWEIGHTHEBENEFITOFTHE
DIRECTPATHREADS4HISISUNLIKELYON%XADATASTORAGE THOUGH WHERETHEADDITIONAL3MART3CANBENEFITS
AREONLYENABLEDBYTHEDIRECTPATHREADMECHANISM

Parameters
4HEPARAMETERSFORTHISEVENTARENOTOVERLYHELPFULBUTTHEEVENTDOESSHOWWHICHOBJECTISSCANNED
(EREARETHEPARAMETERDEFINITIONS
? .AME-ODE
?! .OTUSED
?" .OTUSED
^QY 4HEOBJECTNUMBEROFTHEOBJECTBEINGCHECKPOINTED


#(!04%2 %8!$!4!7!)4%6%.43

RELIABLEMESSAGE
4HEaT[XPQ[T\TbbPVTEVENTISUSEDTORECORDTIMESPENTCOMMUNICATINGWITHBACKGROUNDPROCESSES
LIKETHECHECKPOINTPROCESS#+04 7EHAVEINCLUDEDITHEREBECAUSEOFITSCLOSEASSOCIATIONWITHTHE
T]`):>~UPbc^QYTRcRWTRZ_^X]cEVENT

Event Meaning
4HISEVENTISTHEPRECURSORTOTHET]`):>~UPbc^QYTRcRWTRZ_^X]cEVENTAMONGOTHERS 4HE
COMMUNICATIONISDONEUSINGANINTER PROCESSCOMMUNICATIONCHANNELRATHERTHANAMORENORMALPOST
MECHANISM4HISCOMMUNICATIONMETHODALLOWSTHESENDERTOREQUESTAN!#+BEFOREITCONTINUES THUS
THEREASONITISCALLEDARELIABLEMESSAGE)TISGENERALLYAVERYSHORTDURATIONEVENTASITONLYRECORDSTIME
FORCOMMUNICATINGBETWEENPROCESSES"OTHTHEUSERSFOREGROUNDPROCESSANDTHECHKPTPROCESSWILL
WAITONTHISEVENTASTHEYCOMMUNICATEWITHEACHOTHER(ERESANEXCERPTOFATRACEFILESHOWINGA
COMPLETERELIABLEMESSAGEEVENT
?0AB8=68=2DAB>A#%(%"('("%&##[T],$ST_,dXS,^Rc,"[XS,cX\, " ''$!!&#"$!'
We,""!%!%$##PS,!RU%&$UUb`[XS,&h(SchdR#SQW
bT[TRcPeV_ZNR^[Ua^\Zb^bZTf!PfWTaTR^[ -
4=3>5BC<C
?0AB4
#%(%"('("%&##)R, (((T,! !!_,Ra,Rd,\Xb, a,ST_,^V, _[W,! &' &( cX\, " ''$!!
&#"$!&
F08C#%(%"('("%&##)]P\,reliable messageT[P, "%RWP]]T[R^]cTgc, '''"# &'#RWP]]T[
WP]S[T, !''$'$'(%Qa^PSRPbc\TbbPVT, !'("&! %^QY,&$&$(cX\, " ''$!!&#$"(&
F08C#%()]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P, '"^QY,&$&$(cX\, "
F08C#%()]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P, ##^QY,&$&$(cX\, "
F08C#%()]P\,T]`)?BR^]cT]cX^]T[P,!^QY,&$&$(cX\, "
F08C#%()]P\,^bcWaTPSbcPacd_T[P,$'"""_ ,_!,_",^QY,&$&$(cX\, "
F08C#%()]P\,^bcWaTPSbcPacd_T[P,  &$_ ,_!,_",^QY,&$&$(cX\, "
F08C#%()]P\,T]`)?BR^]cT]cX^]T[P,!&%^QY,&$&$(cX\, "
F08C#%()]P\,^bcWaTPSbcPacd_T[P, !(''_ ,_!,_",^QY,&$&$(cX\, "
F08C#%()]P\,^bcWaTPSbcPacd_T[P, "#($_ ,_!,_",^QY,&$&$(cX\, "
F08C#%()]P\,T]`)?BR^]cT]cX^]T[P,!"&^QY,&$&$(cX\, "
F08C#%()]P\,^bcWaTPSbcPacd_T[P, !%$$_ ,_!,_",^QY,&$&$(cX\, "
F08C#%()]P\,^bcWaTPSbcPacd_T[P, !"!(_ ,_!,_",^QY,&$&$(cX\, "
F08C#%()]P\,T]`)?BR^]cT]cX^]T[P," "^QY,&$&$(cX\, "
F08C#%()]P\,^bcWaTPSbcPacd_T[P, !%&"_ ,_!,_",^QY,&$&$(cX\, "

Parameters
(EREARETHEPARAMETERSFORTHERELIABLEMESSAGEEVENT
? CHANNELCONTEXT
?! CHANNELHANDLE
?" BROADCASTMESSAGE
^QY 4HEOBJECTNUMBEROFTHEOBJECTOFINTERESTNOTALWAYSSET


#(!04%2 %8!$!4!7!)4%6%.43

Resource Manager Events


&INALLY THEREAREAFEW2ESOURCE-ANAGEREVENTSTHATYOUSHOULDBEAWAREOF7HILETHESEARENOT
SPECIFICTO%XADATA 2ESOURCE-ANAGERPROVIDESKEYFUNCTIONALITYFORCOMBININGMIXEDWORKLOADSON
%XADATA4HEREAREACTUALLYEIGHTSEPARATEEVENTSASOFRELEASE4HEFOLLOWINGQUERYAGAINST
6%6%.4?.!-%SHOWSTHESEEVENTSANDTHEIRPARAMETERS
BHB/B0=31>G -/eP[XSNTeT]cb
4]cTaeP[dTU^aTeT]cN]P\T)aTb\Va

4E4=C2;0BB? ?!?"

aTb\Va)X]cTa]P[bcPcTRWP]VT2^]RdaaT]Rh[^RPcX^]
aTb\Va)bTbbX^]bc^TgXc[^RPcX^]

aTb\Va)X]cTa]P[bcPcTR[TP]d_>cWTa[^RPcX^]

aTb\Va)QTR^\TPRcXeTBRWTSd[Ta[^RPcX^]
aTb\Va)R_d`dP]cd\[^RPcX^]R^]bd\TaVa^d_XS
aTb\Va)[PaVT8>`dTdTS[^RPcX^]
aTb\Va)_``dTdTS[^RPcX^]
aTb\Va)b\P[[8>`dTdTS[^RPcX^]

'a^fbbT[TRcTS
4HEREAREONLYTWOOFTHESEEVENTSTHATAREOFINTEREST

RESMGRCPUQUANTUM
4HISEVENTISUSEDTORECORDFORCEDIDLETIMEIMPOSEDBY$ATABASE2ESOURCE-ANAGER$"2- DUETO
COMPETITIONWITHHIGHERPRIORITYWORK3AIDANOTHERWAY ITISTHETIMEAPROCESSSPENTWAITINGFOR$"2-
TOALLOCATEITATIMESLICE

Event Meaning
$"2-BEHAVESINANANALOGOUSMANNERTO#05SCHEDULINGALGORITHMSINTHATITDIVIDESTIMEINTOUNITS
QUANTUM ANDEITHERALLOWSAPROCESSTORUNORNOTDEPENDINGONOTHERWORKLOADONTHESYSTEM5NLIKE
#05SCHEDULINGALGORITHMSTHOUGH $"2-THROTTLINGISINTERJECTEDATKEYLOCATIONSINTHE/RACLECODETO
ELIMINATETHEPOSSIBILITYOFAPROCESSBEINGKICKEDOFFOFTHE#05WHENITISHOLDINGASHAREDRESOURCE
SUCHASALATCH4HISPREVENTSSOMENASTYBEHAVIORTHATMAYOCCURONHEAVILYLOADEDSYSTEMSSUCHAS
PRIORITYINVERSIONPROBLEMS)NEFFECT THEPROCESSESVOLUNTARILYGOTOSLEEPWHENTHEYARENOTHOLDING
THESESHAREDRESOURCES4HEREAREMULTIPLELOCATIONSINTHECODEWHERETHESECHECKSAREIMPLEMENTED
(ERESANEXCERPTOFATRACEFILESHOWINGTHEaTb\Va)R_d`dP]cd\EVENT


#(!04%2 %8!$!4!7!)4%6%.43

?0AB8=68=2DAB>A#&#%&" ##[T],"#ST_,dXS,'$^Rc,"[XS,'$cX\, " !&$"(""!"# #


We,""'(%!"'PS,Q"R(UPU'b`[XS,R#Yb $i!\_UVU
bT[TRcR^d]c
Ua^\Zb^bZTf
4=3>5BC<C
?0AB4#&#%)R,T,&&_,Ra,Rd,\Xb,a,ST_,^V, _[W,("&%'& #cX\, "
4G42#&#%)R,T,#(_,Ra,Rd,\Xb,a,ST_,^V, _[W,("&%'& #cX\, "
F08C#&#%)]P\,B@;=Tc\TbbPVTc^R[XT]cT[P,#SaXeTaXS, %$' $!"!QhcTb, 
F08C#&#%)]P\,aTb\Va)R_d`dP]cd\T[P,"#$&[^RPcX^],"R^]bd\TaVa^d_XS,&$$!$
F08C#&#%)]P\,aTb\Va)R_d`dP]cd\T[P,%' !%[^RPcX^],"R^]bd\TaVa^d_XS,&$$!$
F08C#&#%)]P\,aTb\Va)R_d`dP]cd\T[P,%'#%[^RPcX^],"R^]bd\TaVa^d_XS,&$$!$
F08C#&#%)]P\,aTb\Va)R_d`dP]cd\T[P, '(# [^RPcX^],"R^]bd\TaVa^d_XS,&$$!$
F08C#&#%)]P\,aTb\Va)R_d`dP]cd\T[P,"'!"#[^RPcX^],"R^]bd\TaVa^d_XS,&$$!$
F08C#&#%)]P\,aTb\Va)R_d`dP]cd\T[P, "!'![^RPcX^],"R^]bd\TaVa^d_XS,&$$!$

Parameters
(EREARETHEPARAMETERSFORTHISEVENT.OTETHATTHEOBJPARAMETEREXISTSBUTISNOTUSED
? ,OCATION
?! #ONSUMERGROUPID
?" .OTUSED
^QY .!
4HELOCATIONPARAMETERISANUMERICVALUETHATMOSTLIKELYREFERSTOALOCATIONFUNCTION INTHE/RACLE
CODE4HEREAREATLEASTDISTINCTLOCATIONSTHATWEHAVEOBSERVED5NFORTUNATELY /RACLEDOESNOT
PUBLICLYDOCUMENTWHEREINTHE/RACLEKERNELTHESECHECKSAREPERFORMED
4HECONSUMERGROUPNUMBERINTHE0PARAMETERISPRETTYSELF EXPLANATORY)TMAPSTOTHE
#/.35-%2?'2/50?)$COLUMNINTHE$"!?232#?#/.35-%2?'2/503VIEW4HISPARAMETERALLOWS
YOUTOTELLWHATCONSUMERGROUPAPROCESSWASASSIGNEDTOWHENITS#05USAGEWASCURTAILED

RESMGRPQQUEUED
4HISEVENTISUSEDTORECORDTIMESPENTWAITINGINTHEPARALLELQUERYQUEUE

Event Meaning
4HEPARALLELSTATEMENTQUEUINGFEATURECOMESWITHITSOWNWAITEVENT3TATEMENTSTHATAREQUEUEDDUE
TOINSUFFICIENTPARALLELSERVERPROCESSESOROTHERDIRECTIVESCLOCKTIMETOTHISEVENT(ERESANEXCERPTOFA
TRACEFILESHOWINGTHEaTb\Va)_``dTdTSEVENT
?0AB8=68=2DAB>A#&'('#"%! [T],&"ST_,dXS,^Rc,"[XS,cX\, " (%%&!""!%(#
We," '%#'% &PS,!RS!S RQ'b`[XS,QVR\\Rhhhe_V(
bT[TRc_PaP[[T[P %PeV_ZNR^[Ua^\Zb^bZTf"PfWTaTR^[ -
4=3>5BC<C
?0AB4#&')R,!T, $&!_,Ra,Rd,\Xb, a,ST_,^V, _[W, ##$' & cX\, "
F08C#&')]P\,'resmgr:pq queued'T[P,%$ !#&[^RPcX^], ,,^QY,$!"cX\, "
F08C#&')]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P,!$'^QY,$!"


#(!04%2 %8!$!4!7!)4%6%.43

F08C#&')]P\,aT[XPQ[T\TbbPVTT[P,!$RWP]]T[R^]cTgc, 'RWP]]T[WP]S[T, !


^QY,$!"
F08C#&')]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P, $%^QY,$!"
F08C#&')]P\,?G3T`)9^X]02:T[P,&&!b[TT_cX\TbT]STaXS,!%'_PbbTb, _", !^QY,$!"
F08C#&')]P\,?G3T`)9^X]02:T[P,("!b[TT_cX\TbT]STaXS,!%'_PbbTb,'_", !^QY,$!"
F08C#&')]P\,?G3T`)9^X]02:T[P,!b[TT_cX\TbT]STaXS,_PbbTb,_",^QY,$!"

Parameters
(EREARETHEPARAMETERSFORTHEaTb\Va)_``dTdTSEVENT
? ,OCATION
?! .OTUSED
?" .OTUSED
^QY .!
4HELOCATIONPARAMETERISANUMERICVALUETHATMOSTLIKELYREFERSTOALOCATIONFUNCTION INTHE/RACLE
CODEASDESCRIBEDABOVEINTHEaTb\Va)R_d`dP]cd\EVENT

Summary
4HEWAITINTERFACEHASBEENEXPANDEDTOCOVERSEVERAL%XADATA SPECIFICFEATURES)NTHISCHAPTERWEVE
COVEREDTHENEWWAITEVENTS"YFARTHEMOSTINTERESTINGOFTHENEWEVENTSARERT[[b\PaccPQ[TbRP]
ANDRT[[b\PacX]STgbRP]4HESEEVENTSCOVERTHETIMESPENTWAITINGONANOFFLOADABLE)/REQUESTTO
ASTORAGECELL4HEREISALOTOFPROCESSINGTHATOCCURSATTHESTORAGELAYERTHATISLUMPEDTOGETHERUNDER
THESEEVENTS)TSIMPORTANTTOUNDERSTANDTHATTHESEEVENTSREPLACETHESXaTRc_PcWaTPSEVENTANDTHAT
THEMECHANISMOFRETURNINGTHEDATADIRECTLYTOTHEPROCESS0'!EMPLOYEDBYTHE3MART3CANEVENTSIS
ANALOGOUSTOTHEWAYITISHANDLEDBYSXaTRc_PcWaTPS


C H A P T E R 11



Understanding Exadata
Performance Metrics

/RACLE%XADATAISABIGSTEPFORWARDFROMTHETRADITIONALDATABASESERVERARCHITECTUREHOWEVER ITISSTILL
RUNNINGTHESTANDARD/RACLE$ATABASESOFTWARE-OSTOFTHEUSUALDATABASEPERFORMANCERULESSTILL
APPLY WITHTHEADDITIONOFSOMETHATRECOGNIZETHEADVANTAGEOF%XADATAFUNCTIONALITYLIKE3MART3CANS
CELLJOINFILTERINGANDTHEFLASHCACHE)NTHISCHAPTERWEWILLCOVERTHE%XADATA SPECIFICAND RELATED
PERFORMANCETOPICS METRICS ANDSOMERELEVANTINTERNALS
4HANKFULLY/RACLE BOTHATTHEDATABASELAYERANDINCELLS PROVIDESLOTSOFPERFORMANCEMETRICSFOR
OURUSE(OWEVER WHENLOOKINGINTOANYMETRIC YOUSHOULDKNOWwhyYOUAREMONITORINGTHISAND
WHATNUMBERSAREYOULOOKINGFOR)NOTHERWORDS HOWDOYOUKNOWWHENEVERYTHINGIS/+ANDNO
ACTIONISNEEDED ANDWHENTHINGSAREBADANDACTIONISNEEDED!NDINORDERTOAVOIDWASTINGEFFORTON
FIXINGTHEWRONGPROBLEM WEREALLYNEEDTO MEASUREwhat matters&ORDATABASEPERFORMANCE NOTHING
MATTERSMORETHANresponse time THEACTUALTIMETHEENDUSERORCONNECTEDSYSTEM HASTOWAITFORTHE
RESPONSE3OIFWEWANTTOMAKESOMETHINGFASTERINTHEDATABASE WESHOULDFOCUSONMEASURINGAND
THENOPTIMIZINGTHERESPONSETIME!LLTHEOTHERMETRICSANDINDICATORS LIKETHENUMBEROF)/SORCACHE
HITS ARESECONDARY%NDUSERS WHOAREWAITINGFORTHEIRREPORT CAREABOUTTHETIMETHEYHAVETOWAIT
ONLY NOTSECONDARYMETRICSLIKE#05UTILIZATIONOR)/RATE.EVERTHELESS OFTENTHESESECONDARYMETRICS
BECOMEVERYUSEFULFORUNDERSTANDINGANDEXPLAININGPERFORMANCEISSUES
4HEKEYMETRICSFORBREAKINGDOWNDATABASEresponse timeARETHE/RACLEWAITINTERFACESWAIT
EVENTS4HEWAITEVENTSAREDISCUSSEDIN#HAPTER ANDWEWILLLOOKINTOPERFORMANCEMONITORINGTOOLS
THATMAKEUSEOFTHEMINTHENEXTCHAPTER(OWEVER THEREAREADDITIONALUSEFULMETRICS%XADATA
PROVIDES SUCHASTHENUMBEROFBYTESOFDATARETURNEDBYSMARTSCANSANDTHEACTUALAMOUNTOF)/
AVOIDEDTHANKSTOSTORAGEINDEXES ANDSOON3UCHMETRICSGIVEVERYIMPORTANTADDITIONALINFOABOUT
WHATSHAPPENINGINTHEDATABASEANDSTORAGECELLSDURING31,EXECUTION)NTHISCHAPTERWEWILL
EXAMINETHESEMETRICS ANDYOULLLEARNHOWTOGETTHEMANDWHATTHEYMEAN%VENIFYOUARENOT
INTERESTEDINKNOWINGWHATEACHMETRICMEANS WESTILLRECOMMENDYOUREADTHISCHAPTER ASITEXPLAINS
SOMEIMPORTANTINTERNALSANDDESIGNDECISIONSBEHIND%XADATA
4HEINFORMATIONINTHISCHAPTERSHOULDGIVEYOUAGOODUNDERSTANDINGABOUTSOMEKEYINTERNAL
WORKINGSOF%XADATADATABASESANDCELLSANDPREPAREYOUFORTHENEXTCHAPTER WHEREWEWILLPUTTHIS
KNOWLEDGETOUSEWHENMONITORINGANDTROUBLESHOOTING%XADATAPERFORMANCE

Measuring Exadata’s Performance Metrics


"EFOREWESTARTLOOKINGAT%XADATA SPECIFICPERFORMANCEMETRICS LETSEXAMINESOMEINTERNALSAND
REVIEWSOMEKEYELEMENTSOF%XADATA SPECIFICFEATURESANDMETRICS/NEMUSTUNDERSTANDWHATTHE
PERFORMANCENUMBERSACTUALLYSTANDFORBEFORETRYINGTOMONITOROROPTIMIZEANYTHINGWITHTHISINFO


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

"YNOWYOUKNOWTHAT%XADATADATABASENODESDONTDOPHYSICALDISK)/THEMSELVES BUTASKTHE
CELLSTODOTHE)/FORTHEM)NTHECASEOFSMARTSCANS THECELLSERVERSWILLALSOPROCESSTHEBLOCKSREAD
EXTRACTTHEIRCONTENTS FILTERROWS ANDSOON3OCONCEPTUALLY THECELLSAREKINDOFABLACKBOXWHEN
VIEWEDFROMDATABASELAYERSIDE4HEDATABASELAYERJUSTREQUESTSSOMEBLOCKSOFDATA ANDTHECELLSDO
THEPHYSICAL)/WORKUNDERTHEHOODANDRETURNTHEREQUESTEDCOLUMNSOFMATCHINGROWS,UCKILY
/RACLE%XADATAARCHITECTSANDDEVELOPERSHAVEPUTDECENTINSTRUMENTATIONINTOCELLS SOTHECELLSKEEP
TRACKOFHOWMUCHWORKTHEYHAVEDONEANDIMPORTANTLY THEYCANALSOsend the metrics backto the
database layer ALONGTHERESULTS4HISALLOWSUSˆ$"!S DEVELOPERS ANDTROUBLESHOOTERSˆTOHAVEAN
END TO ENDOVERVIEWOFWHATHAPPENEDINTHEDATABASEandTHECELLSWHENSERVICINGAUSERSREQUESTOR
RUNNINGAQUERY
&OREXAMPLE WHENAQUERYISEXECUTEDVIA3MART3CAN YOUWILLSTILLSEESTATISTICSLIKEphysical_reads
WHENYOUQUERYEB@;BC0CBINTHEDATABASELAYER EVENTHOUGHTHEDATABASELAYERITSELFDIDNTDOANY
PHYSICALREADSDIRECTLY!NOTHEREXAMPLEISTHEcell physical IO bytes saved by storage indexSTATISTIC
WHICHISCOUNTEDINTHECELLLEVELANDNOTINTHEDATABASE4HESENUMBERSAREVISIBLEINTHEDATABASE
LAYERTHANKSTOCELLSSENDINGBACKUSEFULPERFORMANCEMETRICSINADDITIONTOTHEDATAQUERIED
)NADDITIONTOTHESTANDARD/RACLEPERFORMANCETOOLS WELLUSETWOCUSTOM BUILTTOOLSINTHISAND
THENEXTCHAPTER4HEYAREMORESUITABLEFORFLEXIBLEANDADVANCEDPERFORMANCEANALYSISANDALLOWYOU
TOGOBEYONDTHESTANDARDWAITEVENTSAND31,STATEMENTLEVELSTATISTICS4HEFIRSTTOOL /RACLE3ESSION
3NAPPER ISASCRIPTCONTAININGJUSTANANONYMOUS0,31,BLOCK WHICHMEASURESDETAILEDPERFORMANCE
METRICSFROMEB4BB8>= EB4BB8>=N4E4=C EB4BBNC8<4N<>34; EB4BBC0C ANDSOON4HELAST
PERFORMANCEVIEW EB4BBC0C ISESPECIALLYIMPORTANTFORADVANCEDPERFORMANCEANALYSISˆITCONTAINS
HUNDREDSOFDYNAMICPERFORMANCECOUNTERSOVERIN/RACLE FOREACHSESSIONINTHE
INSTANCE)NADDITIONTOTHEUSUALMONITORINGUSINGWAITEVENTS DIVINGINTOEB4BBC0CGIVESUSAMUCH
BETTERIDEAOFWHATKINDOFWORK/RACLESESSIONSAREDOING SUCHASHOWMANY)/REQUESTSPERSECOND
THEYAREDOING HOWMANYFULLSEGMENTSCANSPERSECOND HOWMANYMIGRATEDCHAINEDROWSHADTOBE
FETCHEDDURINGASCAN ANDSOON

Revisiting the Prerequisites for Exadata Smart Scans


)NTHISSECTIONWEWILLLOOKATTHEVARIOUSMETRICS/RACLE$ATABASEKERNELSINSTRUMENTATIONPROVIDESUS
7EWILLNOTGOINTOTHEDETAILSOF%XADATAWAITEVENTSHERE ASTHESEAREALREADYEXPLAINED#HAPTER7E
WILLREVIEWHOWTOUSETHESEWAITEVENTSFORUNDERSTANDINGDATABASEPERFORMANCE ANDYOUMAYFIND
SOMEOFTHEOFFLOADINGAND3MART3CANMATERIALALREADYFAMILIARFROM#HAPTER BUTITSIMPORTANTTO
REVIEWSOMEOFTHECONCEPTSHERE INTHECONTEXTOFMONITORINGANDTROUBLESHOOTING%XADATA
PERFORMANCE
"ECAUSETHEPRIMARYPERFORMANCEBOOSTERFORDATAWAREHOUSINGANDREPORTINGWORKLOADSISTHE
%XADATA3MART3CAN ANDFOR/,40WORKLOADSITISTHEUSEOF%XADATA3MART&LASH#ACHE WEWILLSEEFIRST
HOWTOMEASUREWHETHERYOURWORKLOADISBENEFITTINGFROMTHESEFEATURES7EWILLUSETHISKNOWLEDGEAS
BUILDINGBLOCKSFORLATERDATABASEANDQUERYPERFORMANCEMONITORING

%XADATA3MART3CAN0ERFORMANCE
,ETSSTARTWITH3MART3CANMETRICS"EFOREWETALKABOUTANYMETRICS LETSREVIEWHOWTHEDECISIONTODO
A3MART3CANISMADEIN/RACLE.OTETHATA3MART3CANCANBEUSEDONREGULARTABLESEGMENTSANDALSO
ONMATERIALIZEDVIEWSEGMENTSnWHICHAREPHYSICALLYNODIFFERENTFROMREGULARTABLES3MART3CANSCAN
ALSOBEUSEDFORFULLSCANNINGTHROUGH"
4REEINDEXSEGMENTSINDEXFASTFULLSCAN ANDALSOBITMAPINDEX
SEGMENTSBITMAPINDEXFASTFULLSCAN 3CANNINGTHROUGHINDEXSEGMENTSUSINGTHEhBRUTEFORCEv
MULTIBLOCKREADSAPPROACHISVERYSIMILARTOFULLTABLESCANS4HEMAJORDIFFERENCEISTHATINSIDEINDEX
SEGMENTSTHEREAREALSOINDEXBRANCHBLOCKS WHICHHAVETOBESKIPPEDANDIGNORED INADDITIONTO!33-


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

BITMAPBLOCKS WHICHHAVETOBESKIPPEDBOTHINTABLEANDINDEXSCANS3MARTSCANSONPARTITIONSAND
SUBPARTITIONSOFTABLESANDINDEXESAREINTERNALLYNODIFFERENTFROMSCANSONNONPARTITIONEDOBJECTSA
PARTITIONEDSEGMENTISJUSTABUNCHOFSMALLERSEGMENTS GROUPEDUNDERTHEIRLOGICALPARENTTABLEOR
INDEXOBJECT 2EMEMBERTHATTHE3MART3CANSCANSCANAVARIETYOFSEGMENTS
2EGARDLESSOFSEGMENTTYPE A3MART3CANALWAYSREQUIRESDIRECTPATHREADSTOBECHOSENBYTHE31,
EXECUTIONENGINEDURINGRUNTIMETHISISnotANOPTIMIZERDECISION 3OWHENTROUBLESHOOTINGWHYA
3MART3CANWASNOTUSED YOUWILLHAVETOFIRSTCHECKWHETHERDIRECTPATHREADSWEREUSEDORNOT9OU
SHOULDCHECKTHEEXECUTIONPLANFIRST TOSEEWHETHERAFULLSCANISREPORTEDTHEREATALL(EREYOUSEE
SIMPLEEXAMPLESSHOWINGFULLSEGMENTSCANSHAPPENINGONDIFFERENTSEGMENTTYPES

B4;42C0E6[X]T5A><cF74A4^f]Ta;8:4B


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\Tk

kkB4;42CBC0C4<4=Ckkkk!($: kk
k kB>AC066A460C4kk k kkk
k!kC01;40224BBBC>A0645D;;kCk$&#":k%<k!($: k)$() k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!bc^aPVT>F=4A;8:4B
UX[cTa>F=4A;8:4B
.OTETHATTHEhBC>A064vINTHEC01;40224BBBC>A0645D;;LINEHEREDOESnot MEANTHAT/RACLEIS
ATTEMPTINGTODOA3MART3CAN4HISWORDMERELYSAYSTHAT/RACLEKNOWSTHATTHISSEGMENTISRESIDINGON
ASTORAGECELL NOTSOMETHINGELSELIKEAN.&3MOUNTORI3#3)DEVICE ANDISUSINGTHETABLESCAN
CODEPATHcapable of performingA3MART3CAN7HETHERA3MART3CANISACTUALLYUSEDDEPENDSON
MULTIPLEOTHERFACTORS WHICHWEREDISCUSSEDIN#HAPTERANDWILLBEALSODEMONSTRATEDHERE!LSO
Smart ScanISABROADTERM COVERINGFILTRATIONWHICHMAYBEABLETOTAKEADVANTAGEOFSTORAGEINDEXES
COLUMNPROJECTION DECOMPRESSIONOF(## COMPRESSEDCOMPRESSIONUNITSANDHASHJOINEARLY
ELIMINATIONWITHBLOOMFILTERSˆALLDONEINTHECELLS%VENIFYOUARENOTTAKINGADVANTAGEOFTHEFILTER
PREDICATEOFFLOADINGTOSTORAGEFILTRATION THECELLSMAYBEABLETOREDUCETHEAMOUNTOFDATARETURNED
TOTHEDATABASE)F3MART3CANISUSED THENTHECOLUMNPROJECTIONISDONEINTHECELLS ANDTHEYRETURN
ONLYTHEREQUIREDCOLUMNSINSTEADOFENTIREBLOCKSCONTAININGTHEFULL LENGTHROWS
)NADDITION ITISIMPORTANTTOCHECKWHETHERAbc^aPVTPREDICATEISSHOWNINTHEh0REDICATE
)NFORMATIONvSECTIONBELOWTHEEXECUTIONPLAN4HISISAGOODINDICATOROFWHETHERTHEEXECUTIONPLANis
capable ofDOINGA3MART3CANSPREDICATEOFFLOADSMARTFILTRATION 5NFORTUNATELY THISDOESNTMEAN
THATA3MART3CANPREDICATEOFFLOADWASACTUALLYATTEMPTED4HEREARECASESWHEREEVENTHEPRESENCEOFA
bc^aPVTPREDICATEDOESNTGUARANTEETHATAPREDICATEOFFLOADWILLTAKEPLACE4HISISWHERE/RACLE
PERFORMANCEMETRICSWILLBEHELPFUL BUTMOREABOUTTHEMSHORTLY )NSUMMARY AFULLSEGMENTSCAN
ACCESSPATHWITHTHEBC>A064KEYWORDandTHEbc^aPVTPREDICATEMUSTBEPRESENTINTHEEXECUTIONPLAN
INORDERFORITTObe capable of DOINGA3MART3CANSPREDICATEOFFLOADATALL)FYOUDOSEETHEBC>A064LINES
INEXECUTIONPLAN BUTNObc^aPVTPREDICATESUNDERIT THENPREDICATEOFFLOADWONTBEEVENATTEMPTED
BUTYOUSTILLMAYBENEFITFROMCOLUMNPROJECTIONOFFLOAD INWHICHONLYTHEREQUIREDCOLUMNSARE
RETURNEDBYCELLS9OUWILLPROBABLYSEEMULTIPLESTORAGEPREDICATESANDFULLSCANOPERATIONS INREAL LIFE
QUERYPLANS ASYOULLBEDOINGMULTI TABLEJOINS
)NSUMMARY IFYOUSEETHEBC>A064OPTIONANDbc^aPVTPREDICATEINANEXECUTIONPLAN ITIS
CAPABLEOFDOINGA3MART3CANANDITSPREDICATEOFFLOADINPRINCIPLE BUTITSNOTGUARANTEEDTHATA3MART


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

3CANHAPPENSEVERYTIMEYOURUNTHEQUERY/NTHEOTHERHAND IFYOUDONOTSEEABC>A064KEYWORDIN
THEEXECUTIONPLAN THENTHERESNOWAYA3MART3CANCOULDHAPPENONACORRESPONDINGSEGMENTINA
GIVENEXECUTIONPLANSTEP7HENTHERESNOBC>A064KEYWORDINTHEEXECUTIONPLANLINE ITMEANSTHAT
THISROWSOURCEOPERATORISNOTCAPABLEOFUSINGTHESMARTFEATURESOFTHESTORAGECELLS ANDSOWONTBE
ABLETOPUSHANYSTOaPVTPREDICATESINTOTHECELLEITHER
3MART3CANSCANBEDONEONMATERIALIZEDVIEWSEGMENTS TOOAMATERIALIZEDVIEWSEGMENTIS
PHYSICALLYEXACTLYTHESAMEASANYREGULARTABLE

bT[TRcR^d]cUa^\\e fWTaT^f]Ta[XZTB


k8Sk>_TaPcX^]k=P\Tk4A^fbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkk "(: k
k kB>AC066A460C4kk kk
k!k<0CNE84F0224BBBC>A0645D;;k<E k!'(:k "(: k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!bc^aPVT>F=4A;8:4B
UX[cTa>F=4A;8:4B
&OLLOWINGARETWOEXAMPLESWHERE3MART3CANSCANBEATTEMPTED4HEFIRSTISWHENSCANNING
THROUGHAREGULAR"
4REEINDEXSEGMENT
B4;42C8=34GN55Bc!0E6;4=6C7^f]Ta5A><c!F74A4^f]Ta;8:4B


k8Sk>_TaPcX^]k=P\Tk4A^fbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkk$ %$ k
k kB>AC066A460C4kk kk
k!k8=34GBC>A06450BC5D;;B20=kC!N8 k$(&:k$ %$!k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!bc^aPVT>F=4A;8:4B
UX[cTa>F=4A;8:4B
4HESECONDSCANSABITMAPINDEXSEGMENT
B4;42C8=34GN55Bc 0E6;4=6C7^f]Ta5A><c F74A4^f]Ta;8:4B

?[P]WPbWeP[dT)" &$%$!&


k8Sk>_TaPcX^]k=P\Tk4A^fbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkk$$ k


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

k kB>AC066A460C4kk kk


k!k18C<0?2>=E4AB8>=C>A>F83Bkk$(&:k$$k
k"k18C<0?8=34GBC>A06450BC5D;;B20=k18NC N>F=4Akkk


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


"bc^aPVT>F=4A;8:4B
UX[cTa>F=4A;8:4B
)NBOTHCASESYOUSEETHATTHESEGMENTSWERESCANNEDUSINGAfast full scan WHICHISJUSTLIKEAFULLTABLE
SCANONTHEINDEXSEGMENTS ANDTHEPRESENCEOFTHEBC>A064OPTIONANDbc^aPVTPREDICATESONTHEFULL
SCANOPERATIONSSHOWSTHATA3MART3CANPREDICATEOFFLOADCANBEATTEMPTED
9OUMAYWONDERWHYWEKEEPSAYING h3MART3CANPREDICATEOFFLOADCANBEattempted.v)TSBECAUSE
THEREARECASESWHERETHE3MART3CANEITHERDOESNTREALLYGETUSEDORISSTARTEDBUTDOESNOTCOMPLETE
DURINGRUNTIME9ES THEEXECUTIONPLANSTRUCTUREISCAPABLEOFUSINGA3MART3CAN BUTWHETHERTHE
3MART3CANISACTUALLYEXECUTEDDEPENDSFIRSTONWHETHERADIRECTPATHREADISCHOSENTOSCANTHE
SEGMENTORNOT7EVETALKEDABOUTTHISEARLIERINTHISCHAPTERANDALSOIN#HAPTER ON3MART3CAN AND
#HAPTER ONPARALLELEXECUTION-OREOVER EVENIFADIRECTPATHREADisCHOSENandA3MART3CANIS
EXECUTED THENSOMEWHEREDURINGORATTHEBEGINNINGOF 3MART3CANEXECUTION ADIFFERENTDECISION
MAYBEMADE4HISDEPENDSONMULTIPLEFACTORS ANDWEWILLCOVERSOMEOFTHEMHERE,UCKILY IN
ADDITIONTOEXAMININGTHEEXECUTIONPLAN WECANLOOKATADDITIONALMETRICSTOSEEWHATSREALLY
HAPPENINGUNDERTHEHOOD
7ECANTRYTOACHIEVEA3MART3CANONAN)NDEX /RGANIZED4ABLE)/4 SEGMENTFIRSTTOSEEHOW
VALUABLETHEADDITIONAL/RACLEMETRICSARE.OTETHATASOFTHECURRENT/RACLEVERSION$ATABASE
#ELL /RACLEHASnotIMPLEMENTED3MART3CANFUNCTIONALITYON)NDEX/RGANIZED4ABLE
SEGMENTSYET SOTHATSWHYTHISISAGOODEXAMPLEFORPRACTICINGUSINGTHE3MART3CAN RELATEDMETRICS
#HECKTHEEXECUTIONPLANSHOWNHEREITISFROMAQUERYUSINGANindex fast full scanONAN)NDEX
/RGANIZED4ABLESINDEXSEGMENT

B4;42C0E6;4=6C7^f]Ta5A><cNX^cF74A4^f]Ta;8:4B

?[P]WPbWeP[dT) &!!##&%(


k8Sk>_TaPcX^]k=P\Tk4A^fbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkk!   k
k kB>AC066A460C4kk kk
k!k8=34G50BC5D;;B20=k?:NCN8>Ck" #("k!   k



#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


!UX[cTa>F=4A;8:4B

5NLIKEINPLANSLISTEDEARLIER THEREISNOBC>A064OPTIONLISTEDINTHEEXECUTIONPLANROWSOURCELINE
ANDTHEREISNObc^aPVTPREDICATE INDICATINGANOPPORTUNITYTOPUSHAFILTERPREDICATETOTHESTORAGE
CELLS4HISPLANISNOTCAPABLEOFUSINGANY3MART3CANFUNCTIONALITYITWILLDOGOODOLDBLOCK)/
,OOKINGATADDITIONAL%XADATAANDCELLMETRICSISNTREALLYNECESSARY ASTHEEXECUTIONPLANITSELFSHOWS
THATITDOESNTEVENUSEA3MART3CAN COMPATIBLEROWSOURCECODEPATH

5NDERSTANDING%XADATA3MART3CAN-ETRICS
AND0ERFORMANCE#OUNTERS
/NCEYOUHAVEMADEAN/RACLEEXECUTIONPLANUSETHESTORAGE AWAREROWSOURCES YOUSTILLCANNOTBE
SUREABOUTWHETHERA3MART3CANREALLYISATTEMPTEDANDWORKSASYOUEXPECT
/NEWAYTODETERMINEWHATSHAPPENINGISJUSTLOOKINGATTHEWAITEVENTSYOURSESSIONISWAITINGFOR
v CPU usage only:4HISSEEMSTOMEANTHATABUFFEREDDATAACCESSISUSEDNOTDIRECT
PATH ASYOUWONTSEE)/WAITEVENTSIFYOUREADTHROUGHBUFFERCACHEANDALLTHE
DATAHAPPENSTOBECACHED
v cell multiblock physical read!PPARENTLYMULTIBLOCKREADSAREUSEDLOOKSLIKEA
FULLSEGMENTSCAN BUTMULTIBLOCKREADWAITSCANBEREPORTEDALSOFOR,/"AND
3ECURE&ILEREADOPERATIONS WHEREINCASEOF,/"S THE,/"CHUNKSIZEISBIGGER
THANTHEBLOCKSIZE/THERWISE SINGLE BLOCKREADSWOULDBEREPORTEDFOR,/"
ACCESS
v cell single block physical read:– !PPARENTLYSINGLEBLOCKREADSAREUSED)FTHESE
ARETHEONLY)/WAITEVENTSYOUSEEANDNOTTOGETHERWITHMULTIBLOCKREADS THEN
ITAPPEARSYOUARENOTUSINGAFULLSEGMENTSCANATALL/FCOURSE SOMETIMESSINGLE
BLOCKREADSSHOWUPDUETOOTHEROPERATIONSINTHEEXECUTIONPLANLIKESOME
INDEXRANGESCAN ORDUETOCHAINEDROWSINDATABLOCKS
)FYOUSEEREGULARhCELLMULTIBLOCKPHYSICALREADvWAITEVENTSINCREMENTEDINYOURSESSION THEN
DIRECTPATHREADSWEREnotUSED4HISMAYHAPPENMAINLYFORSERIALLYEXECUTEDOPERATIONS ASIFYOUARE
USING_PaP[[T[NSTVaTTN_^[XRh,<0=D0;OR;8<8C43 0ARALLEL%XECUTIONSLAVESWILLALWAYSDODIRECTPATH
READSCANS WHICHWILLTHENBEOFFLOADEDANDEXECUTEDAS3MART3CANS.EVERTHELESS WHENYOUAREUSING
THENEWAUTOMATICPARALLELDEGREEPOLICY_PaP[[T[NSTVaTTN_^[XRh,0DC> /RACLEMAYDECIDETOUSE
READSTHROUGHBUFFERCACHEEVENFORPARALLELOPERATIONS
)NADDITIONTOTHESEISSUES THEREAREMOREREASONSANDSPECIALCASESWHERE3MART3CANSJUSTSILENTLY
ARENTUSEDORFALLBACKTOREGULARBLOCK)/MODEˆPOTENTIALLYMAKINGYOURQUERIESANDWORKLOAD
SLOWERTHANYOUDEXPECT,UCKILY/RACLEISVERYWELLINSTRUMENTEDANDWECANMEASUREWHATISREALLY
HAPPENINGINTHEDATABASEANDALSOTHESTORAGECELLS

Exadata Dynamic Performance Counters


7HILETHE/RACLEWAITINTERFACESWAITEVENTSPROVIDEUSCRUCIALINFORMATIONABOUTWHERETHEDATABASE
RESPONSETIMEISSPENT THE%XADATADYNAMICPERFORMANCECOUNTERSDOTAKEUSONESTEPFURTHERAND
EXPLAINWHATKINDOFOPERATIONSORTASKSTHE/RACLEKERNELISPERFORMINGˆANDHOWMANYOFTHEM7AIT


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

EVENTSANDPERFORMANCECOUNTERSCOMPLEMENTEACHOTHERANDSHOULDNTREALLYBEUSEDALONE/RACLE
DYNAMICPERFORMANCECOUNTERSAREALSOKNOWNASEB4BBC0COREBHBBC0CSTATISTICSORCOUNTERS AS
THESEVIEWSAREUSEDFORACCESSINGTHEM

7HENAND(OWTO5SE0ERFORMANCE#OUNTERS
7HENTROUBLESHOOTINGPERFORMANCE ONESHOULDALWAYSSTARTFROMWAITEVENTSAND31,?)$ LEVELACTIVITY
MEASUREMENTSASTHEYKEEPTRACKOFTHEtime, WHICHENDUSERSCAREABOUT ANDIFADDITIONALDETAILIS
NEEDED THENPROCEEDTOPERFORMANCECOUNTERS)FTHESESTANDARDMETRICSARENOTENOUGH THE
PERFORMANCECOUNTERSPROVIDEAVERYDETAILEDINSIGHTINTOWHAT/RACLESESSIONSAREDOING&OREXAMPLE
IFYOURSESSIONSEEMSTOBEBURNINGLOTSOF#05 YOUCANSEEWHETHERTHEsession logical reads ORparse
count (hard)COUNTERSINCREASEFORASESSIONMORETHANNORMALLY/RIFYOUSEESOMEUNEXPECTEDSINGLE
BLOCKREADSDURINGAFULLTABLESCAN YOUCANCHECKWHETHERTHEtable fetch continued row ORSOME
STATISTICLIKEdata blocks consistent reads – undo records applied INCREASES WHICHINDICATEEITHERA
CHAINEDMIGRATEDROWORCONSISTENTREAD#2 BUFFERCLONINGPLUSROLLBACKOVERHEAD!NOTHERUSEFUL
METRICISuser commits WHICHGIVESYOUANUNDERSTANDINGOFHOWMANYDATABASETRANSACTIONSAREDONE
INSIDEANINSTANCEORINCHOSENSESSIONS 3OTHENEXTTIMEASESSIONSEEMSTOBEWAITINGFORAlog file
sync WAITEVENT YOUCANCHECKITSuser commitsCOUNTERVALUEFROMEB4BBC0C TOSEEHOWFREQUENTLYTHIS
SESSIONISCOMMITTINGITSWORK4HEFOLLOWINGEXCERPTISJUSTASMALLEXAMPLEOFTHEKINDOFSTATISTICS
/RACLEPROVIDES
B@;-B4;42C]P\TeP[dT5A><ebhbbcPcF74A4]P\T[XZT_PabT*
=0<4E0;D4

_PabTcX\TR_d $#(%
_PabTcX\TT[P_bTS (% (#
_PabTR^d]cc^cP[ $" '
_PabTR^d]cWPaS" 
_PabTR^d]cUPX[daTb($"%
_PabTR^d]cSTbRaXQT# %
$YNAMICPERFORMANCECOUNTERSPROVIDEIMPORTANTCLUES WHICHALLOWUSTODIRECTOUR
TROUBLESHOOTINGEFFORTSBETTER.OTETHATTOOLSLIKE3TATSPACKAND!72REPORTSRELYHEAVILYONEBHBBC0C
COUNTERS4HEYJUSTSTOREVALUESFROMTHESEEVER INCREASINGNUMBERSSINCEINSTANCESTART INTHEIR
REPOSITORYTABLES3OWHENEVERYOURUNA3TATSPACK!72REPORT JUSTDELTASBETWEENVALUESINCHOSEN
SNAPSHOTSAREREPORTED3TATSPACKAND!72REPORTSAREALLABOUTSHOWINGYOUDELTASBETWEENEBHBBC0C
ANDOTHERVIEWS NUMBERSFROMDIFFERENTSNAPSHOTSOFTIME
/RACLEADDSNEWCOUNTERSINTOEVERYNEWDATABASEVERSION3OMETIMESNEWDEBUG COUNTERSARE
INTRODUCEDEVENWITHNEWPATCHSETS/RACLEHASDIFFERENTPERFORMANCECOUNTERSIN
EBHBBC0C
B@;-B4;42C2>D=C5A><ebhbbcPc*

2>D=C

%!'
4HATSALOTOFINFORMATION


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

7HILETHEEBHBBC0CVIEWISFINEFORMONITORINGANDTROUBLESHOOTINGINSTANCE WIDEPERFORMANCE
LIKE!72AND3TATSPACKREPORTSDO ITSPROBLEMISTHATYOUCANTTROUBLESHOOTASINGLESESSIONS
PROBLEMWITHSYSTEM WIDESTATISTICS WHICHAGGREGATEALLYOURPOTENTIALLYTHOUSANDSOF SESSIONS
METRICSTOGETHERINTOONESETOFCOUNTERS4HATSWHY/RACLEALSOHASEB4BBC0C WHICHKEEPSTRACKOFALL
THESE COUNTERSFOREACHSESSIONSEPARATELY%VERYSINGLESESSIONINTHEINSTANCEHASITSOWN
PERFORMANCECOUNTERS KEEPINGTRACKOFONLYITSACTIVITY4HISISAGOLDMINE ASWHENONLYAFEWSESSIONS
ORUSERS HAVEAPROBLEMINTHEINSTANCE WECANMONITORONLYTHEIRACTIVITYANDWONTBEDISTRACTEDBY
ALLTHEOTHERUSERSNOISEINTHEDATABASE
!SSAIDEARLIER EBHBBC0CACCUMULATESINSTANCE WIDEPERFORMANCECOUNTERSTHEYSTARTFROMZERO
ANDONLYINCREASETHROUGHOUTTHEINSTANCELIFETIME-OSTOFTHEEB4BBC0CCOUNTERSALWAYSINCREASE
CUMULATIVESTATISTICS WITHSOMEEXCEPTIONS LIKElogons currentANDsession pga/uga memory)NANY
CASE WHENEXAMININGTHECOUNTERVALUES YOUSHOULDNOTJUSTLOOKATTHEcurrentVALUEOFACOUNTER
ESPECIALLYIFYOURSESSIONHASBEENLOGGEDONFORAWHILE4HEPROBLEMISTHATEVENIFYOUSEEABIG
LOOKINGNUMBERFORSOMECOUNTERINEB4BBC0COFALONG RUNNINGCONNECTIONPOOLSSESSION HOWDOYOU
KNOWWHATPORTIONOFTHATWASINCREMENTEDORADDEDTODAY RIGHTNOW WHENYOUHAVETHEPROBLEM AS
OPPOSEDTOAFEWWEEKSAGOWHENTHATSESSIONLOGGEDON)NOTHERWORDS WHENTROUBLESHOOTINGA
PROBLEMHAPPENINGRIGHTNOW YOUSHOULDLOOKATPERFORMANCEFORRIGHTNOWONLYANDASIMILARRULE
APPLIESWHENTROUBLESHOOTINGISSUESOFTHEPAST 
4HISISWHYCOAUTHOR4ANEL0ODERHASWRITTENALITTLEHELPERTOOLCALLED/RACLE3ESSION3NAPPER
WHICHALLOWSITSUSERTOEASILYDISPLAYTHESESSIONSCURRENTACTIVITYFROMEB4BBC0CANDVARIOUSOTHER
SESSIONLEVELPERFORMANCEVIEWS!NIMPORTANTTHINGABOUTTHISTOOLISTHATITSJUSTANANONYMOUS
0,31,BLOCK PARSEDONTHEFLYˆITDOESNTREQUIREANYINSTALLATIONNOR$$,PRIVILEGESWHATSOEVER4HE
CURRENT3NAPPERVERSIONISAVAILABLEONLINEAT4g_Tac>aPR[T4gPSPcPR^\&OLLOWINGISONEEXAMPLEOF
HOWTORUN3NAPPERTOMEASURE3)$SACTIVITYFORASINGLE SECONDINTERVAL 2EADTHE3NAPPER
HEADERFORINSTRUCTIONSANDDETAILEDDOCUMENTATION
B@;-/b]P__TaPbWbcPcb$$ ##"
BP\_[X]VB83#"fXcWX]cTaeP[$bTR^]SbcPZX]V b]P_bW^cb

BTbbX^]B]P__Tae"$!QhCP]T[?^STa/4!B=Wcc_)cTRWT!b]R^\


B83DB4ACH?4BC0C8BC82734;C0

#"C0=4;BC0Cb
bTbbX^][^VXRP[aTPSb "#<
#"C0=4;BC0CdbTa8>fPXccX\T# 
#"C0=4;BC0C]^]XS[TfPXccX\T# 
#"C0=4;BC0C]^]XS[TfPXcR^d]c' Z
#"C0=4;BC0C__WhbXRP[aTPSc^cP[8>aT`dTbcb $"Z
#"C0=4;BC0C_WhbXRP[aTPSc^cP[\d[cXQ[^RZaT`dTbcb $"Z
#"C0=4;BC0C__WhbXRP[aTPSc^cP[QhcTb "6
#"C0=4;BC0CRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTb %<
#"C0=4;BC0CR^]bXbcT]cVTcb "$<
#"C0=4;BC0CR^]bXbcT]cVTcbSXaTRc "$<
#"C0=4;BC0C_WhbXRP[aTPSb "$<
#"C0=4;BC0C_WhbXRP[aTPSbSXaTRc "$<
#"C0=4;BC0C_WhbXRP[aTPS8>aT`dTbcb $!Z
#"C0=4;BC0C_WhbXRP[aTPSQhcTb !6
#"C0=4;BC0CUX[TX^fPXccX\T$"&"Z
#"C0=4;BC0CRT[[_WhbXRP[8>QhcTbT[XVXQ[TU^a_aTSXRPcT^UU[^PS "6


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

#"C0=4;BC0CRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbaTcda]TSQhb\PacbRP] %<
#"C0=4;BC0CRT[[Q[^RZb_a^RTbbTSQhRPRWT[PhTa "$<
#"C0=4;BC0CRT[[Q[^RZb_a^RTbbTSQhcg][PhTa "$<
#"C0=4;BC0CRT[[Q[^RZb_a^RTbbTSQhSPcP[PhTa "$<
#"C0=4;BC0CRT[[Q[^RZbWT[_TSQh\X]bR]^_cX\XiPcX^] "$<
#"C0=4;BC0CRT[[8>d]R^\_aTbbTSQhcTb $6
#"C0=4;F08CRT[[b\PaccPQ[TbRP]#&b
4]S^UBcPcbb]P_ T]S,! #" ()&)"%bTR^]Sb,$


0RcXeTkB@;N83k4E4=CkF08CN2;0BB

(
($kQ&iUcWPbQQckRT[[b\PaccPQ[TbRP]kDbTa8>
$kQ&iUcWPbQQck>=2?Dk>=2?D

4]S^U0B7b]P_ T]S,! #" ()&)"%bTR^]Sb,$$bP\_[TbNcPZT],#!
4HISOUTPUTSHOWSTHATDURINGTHE SECONDMONITORINGTIME THESESSIONDIDMILLIONLOGICAL
READS ANDITREAD'"OFDATAUSINGABOUTMULTIBLOCKREAD)/REQUESTSLARGENUMBERSARE
CONVERTEDINTOHUMANFRIENDLYAPPROXIMATIONSHERE BUT3NAPPERCANALSOPRINTOUTEXACTFIGURES 
4HENEXTEXAMPLESHOWSHOWYOUCANUSE3NAPPERONAPARALLELQUERY.OTICETHEqc=403 OPTION
WHICHTELLS3NAPPERTOCAPTURESTATSFORALL08SLAVESOF1UERY#OORDINATOR3)$!LSONOTICETHE
bX]R[dSTOPTION WHICHALLOWSYOUTOLISTONLYTHEMETRICSOFINTERESTUSINGAREGULAREXPRESSION
B@;-/b]P__TaPbWbcPcbVPcWTa,bbbX]R[dST,_WhbXRP[c^cP[QhcTbkRT[[bRP]$ ``R,#"
BP\_[X]VB83`R,#"fXcWX]cTaeP[$bTR^]SbcPZX]V b]P_bW^cb

BTbbX^]B]P__Tae"$!QhCP]T[?^STa/4!B=Wcc_)cTRWT!b]R^\


B83DB4ACH?4BC0C8BC82734;C0

 !C0=4;BC0C__WhbXRP[aTPSc^cP[QhcTb!!'%6
 !C0=4;BC0CRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbaTcda]TSQhb\PacbRP]#  %Z
 !C0=4;BC0CRT[[bRP]b!
$$$C0=4;BC0C_WhbXRP[aTPSc^cP[QhcTb"$6
$$C0=4;BC0CRRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbaTcda]TSQhb\PacbRP]###"$#Z
$$C0=4;BC0CRT[[bRP]b"
 "C0=4;BC0C_WhbXRP[aTPSc^cP[QhcTb!(&6
 "C0=4;BC0CRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbaTcda]TSQhb\PacbRP]#"!!(Z
 "C0=4;BC0CR RT[[bRP]b"
 $(C0=4;BC0C_WhbXRP[aTPSc^cP[QhcTb!%"6
 $(C0=4;BC0CRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbaTcda]TSQhb\PacbRP]"' "&Z
 $(C0=4;BC0CRT[[bRP]b!
4]S^UBcPcbb]P_ T]S,! #" ()$&)"$bTR^]Sb,%



#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3


0RcXeTkB@;N83k4E4=CkF08CN2;0BB

"("kQ#ZeW"b`bccZfkRT[[b\PaccPQ[TbRP]kDbTa8>
&kQ#ZeW"b`bccZfk>=2?Dk>=2?D

4]S^U0B7b]P_ T]S,! #" ()$&)"$bTR^]Sb,$bP\_[TbNcPZT],##
4HISOUTPUTSHOWSTHATTHEREAREAPPARENTLYFOURDIFFERENT08SLAVESESSIONSNOTICETHE3)$COLUMN THAT
HAVEDONEPHYSICALREADSDURINGTHE SECOND3NAPPERRUN4HEphysical read total bytesTELLSUSTHAT
EACHSLAVEHASREADBETWEENAND'"WORTHOFDATABLOCKSFROMDATAFILESDURINGTHE SECOND
3NAPPERRUN USINGCELLSMARTSCAN BECAUSETHEcell scansSTATISTICHASINCREASEDFOREACHSLAVE
-OREOVER THEFACTTHATcell physical I/O interconnect bytes returned by smart scanISALSONON ZEROMEANS
THATACELLSMARTSCANWASUSEDANDRT[[baePROCESSESRETURNEDSOMEDATATOTHEDATABASELAYER.OTE
THATONLYAROUNDn+"OFDATAWASRETURNEDTOTHEDATABASELAYER WHILECELLSSCANNEDTHROUGH
GIGABYTESOFBLOCKSFORTHEIRhMASTERv08SLAVESESSIONS4HISISTHE3MART3CANATITSBESTˆPARALLELBRUTE
FORCESCANNINGINCELLSATEXTREMESPEEDSˆANDRETURNONLYASMALLPROPORTIONOFMATCHINGDATATOTHE
DATABASELAYER

4HE-EANINGAND%XPLANATIONOF%XADATA0ERFORMANCE#OUNTERS
.OW ITSTIMETOEXPLORETHEmeaningOFPERFORMANCECOUNTERS.OMATTERHOWPRETTYTHECHARTSOR
PICTURESAPERFORMANCETOOLDRAWSUSINGTHESEMETRICS IFYOUDONTKNOWWHATTHEYACTUALLYMEAN THEY
WILLBEUSELESSFORTROUBLESHOOTING)NTHISBOOKWEWILLCOVERMOSTLY%XADATA SPECIFICSTATISTICSANDAFEW
CLOSELYRELATEDONES9OUCANFINDMOREINFOABOUTSOMECOMMONPERFORMANCECOUNTERSIN!PPENDIX%
h3TATISTICS$ESCRIPTIONS vINOracle Database Reference guide 11g Release 2 (11.2) CURRENTLYLOCATEDAT
Wcc_)S^f][^PS^aPR[TR^\S^RbRS4 #&!N bTaeTa !T '!bcPcbWc\

(ERESASCRIPTTHATLISTSALLSTATISTICSRELATEDTOSTORAGECELLSFROMebcPc]P\T WITHTHESTATISTICCLASS
WHICHINDICATESTHEPURPOSESFORWHICH/RACLEKERNELENGINEERSHAVEEXPECTEDTOUSETHESECOUNTERS
B@;-B4;42C
!]P\T
"CA8<
#20B4F74=18C0=3R[Pbb , C74=DB4A4=3kk
$20B4F74=18C0=3R[Pbb!,!C74=A43>4=3kk
%20B4F74=18C0=3R[Pbb#,#C74=4=@4=3kk
&20B4F74=18C0=3R[Pbb','C74=202744=3kk
'20B4F74=18C0=3R[Pbb %, %C74=>B34?4=3kk
(20B4F74=18C0=3R[Pbb"!,"!C74=?0AG4=3kk
 20B4F74=18C0=3R[Pbb%#,%#C74=B@;C4=3kk
 20B4F74=18C0=3R[Pbb !', !'C74=341D64=3
 !R[PbbN]P\T
 "5A><
 #e
ebcPc]P\T
 $F74A4
 %]P\T;8:4RT[[
 &>A34A1H
 ']P\T
B@;-



#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

=0<42;0BBN=0<4

RT[[2Db_a^RTbbTSU^aR^\_aTbbTSB@;C
RT[[2Db_a^RTbbTSU^ad]R^\_aTbbTSB@;C
RT[[2DbbT]cR^\_aTbbTSB@;C
RT[[2DbbT]cWTPS_XTRTB@;C
RT[[2DbbT]cd]R^\_aTbbTSB@;C
RT[[8>d]R^\_aTbbTSQhcTbB@;C
RT[[Q[^RZbWT[_TSQhR^\\XcRPRWTB@;C
RT[[Q[^RZbWT[_TSQh\X]bR]^_cX\XiPcX^]B@;C
RT[[Q[^RZb_a^RTbbTSQhRPRWT[PhTa341D6
RT[[Q[^RZb_a^RTbbTSQhSPcP[PhTa341D6
RT[[Q[^RZb_a^RTbbTSQhX]STg[PhTa341D6
RT[[Q[^RZb_a^RTbbTSQhcg][PhTa341D6
RT[[R^\\XcRPRWT`dTaXTbB@;C
RT[[U[PbWRPRWTaTPSWXcb20274
RT[[X]STgbRP]bB@;C
RT[[]d\PRcXeTb\Pac8>bTbbX^]bB@;C
RT[[]d\UPbcaTb_^]bTbTbbX^]bB@;C
RT[[]d\UPbcaTb_^]bTbTbbX^]bR^]cX]dX]Vc^b\PacbRP]B@;C
RT[[]d\b\Pac8>bTbbX^]bX]aSQ\bQ[^RZ8>SdTc^QXV_Ph[^PSB@;C
RT[[]d\b\Pac8>bTbbX^]bX]aSQ\bQ[^RZ8>SdTc^]^RT[[\T\B@;C
RT[[]d\b\Pac8>bTbbX^]bX]aSQ\bQ[^RZ8>SdTc^dbTaB@;C
RT[[]d\b\Pac8>bTbbX^]bdbX]V_PbbcWad\^STSdTc^RT[[baeB@;C
RT[[]d\b\Pac8>bTbbX^]bdbX]V_PbbcWad\^STSdTc^cX\Ti^]TB@;C
RT[[]d\b\Pac8>bTbbX^]bdbX]V_PbbcWad\^STSdTc^dbTaB@;C
RT[[]d\b\PacUX[TRaTPcX^]bTbbX^]bdbX]VaSQ\bQ[^RZ8>\^STB@;C
RT[[_WhbXRP[8>QhcTbT[XVXQ[TU^a_aTSXRPcT^UU[^PSB@;C
RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg20274
RT[[_WhbXRP[8>QhcTbbPeTSSdaX]V^_cX\XiTSA<0=UX[TaTbc^aTB@;C
RT[[_WhbXRP[8>QhcTbbPeTSSdaX]V^_cX\XiTSUX[TRaTPcX^]B@;C
RT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbB@;C
RT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbaTcda]TSQhb\PacbRP]B@;C
RT[[bRP]bB@;C
RT[[bX\d[PcTS_WhbXRP[8>QhcTbT[XVXQ[TU^a_aTSXRPcT^UU[^PSB@;C341D6
RT[[bX\d[PcTS_WhbXRP[8>QhcTbaTcda]TSQh_aTSXRPcT^UU[^PSB@;C341D6
RT[[b\Pac8>P[[^RPcTS\T\^ahQhcTbB@;C
RT[[b\Pac8>\T\^ahQhcTbWf\B@;C
RT[[b\Pac8>bTbbX^]RPRWTWPaS\XbbTbB@;C
RT[[b\Pac8>bTbbX^]RPRWTWXcbB@;C
RT[[b\Pac8>bTbbX^]RPRWTWf\B@;C
RT[[b\Pac8>bTbbX^]RPRWT[^^Zd_bB@;C
RT[[b\Pac8>bTbbX^]RPRWTb^Uc\XbbTbB@;C
RT[[b\Pac8>bTbbX^]bWf\B@;C
RT[[caP]bPRcX^]bU^d]SX]R^\\XcRPRWTB@;C
RWPX]TSa^fb_a^RTbbTSQhRT[[B@;C
RWPX]TSa^fbaTYTRcTSQhRT[[B@;C
RWPX]TSa^fbbZX__TSQhRT[[B@;C

7ITHASIMILARQUERY WECANLISTALLTHE%XADATA(YBRID#OLUMNAR#OMPRESSION%(## STATISTICS BUT
WEWILLNOTCOVERTHOSEINTHISCHAPTER


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

=0<42;0BBN=0<4

47220]P[hiT2Db3TR^\_aTbbTS341D6
47220]P[hiTa2P[[b341D6
47220aRWXeT2Db2^\_aTbbTS341D6
47220aRWXeT2Db3TR^\_aTbbTS341D6
47222DA^f?XTRTb2^\_aTbbTS341D6
47222Db2^\_aTbbTS341D6
47222Db3TR^\_aTbbTS341D6
47222WTRZ2Db3TR^\_aTbbTS341D6
47222^[d\]b3TR^\_aTbbTS341D6
47222^\_aTbbTS;T]VcW2^\_aTbbTS341D6
47222^\_aTbbTS;T]VcW3TR^\_aTbbTS341D6
47223<;2Db3TR^\_aTbbTS341D6
47223TR^\_aTbbTS;T]VcW2^\_aTbbTS341D6
47223TR^\_aTbbTS;T]VcW3TR^\_aTbbTS341D6
47223d\_2Db3TR^\_aTbbTS341D6
4722=^a\P[BRP]2Db3TR^\_aTbbTS341D6
4722?XTRTb1dUUTaTSU^a3TR^\_aTbbX^]341D6
4722@dTah7XVW2Db2^\_aTbbTS341D6
4722@dTah7XVW2Db3TR^\_aTbbTS341D6
4722@dTah;^f2Db2^\_aTbbTS341D6
4722@dTah;^f2Db3TR^\_aTbbTS341D6
4722A^fXS2Db3TR^\_aTbbTS341D6
4722A^fb2^\_aTbbTS341D6
4722A^fb=^c2^\_aTbbTS341D6
4722C^cP[2^[d\]bU^a3TR^\_aTbbX^]341D6
4722C^cP[?XTRTbU^a3TR^\_aTbbX^]341D6
4722C^cP[A^fbU^a3TR^\_aTbbX^]341D6
4722CdaQ^BRP]2Db3TR^\_aTbbTS341D6
!LLTHESTATISTICSSTARTINGFROMcellARE ASTHENAMESAYS RELATEDTOSTORAGECELLS4HESESTATSAREMEASURED
ANDMAINTAINEDBYCELLSTHEMSELVESANDTHENSENTBACKTOTHEDATABASESESSIONSDURINGANYINTERACTION
OVER)$"PROTOCOL%VERYDATABASESESSIONRECEIVESTHECELLSTATISTICSALONGWITHTHEREPLIESFROMTHEIR
CORRESPONDINGCELLSESSIONSANDTHENUPDATESTHERELEVANTDATABASE6VIEWSWITHIT4HISISHOWTHE
/RACLEDATABASELAYERHASINSIGHTINTOWHATSGOINGONINTHEhBLACKBOXvOFACELL LIKETHEREALNUMBEROF
)/OPERATIONSDONE THENUMBEROFCELLFLASHCACHEHITS ANDSOON.OTETHATTHEREAREAFEWchained
rows […] cellSTATISTICS WHICHAPPARENTLYUSEADIFFERENTNAMINGCONVENTION HAVINGTHEhCELLvINTHEEND
OFTHESTATISTICNAME

%XADATA0ERFORMANCE#OUNTER2EFERENCE
4HISSECTIONEXPLAINSSOMEOFTHEMOREIMPORTANTANDINTERESTINGSTATISTICSINTHISCHAPTER ALTHOUGHIF
YOUARELUCKY YOUWONTHAVETODIGDOWNTHISDEEPINYOURTROUBLESHOOTINGWAITEVENTSANDTHE31,
MONITORINGFEATUREAREGOODENOUGHFORMOSTBASICTROUBLESHOOTINGANDPERFORMANCEOPTIMIZATION
.EVERTHELESS UNDERSTANDINGWHATSBEHINDTHESESTATISTICSANDBEHAVIORWILLGIVEYOUFURTHERINSIGHT
INTO%XADATAINTERNALSANDENABLEYOUTOTROUBLESHOOTUNUSUALPERFORMANCEPROBLEMSMOREEFFECTIVELY
7ELLEXPLAINTHESTATSINALPHABETICALORDER TOMAKEITEASIERTOUSETHISSECTIONASAREFERENCE


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

cell blocks helped by commit cache


$URINGA3MART3CANINTHESTORAGECELL THENORMALDATACONSISTENCYRULESSTILLNEEDTOBEAPPLIED
SOMETIMESWITHHELPOFUNDODATA9ES CONSISTENTREADGUARANTEESMUSTWORKALSOFOR3MART3CANS"UT
THE3MART3CANWORKSENTIRELYINTHESTORAGECELLS WHEREITDOESNOTHAVEACCESSTOANYUNDODATAINTHE
DATABASEINSTANCESBUFFERCACHES!NDREMEMBERTHATACELLNEVERTALKSTOANYOTHERCELLSBYDESIGN SOIT
WOULDBEUNABLETOREADTHEUNDODATAFROMUNDOSEGMENTSSTRIPEDACROSSMANYCELLSTOO3O CONSISTENT
READBUFFERCLONINGANDROLLBACKS WHENEVERNEEDED WOULDHAVETOBEDONEINSIDETHEDATABASELAYER
7HENEVERTHE3MART3CANHITSAROW WHICHSTILLHASITSLOCKBYTESETTHEROWBLOCKHASNTBEENCLEANED
OUT ITWOULDTEMPORARILYHAVETOSWITCHINTOBLOCK)/MODEANDSENDTHEENTIREDATABLOCKBACKTOTHE
DATABASELAYERFORNORMALCONSISTENTREADPROCESSINGˆWITHTHEHELPOFUNDODATAAVAILABLETHERE
.OTETHATWHENABLOCKISCLEANEDOUTCORRECTLYLOCKBYTESCLEARED ANDITSCLEANOUT3#.INTHE
BLOCKHEADERISFROMANEARLIER3#.THANTHEQUERYSTARTTIME3#.snapshot SCN THENTHECELLKNOWS
THATAROLLBACKOFTHATBLOCKWOULDNOTBENEEDED)FTHELATESTCHANGETOTHATBLOCKHAPPENEDEARLIER
THANTHEQUERYSTART THENTHEBLOCKIMAGEINTHECELLISVALID AGOODENOUGHBLOCKTOSATISFYTHEQUERY
WITHTHEGIVEN3#.(OWDOESTHECELLKNOWTHESTARTING3#.OFAQUERYEXECUTEDINTHEDATABASELAYER
4HATISTHETASKOFTHESTORAGE AWAREROWSOURCESINTHEEXECUTIONPLANS WHICHCOMMUNICATETHE3#.TO
CELLSOVERI$"WHENSETTINGUP3MART3CANSESSIONSFORTHEMSELVES
.OW WHENSOMEOFTHEROWSDOHAVENONZEROLOCKBYTESINTHEBLOCKORWHENTHECLEANOUT3#.INA
BLOCKHEADERHAPPENSTOBEHIGHERTHANTHEQUERYSSNAPSHOT3#. THENTHECELLSCANNOTDETERMINETHE
VALIDITYOFTHEBLOCKDATAVERSIONTHEMSELVESANDWOULDNEEDTOSHIPTHEBLOCKBACKTOTHEDATABASE
LAYERFORREGULAR NON 3MART3CANPROCESSING4HISWOULDCONSIDERABLYSLOWDOWNTHE3MART3CAN
PROCESSING IFSUCHCHECKHADTOBEDONEFORMANYLOCKEDROWSANDNOTCLEANED OUTBLOCKS
(OWEVER THEREISANOPTIMIZATIONTHATHELPSTOREDUCETHENUMBEROFFALLBACKSTOBLOCK)/
PROCESSINGINTHEDATABASELAYER7HENEVERA3MART3CANFINDSALOCKEDROWDURINGASEGMENTSCAN IT
WILLCHECKWHICHTRANSACTIONLOCKEDTHATROW4HISCANEASILYBEDONEBYREADINGTHETRANSACTIONS)4,
ENTRYINTHECURRENTDATABLOCKHEADER WHERETHELOCKEDROWSLOCKBYTEPOINTS.OTETHATBITMAPINDEX
SEGMENTBLOCKSAND(##COMPRESSEDBLOCKSDONTHAVEALOCKBYTEFOREACHSINGLEROWINTHEBLOCK BUT
THEIDEAREMAINSTHESAMEˆ/RACLEISABLETOFINDOUTTHETRANSACTION)$OFTHELOCKEDROWS FROMTHE
BLOCKATHANDITSELF.OW THE3MART3CANCANSENDTHATTRANSACTION)$BACKTOTHEDATABASELAYERTOTHE
DATABASESESSIONOWNINGTHECELL3MART3CANSESSION ANDASKTHEDATABASESESSIONTOCHECKWHETHERTHAT
TRANSACTIONHASALREADYCOMMITTEDORNOT)FTHISLOCKINGTRANSACTIONHASNOTCOMMITTEDYET THE3MART
3CANFALLSBACKTOTHEBLOCK)/MODEFORTHATBLOCKANDTHEDATABASELAYERWILLHAVETOGOTHROUGHTHE
NORMALCONSISTENTREADBUFFERCLONINGROLLBACKMECHANISMANDTHERESNOWORKAROUNDFORTHAT)FTHE
TRANSACTIONhasALREADYCOMMITTED BUTHASLEFTTHELOCKBYTESNOTCLEANEDOUTINSOMEBLOCKSTHISDOES
USUALLYHAPPENFORLARGE$-,S THENTHE3MART3CANDOESNOTHAVETOFALLBACKTOBLOCK)/ANDANIN
DATABASE CONSISTENTREADMECHANISM)TKNOWSTHATTHISROWISNOTREALLYLOCKEDANYMORE ASTHELOCKING
TRANSACTIONHASCOMMITTEDALREADY EVENTHOUGHTHELOCKBYTEISSTILLINPLACE
!LLOFTHATTOREADASINGLELOCKEDROW7HEN3MART3CANNING YOUAREPROBABLYSCANNINGTHROUGH
MILLIONSORBILLIONSOFROWS ANDMANYOFTHESEROWSMAYSTILLHAVETHEIRLOCKBYTESSET3O YOUDONTWANT
THE3MART3CANTOCOMMUNICATEWITHTHEDATABASELAYEREVERYSINGLETIMEITHITSANOTHERLOCKEDROW3O
/RACLECELLSCANcacheTHEINFORMATIONABOUTTRANSACTIONSTATUSESINANIN MEMORYSTRUCTURECALLED
hCOMMITCACHEv)TSPROBABLYJUSTANIN MEMORYHASH TABLE ORGANIZEDBYTRANSACTION)$ ANDITKEEPS
TRACKOFWHICHTRANSACTIONSARECOMMITTEDANDWHICHARENOT7HENTHECELL3MART3CANSEESALOCKED
ROW ITWILLEXTRACTTHETRANSACTION)$FROMTHE)4,SECTIONOFTHEDATABLOCK ANDCHECKSWHETHERTHERES
ANYINFOABOUTTHATTRANSACTIONINTHECOMMITCACHE4HISCHECKWILLINCREMENTTHESTATISTICcell commit
cache queriesBYONE)FTHEREISNOSUCHTRANSACTIONINTHECOMMITCACHE THENTHE3MART3CANhASKSvTHE
STATUSOFTHISTRANSACTIONFROMTHEDATABASELAYERANDSTORESCACHES THERESULTINTHECOMMITCACHE
)DEALLYEVERYTRANSACTIONSTATUSISFETCHEDINTOTHECACHEONLYONCE ANDALLSUBSEQUENTCHECKSWILLBE
SATISFIEDFROMTHECOMMITCACHE3OEVERYTIMETHE3MART3CANOPENSANEWBLOCKANDREALIZESTHATTHERE


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

ARESOMEROWSLOCKEDBUTMANAGESTOAVOIDHAVINGTOTALKTOTHEDATABASELAYERTHANKSTOTHECOMMIT
CACHE OURSTATISTICATHAND cell blocks helped by commit cache WOULDBEUPDATEDBYONE
3EEINGTHISSTATISTICGROWING WHENYOURSESSIONSAREDOINGA3MART3CAN INDICATESTHATTHECELLS
HAVESOMEOVERHEADDUETOCHECKINGWHETHERLOCKEDROWSAREREALLYSTILLLOCKED BUTTHANKFULLYTHE
COMMITCACHEELIMINATESTHENEEDFORCOMMUNICATINGWITHTHEDATABASELAYERREPEATEDLY7ITHOUTTHIS
OPTIMIZATION THEWHOLE3MART3CANWOULDGETSLOWERASITMUSTREPEATEDLYINTERACTWITHTHEDATABASE
LAYER9OUWOULDALSOSEEMORELOGICAL)/BEINGDONEATTHEDATABASELAYERSEETHESTATISTICSSTARTING
WITHconsistent gets from cache ASOPPOSEDTOONLYASINGLE,)/PERSEGMENTFORREADINGTHEEXTENT
LOCATIONSANDNUMBEROFBLOCKSUNDERTHE(IGH7ATER-ARKOUTFROMTHESEGMENTHEADER

 .OTE!SIMILAROPTIMIZATIONACTUALLYEXISTSALSOINTHEDATABASELAYER ANDINNON %XADATADATABASES/RACLE


CANCACHETHECOMMITTEDTRANSACTIONINFOINTHEDATABASESESSIONSPRIVATEMEMORY SOITWONTHAVETOPERFORM
BUFFERGETSONTHEUNDOSEGMENTHEADERWHENHITTINGMANYLOCKEDROWS7HENEVERASESSIONCACHESACOMMITTED
TRANSACTIONSSTATEINMEMORY ITINCREMENTSTHECommit SCN cachedSTATISTICINITSEB4BBC0CARRAY7HENEVERIT
DOESALOOKUPFROMTHATCACHE ITINCREMENTSTHECached Commit SCN referenced STATISTIC

)FYOUARENOTFAMILIARWITHTHEDELAYEDBLOCKCLEANOUTMECHANISMIN/RACLE YOUMIGHTBE
WONDERINGHOWTHERECANBEROWSWITHTHEIRLOCKBYTESSTILLSET WHENTHETRANSACTIONHASALREADY
COMMITTED4HISISHOW/RACLEISDIFFERENTFROMMOSTOTHERMAINSTREAMCOMMERCIAL2$"-3PRODUCTS
/RACLEDOESNTHAVETOKEEPTHEBLOCKSWITHNONCOMMITTEDROWSCACHEDINMEMORY$"72ISFREETO
WRITETHEMOUTTODISKANDRELEASETHEMEMORYFOROTHERDATABLOCKS.OW WHENCOMMITTINGTHE
TRANSACTION ITWOULDNTBEGOODTOREADALLTHETRANSACTIONSBACKFROMTHEDISKJUSTTOCLEANUPTHELOCK
BYTES)FTHEREAREMANYSUCHBLOCKS THENYOURCOMMITMIGHTTAKEAGES)NSTEAD /RACLEJUSTMARKSTHE
TRANSACTIONCOMPLETEINITSUNDOSEGMENTHEADERSLOT!NYFUTUREBLOCKREADERSCANJUSTCHECKWHETHER
THETRANSACTIONINTHATUNDOSEGMENTHEADERSLOTISSTILLALIVEORNOT)FYOUPERFORMBLOCK)/TOREADTHE
DATABLOCKSTOTHEDATABASELAYERLATERON THENTHEREADINGSESSIONWOULDCLEANUPTHEBLOCKCLEARTHE
LOCKBYTESOFROWSMODIFIEDBYCOMMITTEDTRANSACTIONS SONOFURTHERTRANSACTIONSTATUSCHECKSWOULD
BENEEDEDINFUTUREREADS(OWEVER STORAGECELLSDONOTPERFORMBLOCKCLEANOUTS ASCELLSDONTCHANGE
DATABLOCKS4HISISBECAUSEDATABASEBLOCKMODIFICATIONSREQUIREWRITINGOFREDOOPERATIONS BUTHOW
WOULDACELLWRITETOAREDOLOGFILETHATISMANAGEDANDSTRIPEDOVERMANYCELLSATTHEDATABASELAYER
ALREADY
.OTETHATFORSMALLTRANSACTIONS WHICHHAVENTMODIFIEDTOOMANYBLOCKSANDWHERETHEBLOCKSARE
STILLINBUFFERCACHE /RACLECANPERFORMBLOCKCLEANOUTRIGHTDURINGTHECOMMITTIME!LSO THEISSUES
JUSTDISCUSSEDDONOTAPPLYTOSUCHDATABASESDATAWAREHOUSESUSUALLY WHERETABLESARELOADEDWITH
DIRECTPATHLOADINSERTSANDINDEXPARTITIONSAREBUILTAFTERTHETABLEPARTITIONSARELOADED BECAUSEIN
THECASEOFDIRECTLOADS THETABLEROWSARENOTLOCKEDINTHENEWLYFORMATTEDTABLEBLOCKSTHESAME
APPLIESTOINDEXENTRIESINLEAFBLOCKSIFANINDEXISCREATEDAFTERTHEDATALOAD 

cell blocks helped by minscn optimization


%XADATACELLSERVERHASANOTHEROPTIMIZATIONDESIGNEDTOIMPROVECONSISTENTREADEFFICIENCYEVENMORE
)TSCALLEDTHE-INIMUM!CTIVE3#.OPTIMIZATIONANDITKEEPSTRACKOFTHELOWEST3#.OFANYSTILLACTIVE
UNCOMMITTED TRANSACTIONINTHEDATABASE4HISALLOWSUSTOEASILYCOMPARETHE3#.INTHE)4,ENTRIES
OFTHELOCKINGTRANSACTIONSWITHTHELOWEST3#.OFTHEhOLDESTvACTIVETRANSACTIONINTHEDATABASE!STHE


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

/RACLEDATABASEISABLETOSENDTHIS-IN3#.INFOTOTHECELLWHENSTARTINGA3MART3CANSESSION THECELLS
CANAVOIDHAVINGTOTALKTOTHEDATABASELAYERWHENEVERTHEKNOWNMINIMUMACTIVE3#.PASSEDTOTHE
CELLISHIGHERTHANTHE3#.INTHETRANSACTIONS)4,ENTRYINTHEBLOCK7HENEVERTHE3MART3CAN
PROCESSESABLOCKANDFINDSALOCKEDROWWITHACTIVETRANSACTIONINTHE)4,SLOTINITBUTREALIZESTHATTHE
TRANSACTIONMUSTBECOMMITTED THANKSTOTHE-IN3#.PASSEDINBYTHEDATABASESESSION THEcell blocks
helped by minscn optimization STATISTICISINCREMENTEDONCEFOREACHBLOCK 
7ITHOUTTHISOPTIMIZATION /RACLEWOULDHAVETOCHECKTHECOMMITCACHEDESCRIBEDINTHEcell
blocks helped by commit cacheSTATISTICSECTION AND IFITFINDSNOINFOABOUTTHISTRANSACTIONINTHE
COMMITCACHE THENINTERACTWITHTHEDATABASELAYERTOFINDOUTWHETHERTHELOCKINGTRANSACTIONHAS
ALREADYCOMMITTEDORNOT4HISOPTIMIZATIONIS2!# AWAREINFACTTHE-INIMUM3#.ISCALLED'LOBAL
-INIMUM3#. ANDTHE--/.PROCESSESINEACHINSTANCEWILLKEEPTRACKOFTHE-IN3#.ANDKEEPIT
SYNCEDINANIN MEMORYSTRUCTUREINEACHNODES3'!9OUCANQUERYTHECURRENTKNOWNGLOBAL
-INIMUM!CTIVE3#.FROMTHEgZcd\PbR]FIXEDTABLEASSHOWNHEREAS393 

B@;-2>;\X]NPRcNbR]5>A(((((((((((((((((
B@;-
B@;-B4;42C\X]NPRcNbR]5A><gZcd\PbR]*

<8=N02CNB2=

((!'('' '$(

4HIScell blocks helped by minscn optimizationSTATISTICISALSOSOMETHINGYOUSHOULDNTBEWORRIED
ABOUT BUTITCANCOMEINHANDYWHENTROUBLESHOOTINGADVANCED3MART3CANISSUES OREVENBUGS WHERE
3MART3CANSSEEMTOGETINTERRUPTEDBECAUSETHEYHAVETOFALLBACKTOBLOCK)/ANDTALKTOTHEDATABASE
TOOMUCH

cell blocks processed by cache layer


4HEcell blocks processed by … layer STATISTICSAREGOODINDICATORSOFTHEdepthOFOFFLOADPROCESSINTHE
CELLS4HEMAINPOINTANDADVANTAGEOFTHE%XADATASTORAGESERVERSISTHATPARTOFTHE/RACLEKERNELCODE
HASBEENPORTEDINTOTHERT[[baeEXECUTABLERUNNINGINTHESTORAGECELLS4HISISWHATALLOWSTHE/RACLE
DATABASELAYERTOOFFLOADTHEDATASCANNING FILTERING ANDPROJECTIONWORKINTOTHECELLS)NORDERTODO
THAT THECELLSMUSTBEABLETOREADANDUNDERSTAND/RACLEDATABLOCKANDROWCONTENTS JUSTASTHE
DATABASEDOES4HEcell blocks processed by cache layerSTATISTICINDICATESHOWMANYDATABLOCKSTHEcells
HAVEPROCESSEDOPENED READANDUSEDFOR3MART3CAN ASOPPOSEDTOJUSTPASSINGTHEBLOCKSREADUP
THEDATABASELAYER
7HENACELLJUSTPASSESTHEBLOCKSBACKTOTHEDATABASEINBLOCK)/MODE THISSTATISTICISNOT
UPDATED"UTWHENTHECELLITSELFUSESTHESEBLOCKSFOR3MART3CAN THENONEOFTHEFIRSTTHINGSTHATIS
DONEWHENOPENINGABLOCKCONSISTENTORCURRENTREAD ISTOCHECKTHEBLOCKCACHELAYERHEADER4HISIS
TOMAKESUREITISTHECORRECTBLOCK ISNOTCORRUPT ANDISVALIDANDCOHERENT4HESETESTSAREDONEBY
CACHELAYERFUNCTIONS+#"FOR+ERNEL#ACHE"UFFERMANAGEMENT ANDREPORTEDBACKTOTHEDATABASEAS
cell blocks processed by cache layer
)NTHEDATABASELAYER WITHREGULARBLOCK)/ THECORRESPONDINGSTATISTICSAREconsistent gets from
cache ANDconsistent gets from cache (fastpath)DEPENDINGONWHICHBUFFERPINNINGCODEPATHISUSEDFOR
THECONSISTENTBUFFERGET.OTETHATRT[[baeDOESONLYCONSISTENTMODEBUFFERGETS#2READS ANDNO
CURRENTMODEBLOCKGETS3OALLTHECURRENTMODEGETSYOUSEEINSTATSAREDONEINTHEDATABASELAYERAND
AREREPORTEDASdb block gets from cache ORdb block gets from cache (fastpath)4HISSTATISTICISAUSEFUL
ANDSIMPLEMEASUREOFHOWMANYLOGICALREADSTHERT[[baeDOESFORYOURSESSIONS


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

.OTETHATITIS/+TOSEESOMEDATABASELAYER)/PROCESSINGDURINGA31,PLANEXECUTION ASTHE
PLANISPROBABLYACCESSINGMULTIPLETABLESANDJOININGTHEM 3O WHENDOINGA TABLEJOINBETWEENA
LARGEFACTANDNINEDIMENSIONTABLES YOUMAYWELLSEETHATALLOFTHEDIMENSIONSARESCANNEDUSING
REGULAR CACHEDBLOCK)/ANDUSINGSOMEINDEX IFPRESENT ANDONLYTHELARGEFACTTABLEACCESSPATHWILL
TAKEADVANTAGEOFTHE3MART3CAN

cell blocks processed by data layer


7HILETHEPREVIOUSSTATISTICCOUNTSALLTHEBLOCKGETSDONEBYTHECACHELAYER+#" THISSTATISTICIS
SIMILAR BUTCOUNTSTHEBLOCKSPROCESSEDINTHECELLBYTHEDATALAYER4HISSTATISTICAPPLIESSPECIFICALLYTO
READINGTABLEBLOCKSORMATERIALIZEDVIEWBLOCKSWHICHAREPHYSICALLYJUSTLIKETABLEBLOCKS )NFORMATION
ISCOLLECTEDUSINGADATALAYERMODULE CALLED+$3FOR+ERNEL$ATA3CAN WHICHCANEXTRACTROWSAND
COLUMNSOUTOFTABLEBLOCKSANDPASSTHEMONTOVARIOUSEVALUATIONFUNCTIONSFORFILTERINGANDPREDICATE
CHECKS)FTHECELL3MART3CANCANDOALLOFITSPROCESSINGINTHECELL WITHOUTHAVINGTOFALLBACKTO
DATABASEBLOCK)/MODE THENTHIShPROCESSEDBYDATALAYERvSTATISTICPLUSTHEPROCESSEDBYhINDEX
LAYERvSTATISTICSHOULDADDUPTOTHEhPROCESSEDBYCACHELAYERvVALUE4HISMEANSTHATEVERYBLOCK
ACTUALLYOPENEDMADEITSWAYTHROUGHTHECACHEANDTRANSACTIONLAYERCHECKSANDWASPASSEDTOTHEDATA
ORINDEXLAYERFORROWANDCOLUMNEXTRACTION)FTHEhPROCESSEDBYDATALAYERvPLUShPROCESSEDBYINDEX
LAYERvSTATISTICSADDUPTOASMALLERVALUETHANTHEhPROCESSEDBYCACHELAYERvSTATISTIC ITMEANSTHATTHE
RESTOFTHEBLOCKSWERENOTFULLYPROCESSEDBYTHECELLANDHADTOBESENTBACKTOTHEDATABASEFORREGULAR
BLOCK)/PROCESSING

cell blocks processed by index layer


4HISSTATISTICISJUSTLIKETHEPRECEDINGcell blocks processed by data layer BUTITISINCREMENTEDWHEN
3MART3CANNINGTHROUGH"
4REEORBITMAPINDEXSEGMENTBLOCKS4HECODEPATHFOREXTRACTINGROWSOUT
OFINDEXBLOCKSISDIFFERENTFROM4HEcell blocks processed by index layer COUNTSHOWMANYINDEXSEGMENT
BLOCKSWEREPROCESSEDBYA3MART3CAN

cell blocks processed by txn layer


4HISSTATISTICSHOWSHOWMANYBLOCKSWEREPROCESSEDINTHECELLBYTHETRANSACTIONLAYER(EREISA
SIMPLIFIEDEXPLANATIONOFTHESEQUENCEOFACTIONSDURINGACONSISTENTREADFOR3MART3CANINASTORAGE
CELL
 4HECACHELAYER+#" OPENSTHEDATABLOCKANDCHECKSITSHEADER LAST
MODIFICATION3#. ANDCLEANOUTSTATUS
 )FTHEBLOCKINTHECELLHASNOTBEENMODIFIEDAFTERTHESNAPSHOT3#.OFTHE
QUERYRUNNINGTHECURRENT3MART3CAN THISBLOCKCANBEPASSEDTOTHE
TRANSACTIONLAYERFORPROCESSING(OWEVER IFTHEBLOCKIMAGEONDISKCELL HAS
BEENMODIFIEDAFTERTHEQUERYSSNAPSHOT3#. THENTHECACHELAYERALREADY
KNOWSTHATTHISBLOCKHASTOBEROLLEDBACKFORCONSISTENTREAD)NTHISCASETHE
BLOCKISNOTPASSEDINTOTHECELLTRANSACTIONLAYERATALL BUTTHECELLFALLSBACKTO
BLOCK)/ANDPASSESTHATBLOCKTOTHEDATABASELAYERFORNORMAL#2
PROCESSING
 )FTHEBLOCKISPASSEDTOTHETRANSACTIONLAYER+42 BYTHECACHELAYER THENTHE
TRANSACTIONLAYERCANUSETHECOMMITCACHEAND-IN!CTIVE3#.OPTIMIZATION


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

TOAVOIDFALLINGBACKTOREDUCETHEAMOUNTOFCOMMUNICATIONWITHTHE
DATABASELAYERIFITHITSLOCKEDROWSANDNOTCLEANEDOUTBLOCKSOFCOMMITTED
TRANSACTIONS7HENTHEREISNONEEDTOFALLBACKTOBLOCK)/ANDDATABASE
LAYERCONSISTENTREADS THENTHECONSISTENTREADSWILLBEPERFORMEDBYTHEDATA
LAYERORINDEXLAYERCODEINSIDETHESTORAGECELL(OWEVER IFTHECONSISTENTREAD
CANNOTBECOMPLETEDWITHINTHECELL THENTHEENTIREDATABLOCKATHANDMUST
BETRANSPORTEDBACKTOTHEDATABASELAYERANDTHECONSISTENTREADWILLBE
PERFORMEDTHERE
4HEPOINTOFTHISEXPLANATIONISTHATIFTHE3MART3CANSWORKOPTIMALLY THEYDONOTHAVETOINTERRUPT
THEIRWORKANDTALKTOTHEDATABASELAYERDURINGTHE3MART3CANPROCESSINGIDEALLYALLTHESCANNINGWORK
ISDONEINTHESTORAGECELL ANDONCEENOUGHROWSAREREADYTOBERETURNED THEYRESENTTOTHEDATABASE
INABATCH)FTHISISTHECASE THENTHEcell blocks processed by data layer (OR index layer)STATISTICWILLBEAS
HIGHASTHEcell blocks processed by cache layerANDtxn layer SHOWINGTHATALLTHEBLOCKSCOULDBEFULLY
PROCESSEDINTHECELLANDROWSEXTRACTEDFROMTHEMWITHOUTHAVINGTOFALLBACKTODATABASE LAYERBLOCK
)/ANDCONSISTENTREADS
2EMEMBERTHATALLTHISCOMPLEXITYRELATEDTOCONSISTENTREADSINSTORAGECELLSMATTERSONLYWHEN
DOINGA3MART3CAN7HENDOINGREGULARBLOCK)/ CELLSJUSTPASSTHEBLOCKSREADDIRECTLYBACKTOTHE
DATABASELAYER ANDTHECONSISTENTREADLOGICISEXECUTEDINTHEDATABASELAYERASUSUAL!NDYOU
SHOULDNTREALLYWORRYABOUTTHESEMETRICSUNLESSYOUSEETHATYOUR3MART3CANWAITEVENTSTENDTOBE
INTERSPERSEDWITHcell single block physical reads CONSUMINGASIGNIFICANTPARTOFYOURQUERYRESPONSE
TIME

cell commit cache queries


4HISISTHENUMBEROFTIMESTHECELL3MART3CANLOOKEDUPATRANSACTIONSTATUSFROMTHECELLCOMMIT
CACHEHASHTABLE!LOOKUPFROMCOMMITCACHEISNORMALLYDONEONCEPERUNCOMMITTEDTRANSACTION
FOUNDPERBLOCKSCANNEDBY3MART3CANˆWHERETHE-IN!CTIVE3#.OPTIMIZATIONHASNTALREADYKICKED
INANDELIMINATEDTHENEEDTOCHECKFORINDIVIDUALTRANSACTIONSTATUSES4HISISCLOSELYRELATEDTOTHEcell
blocks helped by commit cacheSTATISTIC

cell flash cache read hits


4HISSTATISTICSHOWSHOWMANY)/REQUESTSWERESATISFIEDFROMTHECELLFLASHCACHE SOTHATAHARDDISK
READWASNOTNECESSARY.OTETHATWESAIDhHARDDISKREAD vNOTJUSTPHYSICALREAD4HATSBECAUSETHE
READSFROMFLASHCARDSALSOREQUIREPHYSICALREADSSYSTEMCALLSRESULTINGINFLASHCARD)/ 7HENYOUSEE
THISNUMBER ITMEANSTHATTHEREQUIREDBLOCKSWERENOTINTHEDATABASELAYERBUFFERCACHEORTHEACCESS
PATHCHOSETOUSEADIRECTPATHREAD BUTLUCKILYALLTHEBLOCKSREQUIREDBYAN)/REQUESTWEREINCELL
FLASHCACHETHEOFFICIALTERMIS%XADATA3MART&LASH#ACHE .OTETHATTHISNUMBERSHOWSTHENUMBEROF
)/REQUESTS NOTTHENUMBEROFBLOCKSREADFROMCELLFLASHCACHE2EMEMBERTHATCELLFLASHCACHEIS
USABLEBOTHBYREGULARBLOCKREADSANDCELL3MART3CANS%SPECIALLYIFYOURUNAN/,40DATABASEON
%XADATA FORBESTPERFORMANCEYOUSHOULDATTEMPTTOSATISFYMOSTSINGLE BLOCKREADSFROMEITHERTHE
DATABASEBUFFERCACHEOR FAILINGTHAT THECELLFLASHCACHE9OUCANREADMOREABOUTTHE%XADATA&LASH
#ACHEIN#HAPTER


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

cell index scans


4HISSTATISTICISINCREMENTEDEVERYTIMEA3MART3CANISSTARTEDONA"
4REEORBITMAPINDEXSEGMENT
.OTETHATINORDERTOUSE3MART3CANSONINDEXSEGMENTS THEindex fast full scanEXECUTIONPLANROW
SOURCEOPERATORMUSTBEUSEDTOGETHERWITHDIRECTPATHREADS4HISSTATISTICISUPDATEDATTHESTARTOFA
3MART3CANSESSION SOIFYOUMONITORITSVALUEFORASESSIONTHATHASBEENEXECUTINGALONG RUNNING
QUERYFORAWHILE THENYOUMIGHTNOTSEETHISSTATISTICINCREMENTINGFORYOURSESSION
7HENRUNNINGJUSTASERIALSESSIONWITH3MART3CANONANONPARTITIONEDINDEXSEGMENT THISSTATISTIC
WOULDBEINCREMENTEDBYONE(OWEVER WHENRUNNINGA3MART3CANONAPARTITIONEDINDEXSEGMENT
THENTHEcell index scansSTATISTICWOULDBEINCREMENTEDFOREACHPARTITIONSCANNEDUSING3MART3CAN
4HISISBECAUSETHE3MART3CANISASEGMENT LEVELDECISIONMADEATRUNTIME FOREACHSEGMENTTABLE
INDEXORPARTITION "ECAUSETHE3MART3CANKICKSINONLYWHENDOINGDIRECTPATHREADSTO0'! ANDTHE
DIRECTPATHREADSDECISIONISMADEBASEDONTHESCANNEDSEGMENTSIZEAMONGOTHERTHINGS DIFFERENT
PARTITIONSOFTHESAMETABLEACCESSEDMAYBESCANNEDUSINGDIFFERENTMETHODS9OUMIGHTFINDTHATSOME
PARTITIONSINYOURMULTIPARTITIONTABLEORINDEXARENOTSCANNEDWITH3MART3CANDIRECTPATHREADS AS
/RACLEHASDECIDEDTOUSEBUFFEREDREADSFORTHEMTHANKSTOTHEIRSMALLERSIZE)NTHISCASE THEcell index
scansSTATISTICWOULDNOTINCREMENTASMUCHANDYOUWOULDSEETHEcell multiblock physical read WAIT
EVENTPOPUPATTHETABLEINDEXSCANROWSOURCEPATHINAN!3(OR31,-ONITORINGREPORT

cell IO uncompressed bytes


4HISSTATISTICSHOWSTHEuncompressedSIZEOFTHEDATASCANNEDINTHECELL3OIFYOUSCANTHROUGHA'"
COMPRESSEDSEGMENT physical read total bytesSTATISTICWOULDINCREASEBY'" BUTTHEcell I/O
uncompressed bytesMAYWELLINCREASEBY'"IFTHATSTHETOTALUNCOMPRESSEDSIZEOFTHEDATA4HIS
STATISTICISINCREMENTEDONLYWHENPERFORMINGA3MART3CANCOMPRESSIONOFFLOADING NOTWHENYOUREAD
THECOMPRESSEDBLOCKSDIRECTLYTOTHEDATABASELAYERWITHBLOCK)/

cell num fast response sessions


4HISSTATISTICSHOWSHOWMANYTIMES/RACLESTARTEDTHE3MART3CANCODEBUTTHENCHOSENOTTOSETUPTHE
3MART3CANSESSIONIMMEDIATELY BUTINSTEADTODOAFEWBLOCK)/OPERATIONSFIRSTINHOPETOFIND
ENOUGHROWSTOSATISFYTHEDATABASESESSION4HISOPTIMIZATIONISUSEDU^a58ABCA>FBEXECUTIONPLAN
OPTIONS EITHERWHENUSINGA58ABCNA>FBNgHINTOREQUIVALENTX]Xc^aPPARAMETER ORAF74A4a^f]d\+
GCONDITION WHICHMAYALSOENABLETHEFIRSTROWSOPTIONINEXECUTIONPLANS4HEIDEAISTHATIFFETCHING
ONLYAFEWROWS /RACLEHOPESTOAVOIDTHEOVERHEADOFSETTINGUPACELL3MART3CANSESSIONWITHALLTHE
CELLS THANKSTO!3-STRIPING BUTITWILLDOAFEWREGULARBLOCK)/OPERATIONSFIRST&OLLOWINGISAN
EXAMPLEOFAFIRST ROWSOPTIMIZATIONTHANKSTOTHEA>F=D<PREDICATE
B4;42C5A><c"F74A4^f]Ta[XZTB0=3aa^f]d\+, 

?[P]WPbWeP[dT)" !'%&"&#


k8Sk>_TaPcX^]k=P\Tk4A^fbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkk# k
k k2>D=CBC>?:4Hkkkk
k!kC01;40224BBBC>A0645D;;
58ABCAA>FBkC"k k#k



#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


 UX[cTaA>F=D<+, 
!bc^aPVT>F=4A;8:4B
UX[cTa>F=4A;8:4B

7HENEXAMININGEB4BB8>=STATISTICSOFA3MART3CANOFSUCHANEXECUTIONPLAN YOUARELIKELYTOSEETHE
cell num fast response sessionsINCREMENTED AS/RACLEHASTRIEDTOAVOIDTHE3MART3CANSESSIONSETUP
OVERHEAD
B@;-B4;42C5A><C01;4TgPcTbcSXUURT[[]d\UPbc*

=0<4E0;D4

RT[[]d\UPbcaTb_^]bTbTbbX^]b 
RT[[]d\UPbcaTb_^]bTbTbbX^]bR^]cX]dX]Vc^b\PacbRP]

4HECELLFASTRESPONSEFEATUREISCONTROLLEDBYTHE_kcfis_fast_response_enabled PARAMETERANDENABLED
BYDEFAULT

cell num fast response sessions continuing to smart scan


4HISSTATISTICSHOWSHOWMANYTIMESTHECELL3MART3CANFASTRESPONSESESSIONWASSTARTED BUT/RACLE
HADTOSWITCHTOTHEREAL3MART3CANSESSIONASITDIDNTFINDENOUGHMATCHINGROWSWITHTHEFIRSTFEW)/
OPERATIONS4HENEXTEXAMPLEQUERYHASTHEFIRST ROWSOPTIMIZATIONINTHEEXECUTIONPLAN BUTTHE
ADDITIONALPREDICATEONTHE^QYTRcN]P\TCOLUMNENSURESTHATNOMATCHINGROWSAREFOUNDDURINGFIRST
FEW)/SFROMTHETABLE
B4;42C5A><c"F74A4^f]Ta[XZTB00=3^QYTRcN]P\T;8:4]^]TgXbcT]c
0=3a^f]d\+, 

?[P]WPbWeP[dT)" !'%&"&#


k8Sk>_TaPcX^]k=P\Tk4A^fbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkk( k
k k2>D=CBC>?:4Hkkkk
k!kC01;40224BBBC>A0645D;;5
58ABCA>FBkC"k k(k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


 UX[cTaA>F=D<+, 
!bc^aPVT>1942CN=0<4;8:4]^]TgXbcT]c0=3>F=4A;8:4
B0=3>1942CN=0<48B=>C=D;;
UX[cTa>1942CN=0<4;8:4]^]TgXbcT]c0=3>F=4A;8:4
B0=3>1942CN=0<48B=>C=D;;


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

B@;-B4;42C5A><C01;4TgPcTbcSXUURT[[]d\UPbc*

=0<4E0;D4

RT[[]d\UPbcaTb_^]bTbTbbX^]b 
RT[[]d\UPbcaTb_^]bTbTbbX^]bR^]cX]dX]Vc^b\PacbRP] 

4HESESTATSSHOWTHATAFASTRESPONSESESSIONWASINVOKED BUTITHADTOSWITCHTO3MART3CANLATERON
)NTERESTINGLY THISOPTIMIZATIONCAUSESTHE/RACLEWAITINTERFACETOREPORTSOMEdb file sequential read
WAITEVENTS WHICHWETHOUGHTWEREIMPOSSIBLEON%XADATACELLSTORAGEBECAUSEREGULARCELLSINGLEBLOCK
READSAREREPORTEDAScell single block physical readWAITEVENTS 

?0AB8=68=2DAB>A#&#!$!&&(( "%[T],("ST_,dXS,("^Rc,"[XS,("cX\, "!%!%$#!&'!'We
B4;42C5A><c"F74A4^f]Ta[XZTB0=3^QYTRcN]P\T;8:4]^]TgXbcT]c0=3a^f]d\
+,
4=3>5BC<C
?0AB4#&#!$!&&(( "%)R,'(((T,(('"_,!Ra,"Rd,\Xb, a,ST_,^V, _[W," !'%&"&#
4G42#&#!$!&&(( "%)R,T, (_,Ra,Rd,\Xb,a,ST_,^V, _[W," !'%&"&#
F08C#&#!$!&&(( "%)]P\,B@;=Tc\TbbPVTc^R[XT]cT[P,!SaXeTaXS, # "%(&$"%QhcTb, 
F08C#&#!$!&&(( "%)]P\,B@;=Tc\^aTSPcPc^R[XT]cT[P, &SaXeTaXS, # "%(&$"%
F08C#&#!$!&&(( "%)]P\,RT[[bX]V[TQ[^RZ_WhbXRP[aTPST[P,$$RT[[WPbW,! ""#$(#'"
F08C#&#!$!&&(( "%)]P\,aT[XPQ[T\TbbPVTT[P, #&"RWP]]T[R^]cTgc, '''"# &'#
F08C#&#!$!&&(( "%)]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P,!(']P\Tk\^ST, !%"#%'$$
F08C#&#!$!&&(( "%)]P\,T]`):>UPbc^QYTRcRWTRZ_^X]cT[P, $#]P\Tk\^ST, !%"#%'$#$
F08C#&#!$!&&(( "%)]P\,Pbh]RWSTbRaX_c^aaTbXiTT[P,!^dcbcP]SX]VPX^,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,#UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P, $(!UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P, UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,#!&UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P, UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,"$UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,!UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,!!'$&UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,!UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,!"%"%UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,"UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,SQUX[TbT`dT]cXP[aTPST[P,''''UX[T,Q[^RZ,Q[^RZb,
F08C#&#!$!&&(( "%)]P\,RT[[b\PaccPQ[TbRP]T[P, "RT[[WPbW,! ""#$(#'"_!,_",
F08C#&#!$!&&(( "%)]P\,RT[[b\PaccPQ[TbRP]T[P, !%RT[[WPbW,"&(""(($'_!,_",
F08C#&#!$!&&(( "%)]P\,RT[[b\PaccPQ[TbRP]T[P, !"RT[[WPbW," &%$(##(_!,_",

cell num smart IO sessions using passthru mode due to reason


4HESETHREESTATISTICSWHEREreasonCANBEEITHERdbTa RT[[bae ORcX\Ti^]T INDICATEHOWMANYTIMES
/RACLEDATABASEINITIATEDA3MART3CAN BUTTHERT[[baeDIDNTSTARTA3MART3CANANDFELLBACKENTIRELYTO
BLOCK)/MODE4HEBLOCKSREADAREJUSTPASSEDTHROUGHRT[[baeTODATABASE INSTEADOFPROCESSING
THEMWITHINTHECELL4HISMEANSTHATWHILEYOUSTILLSEETHEcell Smart Scan WAITEVENTSANDcell physical
IO interconnect bytes returned by smart scanINCREASINGWHICHINDICATESTHATA3MART3CANISHAPPENING


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

THEFULLPOWEROF3MART3CANISNOTUTILIZED ASTHECELLSJUSTREADDATABLOCKSANDRETURNTHEBLOCKSBACK
TOTHEDATABASELAYER)NOTHERWORDS INPASSTHROUGHMODE THECELLSDONOTOPENDATABLOCKSANDEXTRACT
ONLYTHEREQUIREDCOLUMNSOFMATCHINGROWS BUTRETURNALLTHEPHYSICALBLOCKSOFTHESEGMENTASTHEY
ARE.OTETHATTHESTORAGEINDEXESDYNAMICALLYCREATEDINRT[[baeMEMORY CANBEUSEDTOELIMINATE)/
INTHEPASSTHROUGHMODETOO BUTTHESEINDEXESMUSTBEPOPULATEDBYAREGULAR3MART3CAN WHICHDOES
ACTUALLYOPENANDPROCESSTHEDATABLOCKSINTHECELL
9OUSHOULDNOTSEEANYPASSTHROUGH3MART3CANSHAPPENINGONTHELATESTDATABASEAND%XADATACELL
VERSIONSUNLESSYOUHAVEPROBLEMSLIKECELLSRUNNINGOUTOFMEMORYANDTHELIKE9OUCANTESTWHAT
HAPPENSINATEST ENVIRONMENTBYSETTING_kcfis_cell_passthru_enabled TO425%ANDRUNNINGA3MART
3CAN9OUWILLSTILLSEEcell smart scan WAITEVENTFORYOUR3MART3CANS BUTTHEYARESLOWERBECAUSETHEY
ARERETURNINGALLTHEBLOCKSTOTHEDATABASEFORPROCESSING

cell physical IO bytes eligible for predicate offload


4HISPERFORMANCECOUNTERHOLDSONEOFTHEMOSTIMPORTANTSTATISTICSFORUNDERSTANDINGCELL3MART3CAN
7HENYOUARE3MART3CANNINGTHROUGHASEGMENT THISSTATISTICSHOWSHOWMANYBYTESOFTHATSEGMENT
THE3MART3CANWOULDGOTHROUGH%SSENTIALLY ALLTHEBYTESFROMTHEBEGINNINGOFTHESEGMENTALLTHEWAY
TOITSHIGHWATERMARKWILLBEREPORTEDASTHESCANNINGPROGRESSESTHROUGHTHEENTIRESEGMENT 4HE
CATCHISTHATTHISISTHETHEORETICALMAXIMUMNUMBEROFBYTESTOSCANTHROUGH BUTSOMETIMESTHECELL
STORAGEINDEXOPTIMIZATIONKICKSIN ALLOWINGTHESCANTOSKIPREADINGSOMEBLOCKRANGES%VENIFTHE
STORAGEINDEXALLOWSYOUTOAVOIDSCANNINGPERCENTOFA'"SEGMENT REDUCINGTHEACTUAL)/
AMOUNTTOONLY'" THISSTATISTICSTILLSHOWSTHEtotalSIZEOFTHESEGMENTSCANNED REGARDLESSOFANY
OPTIMIZATIONS)NOTHERWORDS THISSTATISTICSHOWSTHETOTALBYTESTHATWOULDHAVEBEENSCANNEDTHROUGH
IFANYCELLLEVELOPTIMIZATIONSDIDNTKICKINANDOFTENTHISISTHECASE .OTETHATTHISSTATISTICSIMPLY
COUNTSTHEPHYSICALSIZEOFTHESEGMENTINTHEDATABLOCKSINDATAFILESANDNOTTHEhEVENTUALvDATASIZE
AFTERANYDECOMPRESSION FILTERING ORPROJECTION 
)FTHISNUMBERDOESNOTINCREASEFORYOURSESSIONSEB4BBC0COR3TATSPACK!72DATAWHENLOOKING
ATTHEWHOLEINSTANCE THENITSANOTHERINDICATORTHAT3MART3CANSARENTBEINGUSED!NYBLOCKRANGES
SCANNEDTHROUGHOREVENSKIPPEDTHANKSTOSTORAGEINDEXOPTIMIZATIONS BYA3MART3CANSESSION
SHOULDINCREMENTTHISSTATISTICACCORDINGLY!NOTHERTHINGTOKNOWISTHATWHENTHE3MART3CANFALLSBACK
TOPASSTHROUGHFULLBLOCKSHIPPINGMODEDESCRIBEDEARLIER THEcell physical IO bytes eligible for
predicate offload STATISTICSTILLGETSINCREMENTED ALTHOUGHTHERESNOPREDICATEOFFLOADINGAND3MART3CAN
FILTERINGDONEINTHECELLINPASSTHROUGHMODE

cell physical IO bytes pushed back due to excessive CPU on cell


4HISSTATISTICISRELATEDTOTHESELECTIVEFALLBACKTOPASSTHROUGHMODEASEXPLAINEDIN+EVINS
ACCOMPANYINGNOTE4HEBIGGERTHISNUMBERISCOMPAREDTOTHEcell physical I/O bytes eligible for
predicate offload STATISTIC THEMORETHECELLHADTOSENDBACKCOMPRESSED#5SFORDECOMPRESSIONAND
PROCESSINGINTHEDATABASELAYER4HISHAPPENSWHENTHECELLS#05UTILIZATIONREACHESATHRESHOLDAND
THEREISENOUGHSPARE#05CAPACITYAVAILABLEINTHEDATABASELAYER ALLOWINGYOUTOUTILIZETHE#05SOF
YOURWHOLE%XADATACLUSTERBETTER
.OTETHATTHISPERFORMANCECOUNTERAPPEAREDASPARTOFTHECELLSOFTWAREVERSIONAND
DATABASE"UNDLE0ATCH)TWASAPPARENTLYADDEDASATEMPORARYONE OFFFIX ASTHISSTATISTICREPLACEDTHE
AD HOC“spare statistic 1”COUNTERINTHE6VIEWS)NFACT IN/RACLEAND%XADATA"UNDLE0ATCH
THISSTATISTICISRENAMEDTO“cell physical IO bytes sent directly to DB node to balance CPU usage.”


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

 +EVIN3AYSh2EGARDINGPASSTHROUGHFUNCTIONALITY THEAUTHORSARECORRECTINASSERTINGTHATPASSTHROUGHIS
GENERALLYASIGNOFPROBLEMS(OWEVER LATERELEASESOF%XADATA3TORAGE3ERVERSOFTWAREHAVEAFEATURETHATTRIES
TOMITIGATETHEIMBALANCESBETWEENPROCESSORUTILIZATIONINTHESTORAGECELLSANDTHATOFDATABASEHOSTSUNDER
STORAGE INTENSIVEPROCESSING4HEDEFINITIONOFhAPROBLEMvISSUBJECTIVE)NSITUATIONSWHERE3MART3CANOFFLOAD
PROCESSINGISSATURATINGTHESTORAGEPROCESSORSˆTHUSCREATINGABOTTLENECKFORDATAFLOWˆQUERYCOMPLETIONTIME
ISSEVERELYIMPACTED4HATISAPROBLEM3OLUTIONSCAN SOMETIMES BEPROBLEMSASWELL

)NTHESEMORERECENTRELEASESOFRT[[baeTHEREISAHINTABOUTDATABASEGRIDPROCESSORUTILIZATIONINTHEMETADATA
OFEACH3MART3CAN)/REQUESTPASSEDOVERI$"TOSTORAGE)FSTORAGEISSIGNIFICANTLYBUSIERTHANTHEHOSTS#05
WISE RT[[baeWILLSENDDATATOTHEFOREGROUNDPROCESSESAFTERNO ORVERYLITTLE OFFLOADPROCESSINGˆDEPENDING
ONWHETHERTHEREIS(##INVOLVEDORNOT4HETERMpassthroughREFERSTOTHOSETIMESWHEN3MART3CANchoosesTO
SKIPOFFLOADPROCESSING!SOFTHEPUBLICATIONOFTHISBOOK THEONLYREASON3MART3CANchoosesTOSKIPOFFLOAD
PROCESSINGISFORREASONSOFPROCESSORSATURATION4HEREMAYBEOTHERTRIGGERSINTHEFUTURE4HEINFRASTRUCTUREISIN
PLACE

4HEAUTHORSAND) TRYTOIMPARTTHECONCEPTSABOUTWHENA3MART3CANWILLOCCURANDWHENA3MART3CANWILL
needTOREVERTTOBLOCKMODEPROCESSING(ERE ONTHEOTHERHAND WEHAVEACASEWHERE3MART3CANSIMPLY
choosesTOCEASEOFFLOADPROCESSINGFORASIGNIFICANTPERCENTAGEOFTHEDATABEINGREADFROMDISK4HISMIDDLE
GROUND HOWEVER ISNOTAFALL BACKTOBLOCKMODEPROCESSING BECAUSETHEBUFFERINGISSTILL0'!DIRECTPATH
READS 4HETERM/RACLEHASCHOSENFORTHISMIDDLE GROUNDSUMSITUPTHEBESTpassthrough4OTHATEND WE
COULDSAYTHEREISNOWANOTHERTYPEOFSCAN0ARTIALLY3MART3CAN

3O HOWMUCH3MART3CANVALUEREMAINSWHENINPASSTHROUGHMODE7ELL ITISSTILLA3MART3CAN SOSTORAGE


INDEXESCANSTILLBEOFBENEFIT(OWEVER FILTRATIONWILLNOTOCCURINSTORAGE0ROJECTION ONTHEOTHERHAND WILLOCCUR
INSTORAGEONLYIFTHEDATABEINGSCANNEDIS%(##9OUSEE PROJECTING%(##TUPLESISVERYINEXPENSIVEAND ASWE
KNOW REDUCINGPAYLOADISTHECRITICALSERVICE3MART3CANAIMSTODELIVER3OIFPAYLOADREDUCTIONCANOCCUR THATIS
AGOODTHING

3OWHATDOESALLTHISMEAN7ELL IDLEPROCESSORSAREAVERYBADTHINGWITH$7")WORKLOADS SOTHISNEWBEHAVIOR


COULDBEAGOODTHING4HEONLYASPECTOFTHEFEATURETHATMAKESMEWARYISTHATFACTORSEXTERNALTOTHEQUERYCAN
CHANGETHERUNTIMEDYNAMIC#ONSIDER FORINSTANCE AQUERYWITHAGOODEXECUTIONPLANTHATTAKESSECONDSTO
COMPLETEWHENPROCESSINGWITHOUTOTHERCONCURRENTQUERIES3UPPOSEFURTHERTHATTHISQUERYBURDENSTHESTORAGE
PROCESSORSTOSOMEPERCENT7HENEXECUTEDCONCURRENTLYWITHANOTHERQUERYTHATUTILIZESTHEREMAINING
PERCENTSTORAGEPROCESSORBANDWIDTH 3MART3CANWILLSTOPOFFLOADPROCESSINGFORsomeAMOUNTOFTHEDATAREAD
FROMDISKˆFORBOTHOFTHESEQUERIES4HISISACASEOFHYSTERESIS


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

)FTHISNEWFEATURESTANDSTHETESTOFTIME ITWILLADDMANYVARIABLESINMULTIPLEDIMENSIONS TOPERFORMANCE


ANALYSIS)NTHEEND HOWEVER THEONLYTHINGTHATREALLYMATTERSISWHETHERTHEUSERSRESPONSIVENESSFROMTHE
SYSTEMISACCEPTABLE)CHOOSETOREMAINDUBIOUS HOWEVER BECAUSEOFTHEADDEDCOMPLEXITY)THASTAKENMANY
CHAPTERSOFTHISWELL WRITTENBOOKTOEXPLAINWHEN3MART3CAN ANDTHUSOFFLOADPROCESSING WILLOCCUR.OWWE
HAVEA3MART3CANSITUATIONTHATDOESNTPERFORMOFFLOADPROCESSINGFORVARYINGPERCENTAGESOFTHEDATASTREAMING
OFFOFSTORAGE)THASBEENSAIDMANYTIMESTHATOFFLOADPROCESSINGISTHEhSECRETSAUCEvOF%XADATAAND OFCOURSE
3MART3CANISTHEMAINAGENTFORDELIVERY)TISYETTOBESEENHOWCOMPLEXWORKLOADSBEHAVEWHEN3MART3CAN
SOMETIMESCHOOSESNOTTODOITSJOB

cell physical IO bytes saved by storage index


4HISISANOTHERIMPORTANTSTATISTIC WHICHSHOWSHOWMANYBYTESTHE3MART3CANSESSIONSCOULDSIMPLY
SKIPREADINGFROMDISKTHANKSTOTHEIN MEMORYSTORAGEINDEXINRT[[bae)FTHISSTATISTIC cell physical IO
bytes saved by storage indexISCLOSETOcell physical IO bytes eligible for predicate offload ITINDICATESTHAT
3MART3CANSAREGREATLYBENEFITINGFROMSTORAGEINDEXESANDHAVEAVOIDEDDISKREADSTHANKSTOTHAT

cell physical IO bytes saved during optimized file creation


4HISSTATISTICSHOWSHOWMANYBYTESWORTHOFDATAFILECREATIONANDFILEEXTENSIONWORKWASDONEINTHE
CELL7ITHOUTTHISOPTIMIZATION /RACLEWOULDFORMATTHENEWDATABLOCKSINTHEDATABASESESSIONS0'!
ANDSENDPHYSICALBLOCKWRITESTOTHECELLOVERINTERCONNECT)N%XADATA THEFILEBLOCKFORMATTINGAND
WRITESCANBEOFFLOADEDTOTHECELL ANDTHEDATABASEDOESNOTHAVEDOPHYSICALWRITESITSELF)N%XADATA
YOUWOULDSEEAcell smart file creationWAITEVENTWHENCELLSAREFORMATTINGBLOCKSFORNEWFILESORWHEN
EXTENDINGFILES7ITHOUTTHISOPTIMIZATION YOUWOULDSEETHEData file init writeWAITEVENTS

cell physical IO bytes saved during optimized RMAN file restore


4HISSTATISTICSHOWSHOWMANYBYTESWORTHOFDATAFILESWERERESTOREDWITHINCELLS WITHOUTHAVINGTO
INVOLVETHEDATABASELAYER THANKSTOOFFLOADINGTHE2-!.RESTORETOCELLS9OUSHOULDSEEYOURRECOVERY
SESSIONSWAITINGFORcell smart restore from backupWAITEVENTWHENRESTORINGON%XADATARMAN backup
& recovery I/OWAITEVENT

cell physical IO bytes sent directly to DB node to balance CPU usage


4HISSTATISTICISTHESAMEASTHEhCELLPHYSICAL)/BYTESPUSHEDBACKDUETOEXCESSIVE#05ONCELLvSTATISTIC
EARLIER WHICHISUSEDIN/RACLEWITH"UNDLE0ATCH BUTINNEWER/RACLEVERSIONSANDPATCH
LEVELSTHECURRENTSTATISTICNAMEISUSEDINSTEAD


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

cell physical IO interconnect bytes


4HISISASIMPLE BUTFUNDAMENTALSTATISTIC WHICHSHOWSHOWMANYBYTESWORTHOFANYDATAHAVEBEEN
TRANSMITTEDBETWEENTHESTORAGECELLSANDYOURDATABASESESSIONS4HISINCLUDESALLDATA BOTHSENTAND
RECEIVEDBYTHEDATABASE THE3MART3CANRESULTSETS FULLBLOCKSREADFROMTHECELLS TEMPORARY)/READS
ANDWRITES LOGWRITESIF,'72 ANYSUPPLEMENTARYI$"TRAFFIC ANDSOON3O THISSTATISTICSHOWSall
traffic bytes REGARDLESSOFITSDIRECTION CONTENTSORNATURE
7HENMEASURINGTHEWRITE)/METRICS DONTBESURPRISEDWHENYOUSEETHATTHEcell physical IO
interconnect bytesSTATISTICISTWOORTHREETIMESHIGHERTHANTHEphysical write total bytesSTATISTIC4HISIS
BECAUSETHELATTERSTATISTICISMEASUREDATTHE/RACLEDATABASELEVEL BUTTHEcell physical IO interconnect
bytesISMEASUREDATTHECELLLEVEL AFTER!3-MIRRORINGHASBEENDONE3OIF FOREXAMPLE ,'72WRITES
-"TOAN!3-DISKGROUPWITHHIGHREDUNDANCYTRIPLEMIRRORING ATOTALOF-"OFDATAWOULDBE
SENTOVERTHEINTERCONNECT.OTETHATTHEREISABUG IN/RACLETHATINCREMENTSTHIS
STATISTICEVENONNON %XADATADATABASES SOYOUCANJUSTIGNOREITONNON %XADATADATABASES

cell physical IO interconnect bytes returned by smart scan


4HISSTATISTICISANIMPORTANTONEANDSHOWSHOWMANYBYTESOFDATAWERERETURNEDTOTHEDATABASELAYER
BYTHE3MART3CAN4HEBYTESACTUALLYRETURNEDSHOULDBEMUCHLESSTHANTHEBYTESSCANNEDREADFROM
DISK4HISISTHEMAINPOINTOFTHE%XADATA3MART3CANFEATUREˆTHECELLSMAYREADGIGABYTESOFDATA
EVERYSECOND BUTASTHEYPERFORMEARLYFILTERINGTHANKSTOPREDICATEOFFLOADING THEYMAYSENDONLYA
SMALLPARTOFTHEROWSBACKTOTHEDATABASELAYER!DDITIONALLY THANKSTOTHEPROJECTIONOFFLOADING THE
3MART3CANSONLYRETURNTHEREQUESTEDCOLUMNSBACK NOTFULLROWS/FCOURSE IFTHEAPPLICATIONUSES
B4;42CFORFETCHINGALLTHECOLUMNSOFATABLE PROJECTIONOFFLOADINGWOULDNOTHELP BUTTHEEARLY
FILTERINGTHANKSTOPREDICATEOFFLOADINGCANSTILLHELPALOT
4HISSTATISTICISASUBSETOFTHEcell physical IO interconnect bytesSTATISTIC BUTITCOUNTSONLYTHEBYTES
OFROWSETS THATARERETURNEDBY3MART3CANSESSIONSANDNOOTHERTRAFFIC

cell scans
4HISSTATISTICISJUSTLIKETHEcell index scans BUTcell scansSHOWSTHENUMBEROF3MART3CANSDONEON
TABLEANDMATERIALIZEDVIEWSEGMENTS7ITHSERIALEXECUTION THISSTATISTICISINCREMENTEDONCEINTHE
BEGINNINGOFEVERYSEGMENTSCAN3OWHENSCANNINGTHROUGHAPARTITIONEDTABLE INWHICHEACHPARTITION
ISASEPARATESEGMENT THISSTATISTICWOULDBEINCREMENTEDFOREACHPARTITION7ITHPARALLELSCANS THEcell
scansSTATISTICWILLINCREMENTEVENMORE ASPARALLELSLAVESPERFORMTHEIRSCANSONBLOCKRANGES08
GRANULES HANDEDOVERTOTHEMBYTHEQUERYCOORDINATORˆSOTHESCANONEACHBLOCKRANGEISREPORTEDAS
ASEPARATEcell scan.4HEPRESENCEOFTHEtable scans (rowid ranges)STATISTICINDICATESTHAT08SCANSON
BLOCKRANGESAREHAPPENING
&OLLOWINGISANEXAMPLEOFAPARALLELFULLTABLESCANSESSIONSSTATISTICSWITHTWOSLAVES 4HE
'"TABLEWASAPPARENTLYhSPLITvINTOROWIDRANGESANDSCANNEDUSING3MART3CANSANDTHANKS
TOTHE3MART3CANSOFFLOADINGFEATURES ONLY'"WORTHOFRESULTINGDATAHADTOBESENTTOTHE
DATABASE


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3


B83DB4ACH?4BC0C8BC82734;C0

#C0=4;BC0C_WhbXRP[aTPSc^cP[QhcTb ""'6
#C0=4;BC0CRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTb#$#6
#C0=4;BC0CRT[[b\Pac8>bTbbX^]RPRWT[^^Zd_b "
#C0=4;BC0CRT[[b\Pac8>bTbbX^]RPRWTWXcb "
#$#6
#C0=4;BC0CRT[[_WhbXRP[8>X]cTaR^]]TRcQhcTbaTcda]TSQhb\PacbRP]#
#C0=4;BC0CcPQ[TbRP]b[^]VcPQ[Tb "!
#C0=4;BC0CcPQ[TbRP]ba^fXSaP]VTb "!
#C0=4;BC0CcPQ[TbRP]bSXaTRcaTPS "!
#C0=4;BC0CRT[[bRP]b "!

cell smart IO session cache hits


4HISSTATISTICSHOWSHOWMANYTIMESADATABASESESSIONMANAGEDTOREUSEAPREVIOUSLYINITIALIZED3MART
3CANSESSIONINTHECELL4HISSTATISTICSHOWSUPWHENASINGLEEXECUTIONPLANSCANSTHROUGHMULTIPLE
SEGMENTSLIKEWITHPARTITIONEDTABLES ORREVISITSTHESAMESEGMENTDURINGASINGLEEXECUTION

cell smart IO session cache lookups


4HISSTATISTICISINCREMENTEDEVERYTIMEADATABASESESSIONTRIEDTOREUSEAPREVIOUSLYINITIALIZED3MART
3CANSESSIONINTHECELL)FTHEcell smart IO session cache hitsSTATISTICINCREMENTSTOO THENTHELOOKUP
WASSUCCESSFULANDAPREVIOUSSESSIONCANBEREUSED4HESMART)/SESSIONCACHINGWORKSONLYWITHIN
ANEXECUTIONANDSUBSEQUENTFETCHES OFANOPENCURSOR/NCETHEEXECUTIONFINISHES THENEXT
EXECUTIONSEVENOFTHESAMECURSOR WOULDHAVETOSETUPNEW3MART3CANSESSIONSANDCOMMUNICATE
THENEWCONSISTENTREADSNAPSHOT3#.TOTHECELLSTOO 

cell transactions found in commit cache


4HISSTATISTICISRELATEDTOTHECONSISTENTREADMECHANISM/RACLEHASTOGUARANTEE EVENON%XADATA)T
SHOWSHOWMANYTIMESTHE3MART3CANSESSIONSCHECKEDTHECELLCOMMITCACHETODECIDEWHETHERA#2
ROLLBACKISNEEDEDORNOTANDITFINDSTHETRANSACTIONSTATUSINFORMATIONINTHECELLCOMMITCACHE4HIS
AVOIDSAROUNDTRIPTOTHEDATABASELAYERTOCHECKTHATTRANSACTIONSSTATUSUSINGUNDODATAAVAILABLE
THERE4HERESMOREINFORMATIONABOUTHOWTHECONSISTENTREADSWORKWITH%XADATA3MART3CANSINTHE
cell blocks helped by commit cacheSTATISTICSECTION

chained rows processed by cell


"EFOREEXPLAININGWHATTHISSPECIFICSTATISTICMEANS LETSLOOKATHOW3MART3CANSDEALWITHCHAINED
ROWS#HAINEDROWSPOSEAPROBLEMFOR3MART3CANS4HECHAINEDROWShNEXTvROWPIECESMAYBE
ANYWHEREINTHESEGMENTANDTHANKSTOTHE!3-STRIPING ITSNOTGUARANTEEDTHATTHENEXTROWPIECESOF
ACHAINEDROWAREINTHESAMECELLWHERETHEROWHEADPIECEIS3OACHAINEDROWMAYBEPHYSICALLYSPLIT
ACROSSMULTIPLEDIFFERENTCELLS'IVENTHATCELLSNEVERSPEAKTOEACHOTHERFORSCALABILITYANDSIMPLICITY
HOWWOULDYOUBEABLETOCONSTRUCTTHEFULLROWWHENNEEDED4HEWAYRT[[baeCURRENTLYSOLVESTHIS
PROBLEMISTHATWHENEVERTHE3MART3CANHITSACHAINEDROWANDREALIZESITHASTOFETCHITSNEXTROW


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

PIECE RT[[baeFALLSBACKTOREGULARBLOCK)/FORTHATROWANDSENDSTHEBLOCKBACKTOTHEDATABASELAYER
FORNORMALPROCESSING4HEDATABASELAYERCANTHENEXTRACTTHEDATABLOCKADDRESSOFTHENEXTROWPIECE
FROMTHEROWHEADPIECEANDISSUETHEBLOCKREAD)/TOTHEAPPROPRIATECELLWHERETHE!3-STRIPINGHAS
PHYSICALLYPUTTHATBLOCK4HEREASONINGANDFUNDAMENTALPROBLEMBEHINDTHISOPTIMIZATIONISSIMILARTO
WHYCONSISTENTREADROLLBACKSHAVETOBEDONEINTHEDATABASELAYERASOPPOSEDTOACELLˆITSBECAUSE
SOMEOFTHEDATABLOCKSREQUIREDFORTHISOPERATIONMAYJUSTHAPPENTOBELOCATEDINANOTHERCELL AND
CELLSNEVERTALKTOOTHERCELLS
4HISBEHAVIORMEANSTHATYOUR3MART3CANPERFORMANCEWILLDROPIFITHITSALOTOFCHAINEDROWSAND
HASTOFETCHTHEIRNEXTROWPIECES)FYOUGETLUCKYANDACCESSONLYTHECOLUMNSTHATAREPRESENTINTHE
HEADPIECEOFTHEROW THENYOUWONTHAVETOFALLBACKTODATABASEBLOCK)/MODEFORTHESEBLOCKSAND
YOUR3MART3CANSWILLBEFAST)FYOUHAVETOFETCHTHENEXTROWPIECES HOWEVER THENYOUR3MART3CAN
WILLBECONSTANTLYINTERRUPTEDBYTHEFALL BACKTOBLOCK)/ ANDTHEDATABASELAYERSTARTSDOINGLOGICAL
READSANDPOSSIBLYSINGLE BLOCKPHYSICALREADSASWELL IFTHESEBLOCKSARENOTCACHEDINBUFFERCACHE 
4HISMEANSTHATYOURQUERYENDSUPWAITINGMOSTOFITSTIMEFORRANDOMSINGLE BLOCKREADSASOPPOSED
TOHIGHPERFORMANCE3MART3CANNING&OLLOWINGISTHERESPONSETIMEPROFILEFROMATESTSESSIONHITTING
MANYCHAINEDROWSANDSPENDINGPERCENTOFTHERESPONSETIMEONcell single block physical reads
WAITS4HANKFULLY THEREISASTATISTICtable fetch continued row WHICHISUSEFULALSOONNON %XADATA
DATABASES WHICHCOUNTSHOWMANYTIMESWEHADTOFOLLOWAhNEXTvROWPIECEOFACHAINEDROW)NTHE
FOLLOWINGCASEAROUNDROWPIECESHADTOBEFETCHEDUSINGSINGLEBLOCKREADS

B83DB4ACH?4BC0C8BC82734;C0

%('C0=4;BC0CccPQ[TUTcRWR^]cX]dTSa^f "!Z
%('C0=4;C8<431cX\T"(%b
$'!\b
%('C0=4;F08CRT[[b\PaccPQ[TbRP]$
%('C0=4;F08CRT[[bX]V[TQ[^RZ_WhbXRP[aTPS"("b


0RcXeTkB@;N83k4E4=CkF08CN2;0BB

'%kPgU"h$iV%#ebdkRRT[[bX]V[TQ[^RZ_WhbXRP[aTPSkDbTa8>
'
 #kPgU"h$iV%#ebdk>=2?Dk>=2?D


.OW THISchained rows processed by cellSTATISTICINDICATESTHATACHAINEDROWWASHITBY3MART3CAN
andWASPROCESSEDWITHINTHECELLEXACTLYTHEOPPOSITEOFWHATWEJUSTSAID 4HISSTATISTICGETS
INCREMENTEDINASPECIALCASEOFintra-block chaining INWHICHTHENEXTROWPIECEISSTOREDINTHESAME
BLOCKASTHECURRENTHEAD ROWPIECEOFACHAINEDROW)NTRA BLOCKCHAININGISUSEDFORSTORINGROWSWITH
MORETHANCOLUMNS)NSUCHCASESTHESTORAGECELLNOTICESTHATITJUSTHASTOFETCHTHERESTOFTHEROW
FROMTHESAMEBLOCK WHICHITALREADYHASOPENEDANDCANPROCESSTHISCHAINEDROWWITHOUTRESORTINGTO
DATABASEBLOCK)/



#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

 .OTE4HISCHAINEDROWPERFORMANCEPROBLEMAPPLIESONLYTOREGULARDATABLOCKSANDTHOSECOMPRESSEDWITH
REGULARBLOCK LEVELCOMPRESSION,/!$OR/,40 ,UCKILY ITISNOTAPROBLEMFOR%(## COMPRESSEDTABLESATALL AS
IN%(##THEROWSANDCOLUMNSAREPHYSICALLYORGANIZEDDIFFERENTLY!LSO THISISSUEDOESNOTAPPLYTOMIGRATED
ROWSWHERETHEENTIREROWHASMOVEDTOANOTHERBLOCKDUETOANUPDATE LEAVINGONLYASTUBHEADPIECEBEHIND
WHENFULL SCANNINGTHROUGHASEGMENT4HEFULLSCAN3MART3CANJUSTIGNORESTHEHEADPIECESOFMIGRATEDROWS
ASTHEENTIREROWISPHYSICALLYELSEWHERE.OTETHATUPDATESCAUSEOTHEREFFICIENCYISSUESFOR(## COMPRESSED
TABLES EVENIFCHAINEDROWSARENOTAPROBLEM

!NOTHERINTERESTINGCASEOFROWCHAININGPECULIARITIESISWHENYOUHAVEOVERCOLUMNSINATABLE
%VENWHENTHETOTALROWSIZEISSMALLENOUGHTOFITINSIDEASINGLEBLOCK WITHOVERCOLUMNS /RACLE
WOULDSTILLDOintra-block chaining INWHICHTHEROWISCHAINEDBUTALLTHEROWPIECESAREPHYSICALLY
INSIDETHESAMEBLOCK4HISWASNEEDEDBECAUSE/RACLEWANTEDTOMAINTAINBACKWARDCOMPATIBILITY
WHENTHEYINCREASEDTHECOLUMNLIMITFROMTOIN/RACLE4HEhCOLUMNCOUNTvBYTEINAROW
PIECEISJUSTONEBYTE ALLOWINGCOLUMNSPERROWPIECE BUTTHANKSTOCHAININGYOUCANHAVEMORE
COLUMNSINNEXTROWPIECES 4HIS HOWEVER CAUSEDINITIALLYSOMEPERFORMANCEPROBLEMSFOR%XADATA
3MART3CANS WHEREEVENINTRA BLOCKROWCHAININGRESULTEDINALOTOFSINGLEBLOCKREADS(OWEVERTHIS
BUG WASFIXEDIN/RACLE%XADATA0ATCH"UNDLE"0 ANDYOUSHOULDNTSEEITANYMORE
)TWASQUITEANINTERESTINGPROBLEMTOTROUBLESHOOTIFYOUAREINTERESTEDINSEEINGMOREDETAILS
INCLUDINGTHETROUBLESHOOTINGSEQUENCE YOUCANREAD4ANELSh4ROUBLESHOOTING%XADATA3MART3CANv
ARTICLEABOUTIT
Wcc_)Q[^VcP]T[_^STaR^\^aPR[TTgPSPcPca^dQ[TbW^^cX]V

chained rows rejected by cell


4HISSTATISTICSHOWSHOWMANYCHAINEDROWSWERENOTPROCESSEDINTHECELL7EDONTKNOWYETTHEEXACT
REASONFORrejectionASOPPOSEDTOSKIPPINGASINTHENEXTSTATISTIC chained rows skipped by cell).$URING
TESTING MOSTOFTHECHAINEDROWSWILLCAUSETHENEXTSTATISTICTOBEINCREMENTED3OFARWEASSUMETHAT
THISREJECTIONISJUSTASPECIALCASEOFNOTPROCESSINGTHECHAINEDROWINTHECELLANDFALLINGBACKTOBLOCK
)/INDATABASELAYER

chained rows skipped by cell


4HISISONEOFTHEMAINSTATISTICSTOLOOKATWHENTROUBLESHOOTINGhFORCEDvSINGLE BLOCKREADISSUESIN
3MART3CANSCAUSEDBYROWCHAINING&OLLOWINGISAMOREEXTENDEDOUTPUTFROMTHEPREVIOUSTESTCASE


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3


B83DB4ACH?4BC0C8BC82734;C0

%('C0=4;BC0CRR^]bXbcT]cVTcb!"!Z
%('C0=4;BC0CRR^]bXbcT]cVTcbUa^\RPRWT !(Z
%('C0=4;BC0CR^]bXbcT]cVTcbUa^\RPRWTUPbc_PcW"&'Z
%('C0=4;BC0CR^]bXbcT]cVTcbSXaTRc &"Z
%('C0=4;BC0CccPQ[TUTcRWR^]cX]dTSa^f "!Z
%('C0=4;BC0CRRT[[Q[^RZb_a^RTbbTSQhRPRWT[PhTa !( Z
%('C0=4;BC0CRT[[Q[^RZb_a^RTbbTSQhcg][PhTa !( Z
%('C0=4;BC0CRT[[Q[^RZb_a^RTbbTSQhSPcP[PhTa ##Z
%('C0=4;BC0CRRWPX]TSa^fbbZX__TSQhRT[[%''Z
%('C0=4;BC0CRWPX]TSa^fbaTYTRcTSQhRT[[!'
%('C0=4;C8<431cX\T"(%b
%('C0=4;F08CRT[[b\PaccPQ[TbRP]$'!\b
%('C0=4;F08CRT[[bX]V[TQ[^RZ_WhbXRP[aTPS"("b


0RcXeTkB@;N83k4E4=CkF08CN2;0BB

'%kPgU"h$iV%#ebdkRT[[bX]V[TQ[^RZ_WhbXRP[aTPSkDbTa8>
 #kPgU"h$iV%#ebdk>=2?Dk>=2?D

&ROMTHESESTATSYOUCANSEEHOW/RACLEHASSKIPPEDABOUTCHAINEDROWSINTHECELLANDHASSENT
THESEBLOCKSBACKTOTHEDATABASEFORREGULARPROCESSING !NOTHERINDICATORISTHEtable fetch continued
rowSTATISTIC WHICHISSIGNIFICANTLYHIGHERTHANchained rows skipped by cell4HISISBECAUSEINTHE
EXAMPLE SOMEOFTHEROWSWERESOBIGTHATTHEYDIDNTEVENFITINTOTWOBLOCKS BUTSPANNEDTHREE
BLOCKS4HUSFORSOMEROWS TWOFETCHESOFTHEhNEXTvROWPIECESHADTOBEDONEINTHEDATABASE!LSO
NOTEHOWTHEconsistent gets VALUE WHICHCOUNTSALL#2GETSDONEBOTHINTHEDATABASEand INCELLBY
3MART3CAN ISAROUND!TTHESAMETIME THESUBCOUNTERS consistent gets from cache#2GETSDONE
BYTHEDATABASELAYER FROMBUFFERCACHE ANDconsistent gets directCONSISTENTGETSDONEINCELLINTHIS
CASE INDICATEHOWMUCHOFTHE#2WORKWASDONEATTHECELLLEVELANDHOWMUCHWASADDITIONALLYDONE
ATTHEDATABASELEVEL
!SACONCLUSIONABOUTCHAINEDROWS THENEXTTIMEYOUSEETHATYOUR3MART3CANISWAITINGFORLOTSOF
cell single block physical readsANDISDOINGLOGICAL)/INSIDETHEDATABASELAYERconsistent gets from
cache ONEOFTHETHINGSTOCHECKISTHEABOVEMENTIONEDSTATISTICSTOSEEWHETHERYOUAREHITTINGCHAINED
ROWSANDHAVETOPROCESSTHEMINTHEDATABASE/FCOURSE DONTFORGETTHATTHE3MART3CANSOFFLOADONLY
THELARGESEGMENTSCANWORKLOAD BUTIFYOURQUERYPLANCONTAINSOTHERROWSOURCES INDEXRANGESCANSOR
SMALL CACHEDTABLESCANS THENSEEINGLOGICAL)/SANDSINGLE BLOCKPHYSICALREADSISEXPECTED,UCKILY
YOUCANUSEWAITINTERFACEDATAIN!3( EB4BB8>=OR31,4RACETOSEEAGAINSTWHICHOBJECTSTHESESINGLE
BLOCKREADSACCESSED4HERdaaT]cN^QYCOLUMNIN!3(AND^QYFIELDINRAW31,TRACEFILEREFERTOTHE
^QYTRcNXSOFTHETABLEORINDEXORPARTITION THESESSIONISREADINGFROM

physical read requests optimized


4HISSTATISTICSHOWSHOWMANY)/REQUESTSTODISKWEREAVOIDEDEITHERBYREADINGTHEDATAFROMFLASH
CACHEINSTEADOFDISKSORTHANKSTOTHESTORAGEINDEX)/ELIMINATION4HISSTATISTICISALSOPROPAGATEDTO
EB@;EB@;BC0CBANDEB46<4=CNBC0C8BC82BVIEWS


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

physical read total bytes optimized


4HISSTATISTICSHOWSHOWMANYBYTESWORTHOFPHYSICALDISKDRIVE)/WASAVOIDEDEITHERBYREADINGIT
FROMFLASHCACHEORTHANKSTOSTORAGEINDEX)/ELIMINATION7HENYOUALSOSEETHESTATISTICcell physical
I/O bytes saved by storage indexEQUALLYINCREASE THISMEANSTHAT)/WASCOMPLETELYAVOIDEDTHANKSTO
STORAGEINDEXES)FTHESTORAGEINDEXSAVINGSARESMALLERTHANTHETOTALOPTIMIZEDBYTES THENTHERESTOF
THE)/WASOPTIMIZEDTHANKSTOREADINGITFROMFLASHCACHE INSTEADOFTHEGOODOLDSPINNINGDISKSBUT
)/TOFLASHCARDSDIDSTILLHAPPENINTERNALLY )NTERESTINGLY THISSTATISTICISNOTPROPAGATEDTO
EB@;EB@;BC0CBANDEB46<4=CNBC0C8BC82BVIEWSATLEASTASOF/RACLE 

 +EVIN3AYSh)VENEVERREALLYAGREEDWITHTHISPARTICULARCOUNTER7HILEITISTRUETHATAREADFROM%XADATA
3MART&LASHCACHEISOPTIMIZED WHENCOMPAREDTOAREADFROMAHARDDISK ITISINNOWAYASOPTIMIZEDASAN)/
THATDIDNTHAPPEN)NMYMIND THESAVINGSTRACKEDBYTHISSTATISTICAREJUSTTOODISSIMILARTOBEALLTHATHELPFULv

table fetch continued row


4HISSTATISTICISNOT%XADATA SPECIFICBUTISRELEVANTWHENTROUBLESHOOTINGUNEXPECTEDSINGLE BLOCKREADS
DONEBYTHEDATABASE WHILEA3MART3CANISUSED4HISSTATISTICCOUNTSHOWMANYTIMES/RACLEHADTO
FETCHANEXTROWPIECEOFACHAINEDROWUSINGAREGULARSINGLEBLOCKREAD 

table scans (direct read)


4HISSTATISTICISNOT%XADATA SPECIFICITISSEENINANY/RACLEDATABASETHATISDOINGFULLTABLESCANSON
TABLESEGMENTSUSINGDIRECTPATHREADS$URINGSERIALEXECUTION THISSTATISTICISINCREMENTEDINTHE
BEGINNINGOFTHETABLESCAN BUTWITHPARALLELEXECUTION ITISINCREMENTEDEACHTIMEASLAVESTARTS
SCANNINGANEWROWIDRANGEDISTRIBUTEDTOIT$IRECTPATHREADSAREAPREREQUISITEFOR3MART3CANSTO
HAPPEN SOIFYOUDONTGETYOURQUERYTOUSE3MART3CANS CHECKWHETHERADIRECTPATHREADISUSEDFOR
SCANNINGTHETABLE

table scans (long tables)


4HISISASIMILARSTATISTICTOTHEPREVIOUSONE BUTITSHOWSWHETHERTHETABLESCANNEDWASCONSIDEREDTO
BELARGEORNOT!CTUALLY /RACLECONSIDERSTHISSEPARATELYFOREACHSEGMENT3OSOMEPARTITIONSOFATABLE
MAYBECONSIDEREDSMALL SOMELARGE)FTHESEGMENTUPTOTHEHIGHWATERMARK ISBIGGERTHAN
PERCENTOFTHEBUFFERCACHE THETABLEISCONSIDEREDLARGEANDDIRECTPATHREADSARECONSIDEREDEVENFOR
SERIALSCANS"UTNOTETHATTHISDECISIONLOGICTAKESOTHERTHINGSINTOACCOUNT LIKEHOWMANYBLOCKSOF
THATSEGMENTALREADYHAPPENDOBEINBUFFERCACHE 4HEPERCENTOFTHEBUFFERCACHERULEACTUALLY
COMESFROMTHENb\P[[NcPQ[TNcWaTbW^[SPARAMETER4HISPARAMETERDEFAULTSTOPERCENTOFBUFFERCACHE
SIZEINBLOCKS BUT/RACLEUSES¾Nb\P[[NcPQ[TNcWaTbW^[SASITSDIRECT PATH SCANDECISIONTHRESHOLD


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

Understanding SQL Statement Performance


4HISSECTIONFOCUSESONTHE31,STATEMENTSPERFORMANCEMETRICSANDUNDERSTANDINGWHEREASTATEMENT
ISSPENDINGITSTIMEANDWHEREITSBOTTLENECKSARE7EWILLLOOKATTHEMETRICSAVAILABLEANDWHENTOUSE
THEM BUTWEWILLCOVERTHEVARIOUS31,PERFORMANCEMONITORINGTOOLSINTHENEXTCHAPTER
%XADATA SPECIFICPERFORMANCESTATISTICSOFINDIVIDUAL31,STATEMENTSMAYBEMONITOREDUSINGTHE
FOLLOWINGVIEWS
v EB@;ANDEB@;0A40
v EB@;BC0CBANDEB@;BC0CBN?;0=N70B7
v EB@;N<>=8C>AANDEB@;N?;0=N<>=8C>A
v E02C8E4NB4BB8>=N78BC>AHANDTHE310N78BCN02C8E4NB4BBN78BC>AHPERSISTEDINTO
!72REPOSITORY
.OTETHATALLTHE%XADATA SPECIFICMETRICSYOUSEEINEB@;VIEWSAREREALLYTHESAMEONESYOUCANSEE
FROMEB4BBC0CVIEWS4HEYCOMEFROMTHESAMESOURCESBUTAREJUSTACCUMULATEDDIFFERENTLYEB4BBC0C
ACCUMULATESSTATSFORASESSION REGARDLESSOFWHICH31,STATEMENTORCOMMANDINCREMENTEDTHEM
WHILETHEVIEWSWITHAEB@;PREFIXAGGREGATESTATSFORDIFFERENT31,STATEMENTS REGARDLESSOFTHESESSIONS
EXECUTINGTHEM3O ITISPOSSIBLETOSEESOME%XADATAMETRICSAGGREGATEDBYA31,STATEMENT
(EREISANEXAMPLEOFTHEEB@;VIEWSCOLUMNSTHEREAREMANYMORECOLUMNSINEB@;VIEWS BUT
WELLSHOWTHOSEMOSTRELEVANTTOOURTOPICATHAND 

B@;-34B2eb`[

=P\T=d[[.Ch_T

B@;NC4GCE0A270A! 
B@;N83E0A270A! "
4G42DC8>=B=D<14A
?;0=N70B7NE0;D4=D<14A
278;3N=D<14A=D<14A
2?DNC8<4=D<14A
4;0?B43NC8<4=D<14A

8>N24;;N>55;>03N4;8681;4N1HC4B=D<14A
8>N8=C4A2>==42CN1HC4B=D<14A
?7HB820;NA403NA4@D4BCB=D<14A
?7HB820;NA403N1HC4B=D<14A
>?C8<8I43N?7HNA403NA4@D4BCB=D<14A
8>N24;;ND=2><?A4BB43N1HC4B=D<14A
8>N24;;N>55;>03NA4CDA=43N1HC4B=D<14A

4HEBOLDCOLUMNSARESPECIFICTO%XADATAALTHOUGHNON %XADATADATABASESALSOHAVETHESECOLUMNS
THANKSTOTHESINGLEDATABASESOFTWAREUSEDBOTHFOR%XADATAANDNON %XADATADATABASES 


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

Table 11.1. V$SQL Columns and Their Meanings

Column Name Metric Meaning


8>N24;;N>55;>03N4;8681;4N1HC4B (OWMANYBYTESWORTHOFSEGMENTREADSWEREOFFLOADEDTO
THECELLS4HECELLSEITHERDIDREADTHISDATAORSKIPPEDITIF
STORAGEINDEXESHELPEDTOSKIPBLOCKRANGES4HISMETRIC
CORRESPONDSTOTHEcell physical IO bytes eligible for
predicate offloadSTATISTICINEB4BBC0C
4HETOTALTRAFFICBYTESREADANDWRITE SENTBETWEENTHE
8>N8=C4A2>==42CN1HC4B DATABASENODEANDCELLS.OTETHATTHANKSTOTHEBUG
MENTIONEDEARLIER THE8>N8=C4A2>==42CN1HC4B
COLUMNISPOPULATEDALSOONNON %XADATAPLATFORMS BUT
YOUCANIGNOREITONTHESESYSTEMS
>?C8<8I43N?7HNA403NA4@D4BCB 4HENUMBEROFDISK)/REQUESTSTHATWEREEITHER
COMPLETELYAVOIDEDTHANKSTOSTORAGEINDEXESORDONE
AGAINSTCELLFLASHCACHECARDS

8>N24;;ND=2><?A4BB43N1HC4B 4HESIZEOFUNCOMPRESSEDDATATHECELLSHAVESCANNED
THROUGHDURINGA3MART3CAN.OTETHATTHECELLSDONOT
HAVETOACTUALLYUNCOMPRESSALLTHEDATATOKNOWTHE
UNCOMPRESSEDLENGTH4HE%(##COMPRESSIONUNIT
HEADERSSTOREBOTHTHECOMPRESSEDANDUNCOMPRESSED#5
LENGTHINFOINTHEM4HISMETRICISUSEFULFORESTIMATINGTHE
)/REDUCTIONFROM%(##COMPRESSION.OTETHATTHIS
METRICWORKSFOR%(##SEGMENTSONLY&ORREGULARBLOCK
LEVELCOMPRESSION THISMETRICJUSTSHOWSTHECOMPRESSED
SIZEOFDATA

8>N24;;N>55;>03NA4CDA=43N1HC4B 4HISMETRICSHOWSHOWMUCHDATAWASRETURNEDASARESULT
FROMANOFFLOADED3MART3CANACCESSPATH4HISISAMAIN
INDICATOROFSMARTSCANOFFLOADINGEFFICIENCYWHEN
COMPAREDWITH8>N24;;N>55;>03N4;8681;4N1HC4BTO
MEASURETHE)/REDUCTIONBETWEENCELLSANDDATABASE OR
8>N24;;ND=2><?A4BB43N1HC4BWHENMEASURINGTHETOTAL)/
REDUCTIONTHANKSTOOFFLOADINGANDCOMPRESSION


(EREISEXAMPLEOUTPUTFROMAQUERYONAN%(## COMPRESSEDTABLEWHERETHETABLESCANWASOFFLOADED
TOTHECELL4HEEB@;TABLEOUTPUTISPIVOTEDFORBETTERREADABILITY


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

B@;-B4;42CBD<^QYTRcNXS5A><c#NWRRN`dTahNWXVWF74A4^f]Ta;8:4B*

BD<>1942CN83

"(&# 4 !


B@;-B4;42C5A><eb`[F74A4b`[NXS,ae "&\Vf_]Zg*

(output pivoted and edited for better readability)

8>N24;;N>55;>03N4;8681;4N1HC4B)% ''(!#(!'
8>N8=C4A2>==42CN1HC4B)&!!""" !
?7HB820;NA403NA4@D4BCB)%$#&
?7HB820;NA403N1HC4B)% ''('!!&!
?7HB820;NFA8C4NA4@D4BCB)
?7HB820;NFA8C4N1HC4B)
>?C8<8I43N?7HNA403NA4@D4BCB)&
;>2:43NC>C0;) 
?8==43NC>C0;)!
8>N24;;ND=2><?A4BB43N1HC4B) !&# $'$ & 
8>N24;;N>55;>03NA4CDA=43N1HC4B)&! &$(%'

)NTHISCASETHE8>N24;;N>55;>03NA4CDA=43BYTESISMUCHSMALLERTHANTHE8>N24;;N>55;>03N4;8681;4
BYTESTHUS THE3MART3CANDEFINITELYDIDHELPTOREDUCETHEDATAFLOWBETWEENTHECELLSANDTHE
DATABASE&URTHERMORE THE8>N24;;ND=2><?A4BB43N1HC4BISWAYBIGGERTHANTHE?7HB820;NA403N1HC4B
WHICHINDICATESTHATTHE%(##HELPEDTOREDUCETHENUMBEROFBYTESTHATHADTOBEREADFROMDISKBY
THECELLS THANKSTOCOMPRESSION.OTETHATTHE8>N8=C4A2>==42CN1HC4BISNOTMUCHGREATERTHANTHE
8>N24;;N>55;>03NA4CDA=43N1HC4B WHICHINDICATESTHATFORTHIS31, ALMOSTALLTHETRAFFICWASDUETOTHE
DATARETURNEDBY3MART3CANS4HEREWASNOEXTRATRAFFICDUETOOTHERREASONSLIKE4EMPTABLESPACE
READSWRITESTHANKSTONON OPTIMALSORTS ANDTHEREWERENOHASHJOINSOROTHERWORK AREAOPERATIONSOR
DATABASEBLOCK)/S THANKSTOCHAINEDROWSORIN DATABASECONSISTENTREADPROCESSING

 .OTE3MART3CANNINGMAKESDATAretrievalFROMSEGMENTSFASTER BUTITDOESNTDOANYTHINGTOSPEEDUP
JOINING SORTING ANDAGGREGATEOPERATIONS WHICHAREAPPLIEDAFTERTHEDATAHASBEENRETRIEVEDFROMTHESEGMENTS
!NOTABLEEXCEPTIONISTHE"LOOMFILTERPUSHDOWNTOCELLS WHICHALLOWSTHECELLSTOFILTERTHEDATAFROMTHEPROBE
TABLEUSINGAHASHBITMAPBUILTBASEDONTHEDRIVINGROWSOURCESDATAINTHEHASHJOIN

7HILETHISEXAMPLEUSEDTHEEB@;VIEW WHICHSHOWS31,CHILDCURSORLEVELSTATISTICS YOUCOULDALSO


USEEB@;N?;0=N<>=8C>ATHECOLUMNS?;0=N;8=4N83 ?;0=N>?4A0C8>= ANDSOON TOMEASURETHESE
METRICSFOREACHEXECUTIONPLANLINE4HISISUSEFULBECAUSEASINGLEEXECUTIONPLANUSUALLYACCESSESAND
JOINSMULTIPLETABLES ANDDIFFERENTTABLESMAYBENEFITFROMTHE3MART3CANOFFLOADINGDIFFERENTLY7EWILL
LOOKATSOMESCRIPTSANDTOOLSTHATUSETHISDATAINTHENEXTCHAPTER


#(!04%2 5.$%234!.$).'%8!$!4!0%2&/2-!.#%-%42)#3

Summary
4HEEMPHASISOFTHISCHAPTERWASONUNDERSTANDING%XADATAPERFORMANCEANDTHEVARIOUSRELATED
METRICS/RACLEOFFERSFORUS)TISIMPORTANTTOREMEMBERTHATTHE%XADATA3MART3CANPOTENTIALLYMAKES
YOURDATARETRIEVALSCANNINGFASTER BUT3MART3CANSHAPPENONLYWHENDIRECTPATHREADSANDFULL
SEGMENTSCANSAREUSED!LSO REMEMBERTHATITISNOTPOSSIBLETODETERMINEWHETHERA3MART3CAN
ACTUALLYKICKEDINJUSTBYLOOKINGATTHEEXECUTIONPLANALONE9OUSHOULDALWAYSCHECKADDITIONAL
METRICS LIKEWHETHERYOUSEETHE cell smart table/index scanWAITEVENTSINYOURSESSIONANDWHETHERTHE
IO_CELL_OFFLOAD_ELIGIBLE_BYTESINEB@; ORcell physical I/O bytes eligible for predicate offload
STATISTICINEB4BBC0C INCREASESWHILEYOURUNYOUR31,-ANYOFTHEOTHERMETRICSEXPLAINEDHEREWILL
HOPEFULLYBEHELPFULFORUNDERSTANDINGANDTROUBLESHOOTINGADVANCEDPERFORMANCEISSUES SUCHASWHEN
A3MART3CANKICKSINBUTISTHROTTLEDBYAMULTITUDEOFSPECIALCONDITIONSLIKECHAINEDROWS CONSISTENT
READROLLBACKS ORJUSTRUNNINGOUTOFCELLSERVERRESOURCES)NTHENEXTCHAPTERWEWILLSEEHOWTOUSETHIS
KNOWLEDGEINMONITORINGANDTROUBLESHOOTING%XADATAPERFORMANCE ANDWEWILLLOOKDEEPERINTOTHE
CELL LEVELPERFORMANCEMETRICSFROMRT[[baeANDTHEOPERATINGSYSTEM TOO


C H A P T E R 12



Monitoring Exadata Performance

"YNOWYOUHAVELEARNEDABOUTTHEKEY%XADATAPERFORMANCEFEATURESANDTHERELATEDPERFORMANCE
METRICS,ETSSEEHOWWECANUSETHESEFOREVERYDAYTASKS7EWILLLOOKATSTANDARDTOOLSAVAILABLEFOR
DATABASE LAYERANDCELLPERFORMANCEMONITORING ANDHOWTOINTERPRETTHEIROUTPUT
/RACLE$ATABASEANDTHE%XADATACELLSPROVIDEAHUGEVARIETYOFDIFFERENTMETRICS BUTBEFORE
MONITORINGANYMETRICS YOUSHOULDASKYOURSELFWHYYOUAREMONITORINGTHEM!DDITIONALLY YOUSHOULD
KNOWWHATYOURACTIONWOULDBEIFAMETRICCROSSESSOMETHRESHOLD4HISLEADSTOTHEFOLLOW UP
QUESTIONWHICHEXACTTHRESHOLDSHOULDPROMPTSOMEACTIONFROMYOUˆANDWHY)NOTHERWORDS YOU
SHOULDKNOWWHATAREYOUTRYINGTOACHIEVEGOODRESPONSETIMESFORUSERS ANDHOWPERFORMANCE
METRICSRELATETOTHAT
4HEMONITORINGTASKSCOVEREDHERECANBEDIVIDEDINTOTHEFOLLOWINGCATEGORIES
v 31,STATEMENTRESPONSETIMEMONITORING
v $ATABASELAYERUTILIZATIONANDEFFICIENCYMONITORING
v 3TORAGECELLLAYERUTILIZATIONANDEFFICIENCYMONITORING
v !DVANCEDMETRICSANDMONITORINGFOR%XADATAPERFORMANCETROUBLESHOOTING
.OTETHATWEWILLFOCUSONTHE%XADATA SPECIFICPERFORMANCETOPICSHEREANDNOTTHEWHOLEWIDE
RANGEOFOTHER/RACLEPERFORMANCETOPICS LIKELOCKCONTENTIONORGENERAL31,PERFORMANCEISSUES

A Systematic Approach
7HATEVERMETRICSYOUMONITOR YOUSHOULDHAVEAPURPOSEINMIND)NOTHERWORDS DONTCOLLECTAND
DISPLAYMETRICSJUSTBECAUSETHEYAREAVAILABLETHISWILLLEADYOUNOWHEREORPOTENTIALLYEVENMISLEAD
YOUTOFIXINGTHEWRONGPROBLEM.OTETHATTHETERMhPERFORMANCEvISVAGUEˆDIFFERENTPEOPLEMAY
MEANDIFFERENTTHINGSWHENTHEYUSEIT&ROMAN)4SYSTEMUSERSPERSPECTIVE PERFORMANCEISULTIMATELY
ONLYABOUTONETHINGˆRESPONSETIME!NDNOTSOMERESPONSETIMESOFINDIVIDUALWAITEVENTSMEASURED
ATALOWLEVELTHEENDUSERSDONTCAREABOUTTHAT4HEYDOCAREABOUTHOWMUCHtheyHAVETOWAITFOR
THEIRbusiness taskTOCOMPLETE LIKETHETIMEITTAKESFROMTHEREPORTSUBMISSIONTOACTUALLYSEEINGITS
OUTPUT4HISTIMEISMEASUREDINREGULARWALL CLOCKTIMEITSASSIMPLEASTHAT
)FYOURPURPOSEINMONITORINGISTOENSUREGOODRESPONSETIMESFORYOURAPPLICATIONUSERS THENYOU
SHOULDMEASUREWHATMATTERSˆRESPONSETIMEASYOUREND USEREXPERIENCESIT4HISWOULDBETHEIDEAL
ENTRYPOINTTOPERFORMANCEMONITORING)NADDITIONTOTHISENTRYPOINT YOUSHOULDMEASUREMORE
DETAILEDLOWER LEVELMETRICSTOBREAKTHEENDUSERRESPONSETIMEDOWNINTOINDIVIDUALCOMPONENTS LIKE
TIMESPENTINANAPPLICATIONSERVERANDDATABASETIME9OURAPPLICATIONINSTRUMENTATIONAND
MONITORINGTOOLSSHOULDKEEPTRACKOFWHICHDATABASESESSIONSWEREUSEDFORWHICHEND USERTASK SO


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

YOUCANREPORTWHATTHESEEXACTDATABASESESSIONSWEREDOINGWHENAUSEREXPERIENCEDUNACCEPTABLE
RESPONSETIMES

 .OTE7EDELIBERATELYSAIDunacceptable response timesHEREINSTEADOFJUSThUSEREXPERIENCEDPERFORMANCE


PROBLEMSv7HENEVERANYONECOMPLAINSABOUTAPERFORMANCEPROBLEM YOUSHOULDCLARIFYWHATTHEYACTUALLYMEAN
BYTHATANDHOWITWASMEASURED$OESANYUSERACTUALLYEXPERIENCEFARTOOLONGRESPONSETIMESINTHEIR
APPLICATION ORDIDSOMEMONITORINGSYSTEMMERELYRAISEANALARMABOUThTOOHIGHv#05UTILIZATIONORANYOTHER
SECONDARYMETRICLIKETHAT9OURSUBSEQUENTACTIONSWOULDDEPENDONTHEPROBLEMYOURETRYINGTOSOLVE)DEALLY
YOUSHOULDNOTUSEAPERFORMANCETOOLOR/RACLEMETRICFORDETERMININGwhetherYOUHAVEAPERFORMANCEPROBLEM
9OURSTARTINGPOINTSHOULDBETHEUSERSWHOREPORTAPROBLEM ORAPPLICATION LEVELMETRICS WHICHSEETHEDATABASE
RESPONSETIMEFROMTHEAPPLICATIONPERSPECTIVE.OMATTERHOWGOODTHEDATABASEMETRICSLOOK IFTHEAPPLICATION
WAITSFORTHEREPORTCOMPLETIONFORAGES YOUHAVEAPERFORMANCEPROBLEMTODRILLDOWNINTO#ONVERSELY NOMATTER
HOWhBADvYOURDATABASEMETRICSSEEMTOBE IFYOURAPPLICATIONRESPONSETIMESARESATISFACTORY YOUDONTHAVE
ANACUTENEEDTOSTARTFIXINGANYTHING

7HENEXAMININGPERFORMANCEMETRICSBECAUSEOFANONGOINGPROBLEMOFTOOLONGRESPONSETIMES YOU
SHOULDSTARTBYIDENTIFYINGTHESESSIONSSERVICINGTHISSLOWAPPLICATIONORJOBANDTHENDRILLINGDOWNINTO
THATRESPONSETIME)TWOULDBEMORECORRECTTOCALLTHISPERFORMANCETROUBLESHOOTING NOTJUST
MONITORING
.OTETHATTHEREAREOTHERKINDSOFPERFORMANCEMONITORINGTASKS WHICHYOUMAYWANTTODOˆFOR
EXAMPLE PROACTIVEUTILIZATIONANDEFFICIENCYMONITORING0ERFORMINGTHESETASKSALLOWSYOUTOKEEPAN
EYEONTHEUTILIZATIONHEADROOMLEFTINTHESERVERSANDDETECTANYANOMALIESANDSUDDENSPIKESIN
SYSTEMUTILIZATIONANDLOW LEVELRESPONSETIMES POSSIBLYEVENBEFOREUSERSNOTICEARESPONSETIME
DIFFERENCE9ETANOTHERREASONFORCOLLECTINGANDMONITORINGPERFORMANCEANDUTILIZATIONDATAISFOR
CAPACITYPLANNINGˆBUTCAPACITYPLANNINGISOUTSIDETHESCOPEOFTHISBOOK!LSO BECAUSETHISISA
DATABASEBOOK WEWONTDIVEINTOANYEND TO ENDPERFORMANCEMEASUREMENTTOPICS WHICHWOULD
INVOLVEIDENTIFYINGTIMESPENTINAPPLICATIONSERVERS ONTHENETWORK ANDSOON
7EWILLSTARTBYLOOKINGATHOWTOIDENTIFYWHEREALONG RUNNINGQUERYISSPENDINGMOSTOFITSTIME
7ELLALSOLOOKATHOWTOTELLWHETHERAQUERYISTAKINGFULLADVANTAGEOF%XADATASPERFORMANCEFEATURES

Monitoring SQL Statement Response Time


4HEBESTTOOLFORMONITORINGLONG RUNNINGQUERIESIS/RACLEG@S31,2EAL4IMEMONITORINGPAGE)TIS
ABLETOGATHERALLTHEKEYPERFORMANCEINFORMATIONONTOASINGLEPAGE EVENINTHECASEOFPARALLEL
EXECUTIONACROSSMULTIPLE2!#INSTANCES
4HE31,-ONITORINGFEATUREREQUIRESYOUTOHAVEA$IAGNOSTICSAND4UNING0ACKLICENSE31,
-ONITORINGKICKSINAUTOMATICALLYIFYOURUNYOURQUERYWITHPARALLELEXECUTIONORWHENASERIALQUERY
CONSUMESMORETHANSECONDSOF)/AND#05TIMEINTOTAL!DDITIONALLY YOUCANCONTROLTHE
MONITORINGFEATUREWITH<>=8C>AAND=>N<>=8C>AHINTS)FYOUWANTTOMONITORYOURFREQUENTLYEXECUTED
SHORT RUNNINGQUERIES THEBESTTOOLFORTHISWOULDBETOUSE!3(DATAANDLISTTHETOPWAITEVENTSANDTOP
ROWSOURCESFROMTHEREUSINGTHEB@;N?;0=N;8=4COLUMNSINTHEE02C8E4NB4BB8>=N78BC>AHVIEW 
)FYOUAREALREADYAWAREOFAPERFORMANCEPROBLEMPERHAPSYOURUSERSAREALREADYCOMPLAININGOF
TOOLONGRESPONSETIMES THENYOUSHOULDUSEATOP DOWNAPPROACHFORMONITORING9OUSHOULDIDENTIFY


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

THESESSIONS OFTHEPROBLEMATICUSERSAPPLICATIONSORREPORTSANDDRILLDOWNINTOWHATTHESESESSIONS
AREDOINGWITH!3(WHICHGIVESYOUTHE31,?)$SOFTHETOP31,STATEMENTSFORTHESESESSIONS AND
WHENNEEDED THENDRILLDOWNFURTHERINTOTHETOPSTATEMENTSWITH31,-ONITORINGREPORTS

-ONITORING31,3TATEMENTSWITH2EAL 4IME31,
-ONITORING2EPORTS
7HENYOUCLICKTHE31,-ONITORINGLINKINTHE%NTERPRISE-ANAGERPERFORMANCEPAGE YOUWILLSEETHE
LATESTMONITOREDQUERIES4HE31,-ONITORINGREPORTSAREPRESENTIN'RID#ONTROLG2ORG2
 )FYOUARENOTUSING'RID#ONTROL THENYOUCANEITHERUSETHEBUILT IN%NTERPRISE-ANAGER
$ATABASE#ONSOLEORRUNTHE31,-ONITORINGREPORTSMANUALLYFROM31,
0LUSASEXPLAINEDSHORTLY.OTE
THATTHE31,-ONITORINGFEATUREREQUIRES$IAGNOSTICSAND4UNING0ACKLICENSES
&IGURE SHOWSTHEENTRYPAGETOTHE31,-ONITORINGREPORTS9OUCANGETTHEREBYCLICKINGTHE
31,-ONITORINGLINKATTHEBOTTOMOFTHE0ERFORMANCEPAGEIN'RID#ONTROL4HE31,-ONITORINGPAGE
ASSEENIN&IGURE  LISTSTHECURRENTLYRUNNING QUEUED ANDRECENTLYCOMPLETEDMONITORED31,
EXECUTIONS WITHSOMEKEYPERFORMANCEMETRICSANDDETAILS SUCHASTHEDEGREEOFPARALLELISM


Figure 12-1. Enterprise Manager’s overview of Monitored SQL Executions

4HE3TATUSCOLUMNSHOWSANICONWITHONEOFFOURSTATUSESˆRUNNING DONE ERROR ORQUEUED7HENYOU


CLICKTHESTATUSICON YOUWILLBETAKENTOTHE31,STATEMENTSDETAILEDMONITORINGPAGE/NEOFTHEMOST
IMPORTANTPIECESOFINFORMATIONISTHEDurationCOLUMN SHOWINGHOWLONGASTATEMENTHASBEENACTIVE
4HEDURATIONISTHEWALL CLOCKTIMEFROMTHESTARTOFTHESTATEMENTEXECUTIONTHROUGHTHEFINISH ORTOTHE
CURRENTTIMEINTHEEVENTTHESTATEMENTISSTILLEXECUTING&IGURE ILLUSTRATESTHEDIFFERENCEBETWEEN
DURATIONWALL CLOCK AND#05TIMEINSTATEMENTEXECUTION


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%


Figure 12-2. Statement Duration compared to Database Time in the SQL Monitoring page

4HE$URATIONCOLUMNSHOWSWHATUSERSCAREABOUT WHICHISTHERESPONSETIMEOFAQUERYSINCETHE31,
EXECUTIONSTART4HISISTHETIMEtheyHAVEHADTOWAITFORTHE31,TOCOMPLETE/FCOURSE THEENDUSERS
MAYHAVEHADTOWAITFORMUCHLONGERTHANTHEDURATIONOFTHEQUERY ASTHEPAGEIN&IGURE SHOWS
ONLYTHEDATABASERESPONSETIME4IMEMAYHAVEALSOBEENSPENTINTHEAPPLICATIONLAYERORTHENETWORK
CONNECTIONINBETWEENTHEUSERANDTHEAPPLICATIONSERVER
)TISIMPORTANTTOKNOWTHATTHEDURATIONMEASURESTIMEFROM31,EXECUTIONSTARTALLTHEWAYUNTIL
THECURSORISCLOSEDORCANCELLEDFOREXAMPLE WHENALLDATAISFETCHEDFROMIT 4HISMEANSTHATIFYOUR
DATABASECANPROCESSTHEQUERYINSECONDS BUTTHENMILLIONSOFROWSAREFETCHEDAFEWATATIME YOUR
QUERYWILLTAKEALONGTIMEASFARASTHEAPPLICATIONISCONCERNEDTHANKSTOTHENETWORKPING PONG BUT
INFACTONLYALITTLETIMEISSPENTPROCESSINGWITHINTHEDATABASE4HE$URATIONCOLUMNSTILLSHOWSLONG
QUERYhRUNTIME vASTHECURSORISSTILLKEPTOPENFORFETCHINGOFTHEDATA2EMEMBER THEDURATION
MEASURESTIMEFROMWHENTHECURSORISEXECUTEDALLTHEWAYTOWHENITISFINALLYCLOSEDAFTERALLTHE
FETCHESAREDONEORTHEAPPLICATIONHASFETCHEDENOUGH
4HISLEADSUSTOTHENEXTIMPORTANTMETRICˆ$ATABASE4IME SEENINTHESIXTHCOLUMNIN&IGURE 
4HE$ATABASE4IMEMETRICSHOWSTHETOTALTIMEYOURQUERYSPENTEXECUTINGin the database3O IFYOU
RUNASERIAL$-,THATRUNSFORSECONDSANDSPENDSALLOFTHETIMEEXECUTINGinsideTHEDATABASE YOU
WILLENDUPSEEINGSECONDSOFDATABASETIME TOO(OWEVER IFYOUARERUNNINGSOMEB4;42CSTATEMENT
ANDAREFETCHINGALOTOFROWS CAUSINGYOURSESSIONTOSPENDLETSSAY OFITSTIMEEXECUTINGINTHE
DATABASEANDANOTHERWAITINGFORTHENEXTFETCHCOMMANDONCEITHASSENTANARRAYOFROWSBACKTO
THEAPPLICATION YOUWOULDSEEONLYHALFOFTHATTOTAL SECONDDURATIONASDATABASETIME)NOTHER
WORDS YOUWOULDSEESECONDSOFDATABASETIME ASTHEDATABASESESSIONHASBEENSERVICINGYOUR
REQUESTONLYFORSECONDSANDTHERESTOFTHETIMEITWASIDLE
,OOKINGATTHESECONDENTRYIN&IGURE  YOUSEETHATTHEdurationOFTHEQUERYTHETIMEFROM
WHENTHEEXECUTIONPHASESTARTED ISMINUTES THEQUERYHASEXECUTEDINSERIALTHEFIFTHCOLUMN
SHOWSTHAT ANDITHASCONSUMEDONLYMINUTESOFdatabase time3OTHISINDICATESTHATTHEEXECUTING


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

SESSIONHASBEENDOINGSOMETHINGELSEFORMINUTES)TWASEITHERIDLEPROBABLYWAITINGFORTHENEXT
FETCHREQUEST OREXECUTINGSOMEOTHERSTATEMENTWHILETHEFIRSTSTATEMENTSCURSORWASSTILLOPEN 
4HEEXAMPLEWEJUSTDISCUSSEDWASABOUTASINGLESERIALQUERY7HENYOURUNAPARALLELQUERY YOU
HAVEMULTIPLESESSIONSEXECUTINGPIECESOFTHESAMEQUERYFORYOU4HENTHEDATABASETIMEMIGHTENDUP
BEINGMUCHHIGHERTHANTHEDURATIONRESPONSETIME OFYOURQUERY)FYOULOOKATTHEFIRSTENTRYIN&IGURE
  YOUSEEASTATEMENTWITHDURATIONOFSECONDS BUTTHETOTALTIMESPENTINTHEDATABASEIS
MINUTES7HENYOULOOKATTHEparallelCOLUMN YOUSEETHATTHESESSIONWASEXECUTEDWITHPARALLEL
DEGREE WHICHMEANSTHATYOUHADMULTIPLESESSIONSACTIVELYWORKINGINTHEDATABASEFORYOURQUERY
!LLOFTHESEPARALLELSESSIONSDATABASETIMEPLUSTHEQUERYCOORDINATORSTIMEISADDEDINTOTHE$ATABASE
4IMECOLUMN4HISDATABASETIMEGIVESANIDEAOFHOWMUCHWORKWASDONEINTHEDATABASE"UT
BECAUSETHESTATEMENTWASPARALLELIZED YOUDONTHAVETOWAITFORTHATLONG)FYOURANTHATSAMEQUERY
INSERIALMODE THENTHEDATABASETIMEWOULDBEINTHEBALLPARKOFHOWMUCHTIMEYOUMIGHTHAVETO
WAIT0LEASETAKETHATLASTSTATEMENTWITHAGRAINOFSALT ASINPRACTICEMANYOTHERTHINGSMAYHAPPENIN
31,EXECUTIONWHENSWITCHINGFROMPARALLELEXECUTIONTOSERIAL SOYOUMIGHTHAVESOMEPLEASANTOR
UNPLEASANTSURPRISESINTHERESPONSETIME 
.OTETHATTHESEENTRIESINTHE31,-ONITORINGOVERVIEWPAGEARENOT31,statement-SPECIFIC BUT
31,STATEMENT execution SPECIFIC3O IFTWOUSERSESSIONSWERERUNNINGTHESAMESTATEMENT YOUWOULD
SEETWOSEPARATEENTRIESINTHISLIST4HISALLOWSYOUTOEXAMINEEXACTLYWHATTHEPROBLEMISWITHA
SPECIFICUSERWHOISCOMPLAINING ASOPPOSEDTOLOOKINGATSTATEMENT LEVELAGGREGATEMETRICSLIKETHOSE
EB@;PROVIDES ANDTRYINGTOFIGUREOUTyourUSERSPROBLEMFROMTHERE

Real-Time Monitoring of Single Long-Running Query


/NCEYOUHAVEIDENTIFIEDYOURQUERYOFINTERESTFROMTHELISTOFALLLONG RUNNINGQUERIES YOUCANCLICKON
ITShRUNNINGvICONINTHELEFTSIDEOFTHELISTANDYOUWILLBETAKENTOTHE-ONITORED31,%XECUTION$ETAILS
PAGESHOWNIN&IGURE 4HISPAGEHASANUMBEROFSUB TABS SOFEELFREETOEXPLOREANDSEEALLTHE
INFORMATIONTHATSAVAILABLETHERE


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

Figure 12-3. Monitored SQL statement execution details

4HE-ONITORED31,%XECUTION$ETAILSPAGEHASALOTOFINFORMATIONINIT4HISPAGEISPRETTYSELF
EXPLANATORYIFYOUHAVEREAD31,EXECUTIONPLANSBEFORE SOWEWONTGOTHROUGHEVERYSINGLEDETAILHERE
BUTWILLFOCUSONTHEMOSTIMPORTANTMETRICS#OMPAREDTOOLD FASHIONED31<BNG?;0=OUTPUT THE31,
-ONITORINGPAGEISVERYINTERACTIVE SOMAKESURETHATYOUHOVERYOURMOUSEOVERANDCLICKONALMOST
EVERYTHINGONTHESCREEN TOSEETHEFULLARRAYOFFUNCTIONALITYAVAILABLETOYOU
,ETSSTARTFROMTHETOPSECTIONONTHEPAGE!TTHETOPOFTHESCREEN RIGHTAFTERTHE-ONITORED31,
%XECUTION$ETAILSHEADER YOUSEEALITTLEICON WHICHSHOWSTHESTATUSOFTHESELECTED31,STATEMENTS
EXECUTION4HELITTLECIRCLEWILLMEANTHATTHESTATEMENTISSTILLBEINGEXECUTEDTHECURSORHASNOTBEEN
CLOSEDNORCANCELLED 
4HE/VERVIEWSECTION ILLUSTRATEDIN&IGURE  WILLSHOWSOMEBASICDETAILS LIKEWHICH31,)$IS
BEINGEXECUTED BYWHOM ANDSOON9OUCANSEETHE31,TEXTWHENYOUCLICKONTHELITTLE(i)ICONNEXTTO
THE31,)$9OUWILLSEETHE31,STATEMENTTEXTAND BEGINNINGWITHVERSION YOUWILLALSOSEETHE
BINDVARIABLEVALUESUSEDFORTHEEXECUTION&IGURE SHOWSTHEDISPLAYTHATYOUGETBYCLICKINGTHAT(i)
ICON


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%


Figure 12-4. SQL Monitoring overivew section


Figure 12-5. Bind variable values in the SQL Monitoring detail page

/FCOURSE WHETHERYOUSHOULDUSEBINDVARIABLESFORYOURLONG RUNNINGREPORTSAND$7QUERIESISAN


ENTIRELYSEPARATEQUESTION9OUSHOULDNTUSEBINDSFORLONG RUNNINGQUERIESINYOUR$7YOUDWANTTO
SACRIFICESOMERESPONSETIMEFORHARD PARSINGANEWQUERYPLANFOREACHCOMBINATIONOFLITERALVALUES
ANDPOSSIBLYGETANOPTIMALPLANFOREACHVARIABLESET.EVERTHELESS MONITORINGBINDVARIABLEVALUESOF


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

ANALREADYRUNNINGQUERYISEASYWITH/RACLEANDLATER BECAUSEYOUNOLONGERMUSTRESORTTOTHE
>A0341D64AA>ABC02:COMMAND
4HE4IME7AIT3TATISTICSSECTIONIN&IGURE SHOWSTHEFAMILIARMETRICSOF$URATIONAND
$ATABASE4IMEOFASTATEMENT-OVEYOURMOUSEOVERTHEDIFFERENTDATABASETIMECOMPONENTSTOSEE
HOWMUCHTIMEWASSPENTWAITINGINSIDETHEDATABASECOMPAREDTORUNNINGON#054HE7AIT!CTIVITY
BARSHOWSTHEBREAKDOWNOFWAITEVENTS.OTETHATTHEINTHISBARMEANSOFTHEwait time
COMPONENTOFDATABASETIME NOTOFTHEENTIREDATABASETIMEWHICHALSOINCLUDES#05TIME 


Figure 12-6. Time and Wait Statistics in the SQL Monitoring detail page

4HE)/3TATISTICSSECTIONIN&IGURE ASHOWSSOMEKEY)/STATISTICSFORSTATEMENTEXECUTION


Figure 12-7a. I/O Statistics in the SQL Monitoring detail page

4HE"UFFER'ETS BARSHOWSTHETOTALNUMBEROFLOGICAL)/SDONEINBOTHTHEDATABASELAYERANDTHE
CELLSIF3MART3CANKICKEDIN 4HE)/2EQUESTSAND)/"YTESSTATISTICSARESELF EXPLANATORY BUTNOTETHAT
THOSEMETRICSSHOWALL)/DONEFORTHEGIVENSTATEMENT WHICHINCLUDESTHE3MART3CAN)/ ANYREGULAR
BLOCK)/ ANDALSO4%-0TABLESPACE)/DONEFORSORTING HASHJOINS ANDFORANYOTHERWORKAREA
OPERATIONSTHATDIDNTFITINTOALLOWED0'!MEMORY .OWYOUSHOULDBEGINTOUNDERSTANDWHYTHE#ELL
/FFLOAD%FFICIENCYISNEGATIVEFORTHESTATEMENTEXECUTIONINTHEFIGURE4HISMETRICSHOULDIDEALLYSHOW
THEPERCENTAGEOFDISK TO DATABASE HOSTINTERCONNECTTRAFFICTHATWASAVOIDEDTHANKSTOTHE3MART3CANS
PERFORMINGFILTERINGANDPROJECTIONEARLYINTHECELLSANDRETURNINGONLYASUBSETOFDATA(OWEVER INA
COMPLEXEXECUTIONPLANTHEREISMUCHMOREGOINGONTHANJUSTA3MART3CANAGAINSTASINGLETABLE9OU
HAVEJOINS AGGREGATEOPERATIONS SORTING ANDDIRECTPATHDATALOADS WHICHALLUSEEXTRA)/BANDWIDTH
DRIVINGTHEOFFLOADEFFICIENCYPERCENTAGEDOWN4HISISAGOODEXAMPLEOFWHYFOCUSINGONONLYASINGLE
RATIOISNOTAGOODIDEA4HESINGLEPERCENTAGEVALUEFOROFFLOADEFFICIENCYHIDESALOTOFINFORMATION SUCH


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

ASWHERETHEPERCENTAGETAKENWASFROMANDTHErealVALUESBEHINDIT9OUCANMOVEYOURMOUSEOVER
THEPERCENTAGEANDSEETHEUNDERLYINGVALUESUSEDFORTHECALCULATION
3OWHENMOVINGYOURMOUSEOVERTHERATIOSEE&IGURE B YOULLSEETHATTHECELLSDIDREAD
'"FROMDISKS BUTMUCHMOREDATA'" WASACTUALLYSENTBACKANDFORTHOVERTHEINTERCONNECT
4HEMETRICEXPLANATIONSIN&IGURE BAREACTUALLYINCORRECT4HE"YTES2EAD&ROM$ISKSACTUALLY
MEANSTOTALBYTESOFREADSandWRITESTHAT/RACLE$ATABASEHASISSUED NOTJUSTFOR3MART3CANS BUTFOR
ANYREASON!NDTHE"YTES2ETURNED&ROM%XADATAACTUALLYMEANSTHETOTALINTERCONNECTTRAFFICBETWEEN
THEDATABASEANDTHECELLS CAUSEDBYANYREASON SUCHASBLOCKREADSANDWRITESANDARRAYSOFRETURNED
ROWSBY3MART3CANS


Figure 12-7b. Cell Offload Efficiency ratio in the SQL Monitoring detail page

)FYOUAREWONDERINGWHYTHE)/INTERCONNECTBYTESIS'"WHENTHEACTUALDATABASE ISSUED)/
ISONLY'" THEEXPLANATIONISINHOWTHESEMETRICSAREMEASURED4HEDATABASE)/METRICTHE"YTES
2EAD&ROM$ISKIN&IGURE  ISMEASUREDBYTHEDATABASELAYER WHILETHE)/INTERCONNECTBYTESIS
MEASUREDBYTHELOW LEVELINTERCONNECT/RACLENETWORKINGLAYER!NDONEOFTHELAYERSINBETWEENISTHE
!3-LAYER WHICHMANAGESTHESOFTWAREMIRRORING AMONGOTHERTHINGS3OTHEINTERCONNECT)/TRAFFICIN
THISCASEISHIGHERTHANTHEDATABASETRAFFICTHANKSTOTHEWRITEOPERATIONSDONEBYTHE31,STATEMENT
WHICHHADTOBEMIRROREDBYTHE!3-LAYER3OEVERY-"WRITTENBYDATABASEWHETHERBECAUSEOFDIRECT
PATHLOADORSOMEWORKAREAOPERATIONSPILLINGTOTEMPORARYTABLESPACE RESULTEDINTHEWRITINGOF-"
OFDATATHANKSTO!3-NORMALREDUNDANCYMIRRORING
4HEREAREOTHERREASONSWHYTHEINTERCONNECTTRAFFICMAYBEHIGHERTHANTHEACTUALAMOUNTOFDATA
READ/NEEXAMPLEIS(##COMPRESSEDTABLES)FYOUHAVECOMPRESSEDYOUR'"PARTITIONDOWNTO'"
THENYOUWILLHAVETODO'"WORTHOF)/TOREADIT"UTNOWIFTHE3MART3CANUNCOMPRESSESTHISDATAIN
THECELLSONTHEFLYANDRETURNSALLTHAT'"OFuncompressed DATABACKOVERTHEINTERCONNECTASSUMING
NOPROJECTIONORFILTRATIONINTHECELLWASDONE THE)/INTERCONNECTBYTESWILLBEMUCHHIGHERTHANTHE
AMOUNTOFDATAREADFROMDISKS4HISWOULDDRIVETHE#ELL/FFLOAD%FFICIENCYDOWNTOFORTHIS
EXAMPLE3MART3CAN!LLTHISISYETANOTHERREASONWHYYOUSHOULDNTFOCUSSOLELYONIMPROVINGJUSTTHE
#ELL/FFLOAD%FFICIENCYRATIO BUTSHOULDRATHERLOOKINTOWHERERESPONSETIMEISSPENTINSTEAD4IMEIS
WHATENDUSERSCAREABOUT


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

Execution Plan Rowsource Details


.OWTHATYOUHAVECHECKEDTHEKEYMETRICSOFYOURSTATEMENTEXECUTIONˆDURATION DATABASETIME
PARALLELISMUSEDANDHOWMUCHOFTHEDATABASETIMEISSPENTRUNNINGON#05VSWAITINGˆITSTIMETO
DRILLDOWNINTOTHEDETAILSOFTHEEXECUTIONPLANATTHEROW SOURCELEVEL4HESEARESHOWNIN&IGURE 


Figure 12-8. Execution plan rowsource activity monitoring in the SQL Monitoring detail page

,ETSFOCUSONTHERIGHT HANDCOLUMNSOFTHEEXECUTIONPLANOUTPUTFIRST4HE#05!CTIVITYCOLUMNSHOWS
ABREAKDOWNOFTOTAL#05USAGEBYTHESTATEMENTSOFAR4HELONGESTBARATTHEB>AC>A34A1HLINEINTHE
EXECUTIONPLANSHOWSTHATTHISROWSOURCECONSUMEDOFTOTAL#05USAGEOFTHATSTATEMENTEXECUTION
SOFAR.OTETHATTHISISOFTOTAL#05CONSUMPTION NOTOFTOTALDURATIONORDATABASETIMEOFTHE
STATEMENTEXECUTION9OUSHOULDEXAMINETHE4IMEAND7AIT3TATISTICSSECTIONSHOWNEARLIER IN&IGURE
  TOSEEHOWMUCHOFTHETOTALDATABASETIMEWASCONSUMEDBY#05USAGEANDHOWMUCHBYWAITS
4HE7AIT!CTIVITYCOLUMNSHOWSABREAKDOWNOFWHICHWAITEVENTSTHISSTATEMENTEXECUTIONWAITED
FOR!GAIN THEB>AC>A34A1HROWSOURCEHASEXPERIENCEDTHEMOSTWAITS OFTOTALWAITTIMEOFTHAT
STATEMENTEXECUTION.OTETHATTHISBARCONSISTSOFTWODIFFERENTCOLORBARS)FYOUMOVEYOURMOUSE
POINTEROVERTHESEBARS YOULLSEETHENAMESOFTHESEWAITEVENTS)NTHISCASETHESEWAITSWEREdirect
path read tempANDdirect path write tempEVENTS WHICHYOUSEEWITHMULTI PASSWORKAREAOPERATIONS
SUCHASSORTSANDHASHJOINS4HISCOLUMNALSOSHOWSPERCENTAGESOFtotal wait timeOFTHISSTATEMENT
EXECUTION NOTTHEPERCENTAGEOFTOTALRUNTIMEDURATION NORTOTALDATABASETIME
4HE)/"YTESCOLUMNSHOWSHOWMANY)/OPERATIONSORBYTESWEREREADORWRITTENBYAROWSOURCE
9OUCANRIGHT CLICKONTHECHARTTOTOGGLETHEDISPLAYOFBYTESOR)/OPERATIONS)N&IGURE YOUSEE
THATTHEB>AC>A34A1HROWSOURCEHASDONEATOTALOF'"WORTHOF)/7HENYOUMOVEYOURMOUSE
OVERTHEDIFFERENTCOLORBARS YOULLSEETHEDETAILSABOUTHOWMUCHWASWRITTENANDHOWMUCHWASREAD
ROUGHLY ASTHECHARTSEEMSTOSHOW 4HEEXECUTIONPLANSTEP;>030BB4;42CABOVEITHASWRITTEN
ABOUT'"OFDATATODISK.OTETHATTHIS'"OFDATAISMEASUREDATTHE/RACLEDATABASELEVEL BUT
THELOWER LEVEL!3-LAYERWILLLIKELYMIRRORORTRIPLE MIRROR DEPENDINGONYOURCONFIGURATION THESE
WRITES SOACTUALLYTWICEASMANYBYTESWEREWRITTENPHYSICALLYTODISKS9OUCANCHECKTHE#ELL0HYSICAL
)/)NTERCONNECT"YTESSESSIONSTATISTICTOSEEHOWMUCHDATAWASREALLYSENTANDRECEIVED OVERTHE
)NFINI"ANDNETWORKTHISMETRICISAWAREOFTHE!3-MIRRORWRITEOVERHEADANDANYOTHERLOW LEVELTRAFFIC
TOO


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

,ETSLOOKATAFEWMORECOLUMNSOFTHE2EAL4IME31,-ONITORINGPAGE4HE4IMELINECOLUMNYOU
SEEIN&IGURE ISONEOFTHEMOSTIMPORTANTCOLUMNSFORUNDERSTANDINGWHERETHE31,STATEMENT
SPENDSITSTIME


Figure 12-9. Row-source activity timeline in the SQL Monitoring detail page

4HE4IMELINECOLUMNINTHEFIGURESHOWSAVISUALTIMELINEOFINDIVIDUALEXECUTIONPLANROWSOURCES
ACTIVITY)TISBASEDON!3(SAMPLES!3(COLLECTS31,EXECUTIONPLANLINE LEVELDETAILSSTARTINGFROM
/RACLEG2,OOKINTOTHEBRACKETSINTHE4IMELINECOLUMNHEADER4HISSHOULDSHOWYOUTHETOTAL
RUNTIMEDURATIONOFTHIS31,EXECUTION SECONDSINTHISCASEAROUNDMINUTES 3OTHETOTAL
WIDTHOFTHETIMELINECOLUMNMEANSABOUTMINUTESOFWALL CLOCKRUNTIME.OWITSEASYTOVISUALLY
INTERPRETTHELENGTHANDPOSITIONOFTHESEBARSINEACHROWSOURCEINTHEEXECUTIONPLAN7HENYOULOOK
ATTHEC01;40224BB5D;;4ROWSOURCEATTHEBOTTOMOFTHEPLAN YOUSEETHATTHISTABLESCANWAS
ACTIVEFROMTHEBEGINNINGOFTHEEXECUTIONANDCONTINUEDUPTOAROUNDTWO THIRDSOFTHETOTAL4IMELINE
TOAROUNDSECONDS ANDTHENITCOMPLETED3OITLOOKSLIKETHISTABLESCANWASACTIVEDURINGMOSTOF
THEEXECUTIONTIME
/RACLEEXECUTIONPLANSARETREESOFROWSOURCEFUNCTIONSWITHSTRICTHIERARCHYENFORCED SOACHILD
ROWSOURCECANPASSITSRESULTSONLYTOITSDIRECTPARENT)NOURCASE THEC01;40224BB5D;;AGAINST4
FETCHEDSOMEROWSANDPASSEDTHEMBACKTOITSPARENTOPERATION ?G1;>2:8C4A0C>A WHICHTHENSENT
THEROWSBACKTOTHE?GB4=3A0=64OPERATOR WHICHKNOWSHOWTOSENDRESULTSTOOTHERSLAVESVIATHE08
4ABLE1UEUEBUFFERSINTHE3'!!NOTHERSETOFSLAVESRECEIVEDTHESEROWSUSINGTHE?GA4248E4
ROWSOURCEANDPASSEDTHESEROWSTOTHEIRPARENT THEB>AC>A34A1HROWSOURCE WHICHPERFORMEDTHE
SORTINGOFTHESEROWS4HENcWTB>AC>A34A1HROWSOURCEJUSTREPEATEDITSLOOPANDASKEDFORMOREROWS
FROMITSCHILDOPERATOR?GA4248E4 WHICHTHENREADCONSUMED THETABLEQUEUEBUFFERSFORMOREROWS
PUTTHEREBYTHEFIRSTSETOFSLAVESPRODUCERS 7EARENOTGOINGDEEPERINTO31,EXECUTIONENGINE
INTERNALSHERE BUTHOPEFULLYTHISEXAMPLEHASILLUSTRATEDTHEHIERARCHICALNATUREOFTHE31,EXECUTION
ANDHOWTHEDATAhFLOWSvUPWARDTHROUGHTHEEXECUTIONPLANTREETOWARDTHEROOTOFTHETREE2A40C4
C01;4BC0C4<4=CINTHISCASE 
7HENYOULOOKATTHETIMELINEBARS YOUSEETHATALLTHEBARSSTARTINGFROM?GA4248E4ANDBELOWIT
STARTEDROUGHLYATTHESAMETIMEANDENDEDROUGHLYATTHESAMETIME TOO7ESAYROUGHLY BECAUSETHIS
DATACOMESFROM!3(SAMPLES SAMPLEDONCEPERSECONDONLY SOWEDONTHAVEMICROSECONDACCURACY
HERE!NDWEDONTNEEDITANYWAY ASOURQUERYRUNSFORMUCHLONGERTHANASECOND"UTANYWAY THE
TIMELINEBARSINDICATETHATTHETABLESCANNINGPARTOFTHEQUERY INCLUDINGTHESEhDATATRANSPORTATIONv
STEPSFORTHATDATA?GA4248E4 ?GB4=3A0=64 AND?G1;>2:8C4A0C>A TOOKAROUNDOFTHETOTAL
QUERYRESPONSETIME)FWEWANTTOMAKEOURQUERYFASTER WESHOULDPROBABLYFOCUSONTHATPARTWE
SHOULDEITHERSCANLESSDATA FILTERMOREINCELLSHOPEFULLY ACCESSLESSPARTITIONSORJUSTINCREASETHE


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

SCANNINGTHROUGHPUTBYINCREASINGPARALLELISMINTHISCASE BECAUSETHISC01;40224BBROWSOURCEWASNT
WAITINGTOOMUCHFOR)/ ASSHOWNIN&IGURE  ITSNOT)/ BOUNDYETANDTHEDATABASENODESHAD
PLENTYOF#05RESOURCELEFT 
7HENYOULOOKATTHEUPPERROWSOURCES;>030BB4;42CANDHIGHER YOUSEETHATTHEYHAVEONLY
BEENREPORTEDACTIVEINTHELASTTHIRDOFTHEQUERYRESPONSETIME EXTENDINGALLTHEWAYTOTHEENDOF
EXECUTION3O IFWESOMEHOWMADEONLYTHISDATALOADINGPARTFASTER WEWOULDONLYWINUPTOOF
THERESPONSETIMEBACK EVENIFWECOULDMAKETHELOADINGPARTINFINITELYFAST4HETABLEACCESSAND
SORTINGWOULDSTILLTAKETHEMAJORITYOFTHERESPONSETIME4HETIMELINEBARSAREVERYVALUABLEFORQUICKLY
UNDERSTANDINGINWHICHEXECUTIONPLANTREEPARTBRANCH MOSTOFTHERESPONSETIMEISSPENT
4HETIMELINEBARSAREJUSTTHEFIRSTTHINGTOCHECK4HEREARELOTSOFOTHERUSEFULDETAILSINTHE31,
-ONITORINGREPORT TOO&OREXAMPLE IFYOULOOKATTHEB>AC>A34A1HLINEIN&IGURE  YOUSEETHATTHE
SORTOPERATIONHASBEENACTIVETHROUGHOUTTHEWHOLEEXECUTIONOFTHISSTATEMENT!NDIFYOUKNOWTHE
BASICSOFSORTING ITSHOULDMAKESENSEˆTHESORTINGROWSOURCEWASACTIVEFORTHEFIRSTTWO THIRDSOFTHE
TIMEBECAUSEITWASFETCHINGDATAINTOSORTBUFFERSANDSORTINGITANDSPILLINGSOMEDATATOTEMPORARY
TABLESPACE !FTERTHESORTITSELFWASCOMPLETETHECHILDROWSOURCERETURNEDANhENDOFDATAvCONDITION
THESORTINGROWSOURCEFUNCTIONHADSTILLHADTOBEINVOKED)TISBYINVOKINGTHATFUNCTIONTHATTHESORT
OPERATIONRETURNSTHESORTEDROWSTOITSPARENTOPERATION4HISISWHYTHEPARENTROWSOURCESBECAME
ACTIVEONLYTOWARDTHEENDOFTHEEXECUTIONTIMELINEˆBECAUSEallTHEROWSHADTOBEFETCHEDANDSORTED
FIRST BEFOREANYTHINGCOULDHAVEBEENRETURNEDFORFURTHERPROCESSING!NDONCEALLTHEROWSwere
FETCHEDANDSORTED THEREWASNOREASONFORTHEB>AC>A34A1HROWSOURCETOVISITITSCHILDROWSOURCES
AGAIN4HISISWHYTHETIMELINEBARFORC01;40224BBENDEDATAROUNDTWO THIRDSOFTHETOTALEXECUTION
DURATIONTIMELINE

Manually Querying Real-Time SQL Monitoring Data


!LLTHEPRETTYCHARTSIN'RID#ONTROLAREBASEDONSOMEEOR310NVIEWSINTERNALLY SOIFYOUDONTHAPPEN
TOHAVEACCESSTO'RID#ONTROLOR%NTERPRISE-ANAGER$ATABASE#ONSOLEORITISJUSTBROKEN YOUCANGET
WHATYOUWANTFROMTHEEVIEWSDIRECTLY9OUPROBABLYDONTHAVETOACCESSTHEEVIEWSFORYOUR
EVERYDAYMONITORINGANDTUNINGTASKS BUTNEVERTHELESSITSUSEFULTOKNOWWHERETHISINFORMATION
COMESFROM ASITMAYBECOMEHANDYFORCUSTOMMONITORINGANDADVANCEDPROBLEMTROUBLESHOOTING
&OLLOWINGARESOMEKEYVIEWSTOBEAWAREOF
v 4HE6EB@;N<>=8C>AVIEWCONTAINSTHESTATEMENTEXECUTION LEVELMONITORINGDATA
7HENMULTIPLESESSIONSARERUNNINGTHESAMESTATEMENT YOUWILLHAVEMULTIPLE
ENTRIESINTHISVIEW3O MAKESURETHATYOUQUERYTHERIGHTEXECUTION BYUSINGTHE
RIGHTSEARCHFILTERS&OREXAMPLE YOUSHOULDPAYATTENTIONTOWHICHB83AND
8=BCN83YOUAREREALLYLOOKINGFOROR?GN@2B83 ?GN@28=BCN83IFMONITORINGA
PARALLELQUERY ANDWHETHERTHEBC0CDBCOLUMNSTILLSHOWS4G42DC8=6IFYOUARE
TRYINGTOTROUBLESHOOTACURRENTLYRUNNINGQUERY
v 4HE6EB@;N?;0=N<>=8C>AVIEWCONTAINSEXECUTIONPLANLINE LEVELMETRICS
MONITOREDANDUPDATEDINREALTIME&OREXAMPLEYOUCANQUERYTHE
8>N8=C4A2>==42CN1HC4BANDCOMPAREITTO?7HB820;NA403N1HC4BAND
?7HB820;NFA8C4N1HC4BTODETERMINETHEOFFLOADINGEFFICIENCYBYEACHINDIVIDUAL
EXECUTIONPLANLINE INSTEADOFTHEWHOLEQUERYEFFICIENCY.OTETHATINCREASINGTHE
OFFLOADINGEFFICIENCYPERCENTAGESHOULDNOTBEYOURPRIMARYGOALOFMONITORING
ANDTUNINGnWHEREYOUSPENDYOURRESPONSEtime MATTERS


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

v 4HE6E02C8E4NB4BB8>=N78BC>AHVIEWCONTAINSCOLUMNSLIKEB@;N?;0=N;8=4N83
B@;N?;0=N>?4A0C8>=ANDB@;N?;0=N>?C8>=BSTARTINGFROM/RACLEG29OUCAN
QUERYTHESECOLUMNS INADDITIONTOB@;N83 TOFINDTHETOPROWSOURCESOFAN31,
EXECUTIONPLAN TOO INSTEADOFJUSTLISTINGTHETOP31,STATEMENT

Reporting Real-Time SQL Monitoring Data with DBMS_SQLTUNE


)FYOUDONOTHAVEACCESSTO'RID#ONTROLOR%NTERPRISE-ANAGER$ATABASE#ONSOLEFORSOMEREASON YOU
CANALSOEXTRACTTHE31,MONITORINGDETAILSUSINGTHE31<BNB@;CD=4A4?>ACNB@;N<>=8C>APACKAGE
FUNCTION9OUCANUSETHEFOLLOWINGSYNTAX BUTMAKESUREYOUREADTHERELATEDDOCUMENTATIONTOSEETHE
FULLPOWEROFTHISFEATURE.OTETHATTHETEXTBELOWISEDITED ASTHISFUNCTIONGENERATESVERYWIDEOUTPUT
WHICHWOULDNTFITTHEBOOKPAGES

B@;-B4;42C
31<BNB@;CD=4A4?>ACNB@;N<>=8C>A
bTbbX^]NXS,-bXS
aT_^acN[TeT[,-0;;
ch_T,-C4GCPbaT_^ac
5A><SdP[
B@;-
4]cTaeP[dTU^abXS)$#"

A4?>AC

B@;<^]Xc^aX]VAT_^ac

B@;CTgc

B4;42C_PaP[[T["!2>D=C5A><C#0

6[^QP[8]U^a\PcX^]

BcPcdb)4G42DC8=6
8]bcP]RT83)!
BTbbX^])C0=4;$#")#%# 
B@;83)SdPc(&gc# &Z
B@;4gTRdcX^]83)""$$$$%
4gTRdcX^]BcPacTS)$!&! %)$()!"
5XabcATUaTbWCX\T)$!&! %)$()!"
;PbcATUaTbWCX\T)$!&! %)$()$(
3daPcX^])"%b
<^Sd[T0RcX^])B@;?[db
BTaeXRT)B0=31>G
?a^VaP\)b`[_[db/\PR [P]C=BE E"



#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

6[^QP[BcPcb
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
k4[P_bTSk@dTdX]Vk2_dk8>k1dUUTakATPSkATPSk2T[[k
kCX\TbkCX\TbkCX\TbkFPXcbbk6TcbkAT`bk1hcTbk>UU[^PSk
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
k ($kk &k &(k <k &:k'"61k(%%k
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

B@;?[P]<^]Xc^aX]V3TcPX[b?[P]7PbWEP[dT,"$"%$%&%
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
k8Sk>_TaPcX^]k=P\TkATPSk2T[[k0RcXeXchk
kkkk1hcTbk>UU[^PSkk
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
kkB4;42CBC0C4<4=Ckkkkk
k kB>AC066A460C4kkkkk
k!k?G2>>A38=0C>Akkkkk
k"k?GB4=3@2A0=3><k)C@ kkkk
k-#kB>AC066A460C4kkkk(k
k-$k?G1;>2:8C4A0C>Akkkkk
k-%kC01;40224BBBC>A0645D;;kC#k'&61k(%%k((( k
kkkkkkk
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

31<BNB@;CD=4A4?>ACNB@;N<>=8C>ACANALSOTAKE(4-,ASAVALUEFORTHECH?4PARAMETER INSTEADOFC4GC
INWHICHCASETHEOUTPUTISGENERATEDAS(4-,)FYOUSPOOLTHISOUTPUTINTOAN(4-,FILEANDOPENITIN
THEBROWSER YOUWILLSEEMUCHNICEROUTPUTTHANJUSTTEXT!NDSTARTINGWITH/RACLE YOUCANALSO
USE02C8E4ASAPARAMETERANDSPOOLTHATOUTPUTINTOAN(4-,FILE.OWIFYOUOPENTHISFILEINTHE
BROWSER YOUWILLSEETHE31,-ONITORINGPAGEALMOSTEXACTLYASITLOOKSINTHE'RID#ONTROL!NDALLTHE
DATAREQUIREDFORDISPLAYINGTHATREPORTISSELF CONTAINEDINTHESPOOLED(4-,FILEˆNODATABASEACCESS
NEEDEDWHENOPENINGIT3OTHISISVERYUSEFULIFYOUWANTTOSENDADETAILEDSELF CONTAINEDREPORTWITH
SOME31,EXECUTIONPROBLEMTOSOMEONEOVERTHEEMAIL

Controlling SQL Monitoring


31,-ONITORINGKICKSINIMMEDIATELYFORALLSTATEMENTSEXECUTEDWITHPARALLELEXECUTION NOMATTERHOW
LONGTHEYRUN&ORSERIALLYEXECUTEDSTATEMENTS THE31,-ONITORINGDOESNOTKICKINIMMEDIATELY ASITS
NOTDESIGNEDTOMONITORTYPICALFAST/,40QUERIES WHICHAREEXECUTEDMANYTIMESPERSECOND
.EVERTHELESS IFASERIALQUERYHASCONSUMEDMORETHANSECONDSOFTOTAL#05ANDOR)/WAITTIME ITS
CONSIDEREDASALONG RUNNINGQUERYANDTHE31,-ONITORINGISENABLEDFORTHATSTATEMENTEXECUTION
4HISHAPPENSSEAMLESSLYON THE FLY ANDSTATEMENTRESTARTISNOTNEEDED

9OUCANALSOUSE<>=8C>AAND=>N<>=8C>AHINTSTOCONTROLTHE31,MONITORINGFORASTATEMENT
EB@;N78=CSHOWSALLTHEHINTSAVAILABLEFORUSEANDTHEVERSIONWHENTHEYWEREINTRODUCED&OR
EXAMPLE

B@;-B4;42C]P\TX]eTabTeTabX^]R[Pbbb`[NUTPcdaT
!5A><eb`[NWX]cF74A4]P\T;8:4<>=8C>A*



#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

=0<48=E4AB4E4AB8>=

=>N<>=8C>A8=6'
<>=8C>A=>N<>=8C>A  %
=>N<>=8C>A<>=8C>A  %

.OTETHATTHE=>N<>=8C>A8=6HINTISSOMETHINGCOMPLETELYDIFFERENTDESPITETHESIMILARNAME4HE
=>N<>=8C>A8=6HINTALLOWSYOUTODISABLETHEPREDICATEUSAGEMONITORINGONTABLECOLUMNS
bhbR^[NdbPVT ANDITHASNOTHINGTODOWITHTHE2EAL 4IME31,-ONITORINGOPTIONINTRODUCEDIN
/RACLEG

-ONITORING31,3TATEMENTSUSING631,AND631,34!43
4HEPERFORMANCEMONITORINGINTHEhOLDDAYSvBEFORE /RACLEG!3(WASUSUALLYDONEUSINGVARIOUSE
VIEWS WHICHSHOWEDAGGREGATEDINSTANCE WIDEMETRICS&OREXAMPLE THE3TATSPACKS4/0 WAITEVENTS
REPORTSECTIONWASJUSTADELTABETWEENTWOEBHBC4<N4E4=CVIEWSNAPSHOTS4HE4/031,REPORTSWERE
BASEDONEB@;SNAPSHOTS WHICHEXTERNALIZETHEEXECUTIONSTATISTICSANDRESOURCECONSUMPTIONFOREACH
CHILDCURSORSTILLINLIBRARYCACHE(OWEVER INALARGEDATABASESYSTEMTHINKE "USINESS3UITEOR3!0
YOUCANHAVETENSOFTHOUSANDSOFCURSORSINTHELIBRARYCACHE SOGATHERINGANDSTORINGDELTASOFALLOF
THEIRSTATSISNOTFEASIBLE4HATSWHYTOOLSLIKE3TATSPACKAND!72STOREDELTASOFONLYSOMETOP
RESOURCE CONSUMINGSTATEMENTSANDIGNORETHEINSIGNIFICANTONES2EMEMBERTHATASTHESETOOLSGATHER
INSTANCE WIDEDATA THEYMAYENDUPIGNORINGALONG RUNNINGSTATEMENTIFTHEREAREONLYAFEWSESSIONS
EXECUTINGIT!SINGLESESSIONRUNNINGABAD31,STATEMENTMAYNOTBEhHEARDvINTHENOISEOFALLTHE
OTHERSESSIONSINTHEINSTANCEˆPOTENTIALLYTHOUSANDSOFTHEM4HISINSTANCE WIDESCOPEPERFORMANCE
DATAANALYSISISNOTASPOWERFULASTHESESSION LEVEL!3(DATASLICINGANDDICING7ITH!3(YOUCANDRILL
DOWNINTOANYSINGLESESSION REGARDLESSOFHOWMANYSESSIONSINTOTALYOUHAVEMAKINGNOISEINTHE
INSTANCE
)FYOUUSE%XADATA YOUMUSTBERUNNINGATLEAST/RACLEG2ONIT SOALLTHESESUPERIORTOOLSARE
AVAILABLE ASSUMINGTHATYOUHAVETHE$IAGNOSTICSAND4UNING0ACKLICENSESFORYOUR%XADATACLUSTER"Y
THEWAY WEHAVENTSEENAN%XADATA USINGCUSTOMERWITHOUT$IAGNOSTICSAND4UNING0ACKLICENSESYET
SOITLOOKSLIKETHEVASTMAJORITYOF%XADATAUSERSDONOTHAVETORESORTTOOLDTOOLSLIKE3TATSPACKORCREATE
ACUSTOM!3( STYLEREPOSITORYTHEMSELVESALTHOUGHITSEASILYDOABLEWITHAFEWLINESOF0,31,CODE
POLLINGEB4BB8>=ORITSUNDERLYINGG:BDB4VIEWINEACHINSTANCE 
4HEEB@;ANDEB@;BC0CBVIEWSSTILLDOHAVESOMEADVANTAGEOVER31,-ONITORINGAND!3( STYLE
SAMPLEDDATAINAFEWCASES&OREXAMPLE IFYOUWANTTOMEASUREMETRICSLIKETHENUMBEROFEXECUTIONS
BUFFERGETS PARSECALLS FETCHES ORROWSRETURNEDBYTHE31,CHILDCURSOR YOUCANGETTHISDATAFROMBOTH
2EAL TIME31,-ONITORINGEB@;N<>=8C>A ORTHEEB@;EB@;BC0CBVIEWS BUTNOT!3("UTTHEPROBLEM
WITH31,-ONITORINGISTHATITDOESNTMONITORSHORT RUNNINGQUERIESATALL THEREFOREMAKINGITUNUSABLE
FORKEEPINGTRACKOF/,40 STYLESMALLQUERIESEXECUTEDMANYTIMESPERSECOND%VENADDINGA<>=8C>A
HINTINTOEVERYQUERYOFYOURAPPLICATIONWOULDNOTHELP ASTHEMAXIMUMNUMBEROFMONITOREDPLANSIS
LIMITEDCONTROLLEDBYTHENb`[\^]N\PgN_[P]PARAMETER WHICHDEFAULTSTOPLANSPER#05 ANDYOU
WOULDLIKELYENDUPWITHreal-time plan statistics latchCONTENTIONASWELL4HE31,-ONITORINGFEATUREIS
NOTMEANTTOMONITORSHORT RUNNINGQUERIESEXECUTEDMANYTIMESPERSECOND
!NDTHISLEAVESUSWITHEB@;ANDEB@;BC0CB4HEYBOTHMAINTAINSIMILARDATA BUTTHEYARE
INTERNALLYDIFFERENT7HENEVERYOUQUERYEB@;WITHOUTSPECIFYINGANEXACTB@;N83 /RACLEHASTOTRAVERSE
THROUGHEVERYSINGLELIBRARYCACHEHASHBUCKET ANDALLCURSORSUNDERIT4HISMAYCONTRIBUTETOLIBRARY
CACHEMUTEXCONTENTIONIFYOUHAVEABUSYDATABASEANDLOTSOFCURSORSINTHELIBRARYCACHE BECAUSE
WHENYOUTRAVERSETHELIBRARYCACHESTRUCTUREANDREADITSOBJECTSCONTENTS YOULLHAVETOHOLDAMUTEX
ONTHEOBJECT.OTETHATSTARTINGFROM/RACLEG ALLLIBRARYCACHELATCHESAREGONEANDAREREPLACEDBY


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

MUTEXES4HESESAMEMUTEXESAREUSEDFORPARSING LOOKINGUP ANDPINNINGCURSORSFOREXECUTION SOIF


YOURMONITORINGQUERIESPOLLEB@;FREQUENTLY THEYMAYENDUPCAUSINGWAITSFOROTHERSESSIONS
4HEEB@;BC0CBVIEW WHICHWASINTRODUCEDIN/RACLEG2 DOESNTHAVETHISPROBLEM3TARTING
FROM/RACLEG2 /RACLEACTUALLYMAINTAINS31,EXECUTIONSTATISTICSINTWOPLACESˆINSIDETHECHILD
CURSORSTHEMSELVESEB@; ANDINASEPARATECURSORSTATISTICSARRAYSTOREDINADIFFERENTLOCATIONINTHE
SHAREDPOOL4HISSEPARATIONGIVESTHEBENEFITTHATEVENIFACURSORISFLUSHEDOUTFROMTHESHAREDPOOL ITS
STATSINTHISSEPARATEARRAYMAYREMAINAVAILABLEFORLONGER!LSO WHENMONITORINGTOOLSQUERY
EB@;BC0CB THEYDONTHAVETOSCANTHROUGHTHEENTIRELIBRARYCACHE THANKSTOTHESEPARATEARRAYWHERE
STATSARESTORED4HISMEANSTHATYOURMONITORINGTOOLSWONTCAUSEADDITIONALLIBRARYCACHELATCHOR
MUTEX CONTENTIONWHENTHEYUSEEB@;BC0CBINSTEADOFEB@;"OTH3TATSPACKAND!72DOUSE
EB@;BC0CBTOCOLLECTDATAFORTHEIRTOP31,REPORTS
,ETSLOOKINTOEB@;BC0CBTHEEB@;VIEWHASPRETTYMUCHTHESAMECOLUMNS BYTHEWAY 3OMEOF
THEOUTPUTHEREISREMOVEDTOSAVESPACE

B@;-/STbReb`[bcPcb
=P\T=d[[.Ch_T

 B@;NC4GCE0A270A! 
!B@;N5D;;C4GC2;>1
"B@;N83E0A270A! "

%?;0=N70B7NE0;D4=D<14A

!2?DNC8<4=D<14A
! 4;0?B43NC8<4=D<14A

!%DB4AN8>NF08CNC8<4=D<14A

""8>N24;;N>55;>03N4;8681;4N1HC4B=D<14A
"#8>N8=C4A2>==42CN1HC4B=D<14A
"$?7HB820;NA403NA4@D4BCB=D<14A
"%?7HB820;NA403N1HC4B=D<14A
"&?7HB820;NFA8C4NA4@D4BCB=D<14A
"'?7HB820;NFA8C4N1HC4B=D<14A

# 8>N24;;ND=2><?A4BB43N1HC4B=D<14A
#!8>N24;;N>55;>03NA4CDA=43N1HC4B=D<14A

4HEHIGHLIGHTEDROWSSTARTING WITH8>N24;; AREMETRICSRELATEDTO%XADATASTORAGECELLSALTHOUGHTHE
8>N8=C4A2>==42CN1HC4BISPOPULATEDONNON %XADATADATABASESASWELL THANKSTOABUG 9OUWOULD
WANTTOCOMPARETHESECELLMETRICSTODATABASEMETRICSLIKE_WhbXRP[NaTPSNQhcTb TOUNDERSTAND
WHETHERTHIS31,STATEMENTISBENEFITTINGFROM%XADATA3MART3CANOFFLOADING.OTETHATTHESEMETRICS
WHICHMERELYCOUNTBYTES SHOULDNOTBEUSEDASTHEPRIMARYMETRICOFperformanceAGAIN THEPRIMARY
METRIC THESTARTINGPOINT SHOULDALWAYSBERESPONSETIME WHICHYOUCANTHENBREAKDOWNINTO
INDIVIDUALWAITEVENTSORINTOEXECUTIONPLANROWSOURCEACTIVITYWITHTHE31,-ONITORINGREPORTOR
!3( 9OUCANLEARNMOREABOUTTHEMEANINGOFTHEMETRICSSHOWNHEREIN#HAPTER
.OTETHATEVENTHOUGHTHEEB@;BC0CBVIEWALSOCONTAINSTHE?;0=N70B7NE0;D4COLUMN ITACTUALLY
DOESNOTSTORESEPARATESTATSFORTHESAME31,)$WITHDIFFERENTPLANHASHVALUES)TAGGREGATESALLTHE
STATSGENERATEDBYDIFFERENTPLANSOFTHESAME31,)$UNDERASINGLEBUCKET3OYOUDONTREALLYKNOW
WHICHPLANVERSIONCONSUMEDTHEMOSTRESOURCESFROMTHISVIEW,UCKILYIN/RACLETHEREISANEW


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

VIEW NAMEDEB@;BC0CBN?;0=N70B7 WHICHYOUSHOULDQUERYINSTEAD)TORGANIZESANDREPORTSTHESTATS


BROKENDOWNBY31,)$and PLANHASHVALUEINSTEADOFJUST31,)$ASEB@;BC0CBDOES

Monitoring the Storage Cell Layer


,ETSLOOKATHOWTOMONITORTHESTORAGECELLLAYERFORUTILIZATIONANDEFFICIENCY!SYOUALREADYKNOW THE
STORAGECELLSAREREGULARCOMMODITYSERVERSWITHSOMEDISKSATTACHEDTOTHEMANDRUNNING,INUX9OU
CANUSEREGULAR,INUX/3MONITORINGCOMMANDSANDTOOLSTOKEEPANEYEON/3METRICSLIKE#05USAGE
ORDISK)/ACTIVITY4HEONLYCATCHISTHAT/RACLEDOESNOTALLOWYOUTOINSTALLANYADDITIONAL
MONITORING DAEMONSANDSOFTWAREONTHECELLSˆIFYOUSTILLWANTTOHAVEASUPPORTEDCONFIGURATION
4HEGOODNEWSISTHAT/RACLECELLSERVERSOFTWAREANDADDITIONAL/37ATCHERSCRIPTSDOAGOODJOBOF
COLLECTINGDETAILEDPERFORMANCEMETRICSINEACHCELL4HEFOLLOWINGSECTIONSSHOWHOWTOEXTRACT DISPLAY
ANDUSESOMEOFTHESEMETRICS

!CCESSING#ELL-ETRICSINTHE#ELL,AYER5SING#ELL#,)
4HECELL COLLECTEDMETRICSCANBEACCESSEDUSINGTHE#ELL#,)UTILITY4HATSINFACTHOWTHE%XADATA
STORAGECELLPLUG INFOR'RID#ONTROLRETRIEVESITSDATA9OUHAVESEEN#ELL#,)USEDINEARLIERCHAPTERS
&OLLOWINGAREAFEWEXAMPLESOFUSING#ELL#,)FORRETRIEVINGPERFORMANCEMETRICS4HECOMMANDNAMES
SHOULDBEFAIRLYSELF EXPLANATORY WEWILLCOVERTHE#ELL#,)COMMANDSINMOREDETAILIN!PPENDIX!

RT[[R[X
R
2T[[2;8)AT[TPbT !!" ?a^SdRcX^]^]<^]<Ph %()!!) (23C! 

2^_haXVWcR!&!(>aPR[T0[[aXVWcbaTbTaeTS
2T[[4UUXRXT]RhAPcX^) %"

2T[[2;8-;;8BC<4CA823458=8C8>= Å show metric short names
23N8>N1HNAN;6
23N8>N1HNAN;6NB42
23N8>N1HNANB<
23N8>N1HNANB<NB42
23N8>N1HNFN;6
23N8>N1HNFN;6NB42
23N8>N1HNFNB<
23N8>N1HNFNB<NB42

... lots of output removed ...

=N<1NA4248E43
=N<1NA4248E43NB42
=N<1NA4B4=C
=N<1NA4B4=CNB42
=N<1NB4=C
=N<1NB4=CNB42
=N=82N:1NA2ENB42
=N=82N:1NCA0=BNB42
=N=82N=F
=NA3<0NA4CAHNC<



#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

2T[[2;8-;8BC<4CA823458=8C8>=2;N2?DC334C08;*Å show metric description and details


]P\T)2;N2?DC
STbRaX_cX^])?TaRT]cPVT^UcX\T^eTacWT_aTeX^db\X]dcTcWPccWTbhbcT\
2?DbfTaT]^cXS[T
\TcaXRCh_T)8]bcP]cP]T^db
^QYTRcCh_T)24;;
d]Xc)


<4CA822DAA4=C2;N2?DC*Å list the latest metric snapshot value
2T[[2;8-;8BC<
2;N2?DCT]ZRT[ $"


<4CA822DAA4=C2;N2?DC34C08;*Å list latest snapshot in detail
2T[[2;8-;8BC<
]P\T)2;N2?DC
P[TacBcPcT)]^a\P[
R^[[TRcX^]CX\T)! $ %C()" )$"$)
\TcaXR>QYTRc=P\T)T]ZRT[ 
\TcaXRCh_T)8]bcP]cP]T^db
\TcaXREP[dT)$"
^QYTRcCh_T)24;;


2T[[2;8-;8BC<<4CA8278BC>AH2;N2?DC*Å show historical metric snapshots

2;N2?DCT]ZRT[ !!! $%C !))#%$)
2;N2?DCT]ZRT[ !#! $%C !) )#($)
2;N2?DCT]ZRT[ ! ! $%C ")) $$)
2;N2?DCT]ZRT[ "! $%C ") ) $$)
2;N2?DCT]ZRT[  #! $%C ")!) $$)
2;N2?DCT]ZRT[ "! $%C ")") $$)
2;N2?DCT]ZRT[  !! $%C ")#) $$)
2;N2?DCT]ZRT[  !! $%C ")$) $$)

!CCESSING#ELL-ETRICS5SINGTHE'RID#ONTROL%XADATA
3TORAGE3ERVER0LUG )N
)FYOUHAVECONFIGUREDTHE3YSTEM-ONITORINGPLUG INFOR%XADATA3TORAGE3ERVER YOUWILLBEABLETOSEE
SOMECELL LEVELMETRICS REPORTS ANDCHARTSIN'RID#ONTROL4HEPLUG ININSTALLATIONISOUTOFTHESCOPEOF
THISBOOK BUTITSWELLDOCUMENTEDINTHEPLUG INSINSTALLATIONGUIDE
#URRENTLYTHE%XADATA3TORAGE3ERVERMONITORINGPLUG INGIVESONLYSOMEBASICMETRICSTOMONITOR
ANDISNOTVERYSOPHISTICATEDFORSYSTEMATICCELLPERFORMANCETROUBLESHOOTINGORMONITORING
.EVERTHELESS ITWILLGIVEYOUAMORECONVENIENTWAYFORMONITORINGCELLSTATISTICSCHANGINGOVERTIME
COMPAREDTORUNNING#ELL#,)S [Xbc\TcaXRWXbc^ahCOMMANDSMANUALLY7HENYOUINITIALLYNAVIGATETO
ASTORAGECELLTARGETORGROUPOFCELLS IN'RID#ONTROL YOUMAYNOTSEEANYCHARTSDEFINEDTHEREYET)N
&IGURE  WEHAVECREATEDAGROUPCALLEDhCELLSvFROMTHE%XADATA3TORAGE3ERVERTARGETSAND
NAVIGATEDTOTHE%DIT'ROUPPAGE4HISISWHEREYOUCANADDNEWCHARTSFORCOLLECTEDCELL LEVELMETRICS


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%


Figure 12-10. Adding storage cell metrics into Grid Control monitoring charts

!LLTHECHARTDEFINITIONSIN&IGURE HAVEBEENMANUALLYADDEDFORTHECELLGROUP9OUCANADDCHARTS
YOURSELF BYCLICKINGTHE!DDBUTTON WHICHWILLBRINGYOUTOTHE!DD#HARTPAGESHOWNIN&IGURE 


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%


Figure 12-11. Selecting a “highest-average” chart for monitoring cells with highest read I/O requests

4OSEETHECELLMETRICSAVAILABLE YOULLHAVETOSELECT/RACLE%XADATA3TORAGE3ERVERASTHECHARTTYPEAND
PICKONEOFTHEMETRICSTOSHOW9OUPROBABLYWANTTOUSETHE'ROUP3TATISTICSFORMONITORINGTHEWHOLE
CELLGROUPASASTARTINGPOINT INSTEADOFMONITORINGALLSTORAGECELLSINAFULLRACK SEPARATELY4HE
GROUPSTATISTICSALLOWYOUTOSUMTOGETHERSTATSFROMALLTHECELLSINTHEGROUPWHENMONITORINGTOTAL
DISK)/THROUGHPUT FOREXAMPLE ORSHOWMINIMUM MAXIMUM AVERAGESANDSTANDARDDEVIATION
ACROSSALLCELLSWHENMONITORINGAVERAGEDISK)/RESPONSETIMES FOREXAMPLE 0AYATTENTIONTOWHAT
THEMETRICMEANSANDWHICHAGGREGATIONOPERATIONSMAKESENSEFORAGIVENMETRIC&OREXAMPLE IT
DOESNTMAKEMUCHSENSETODISPLAYTHEsumOFALLAVERAGEDISK)/RESPONSETIMESINACHART4HE
METRICSSTARTINGWITH!VGSHOWAVERAGEVALUESOVERMULTIPLEOBJECTSMONITORED&OREXAMPLE THE!VG
#ELLDISK2EADS-" MONITORSAVERAGEMEGABYTESREADper celldisk./NTHEOTHERHAND THE4OTAL#ELLDISK
2EADS-" METRICSUMSTOGETHERTHE-"READBYALLCELLDISKSINACELL!NDNOWIFYOUUSETHE'ROUP
3TATISTICSOPTIONTOMONITORMULTIPLECELLS YOUSHOULDUSE3UMTOSEETHETOTAL-"READFROMCELLDISKS
ACROSSALLCELLSAND!VERAGEOR-IN-AXTOSEETHEAVERAGEper cell ORACELLWITHTHESMALLESTORBIGGEST
-"READCELLDISKTHROUGHPUT
)FYOUDOWANTTOMONITORINDIVIDUALCELLSˆFOREXAMPLE THETWOSTORAGECELLSWITHTHEWORSTOFFLOAD
EFFICIENCYˆTHENYOUCANEITHERDEFINEASEPARATEOFFLOADINGEFFICIENCYCHARTFOREACHCELLANDENDUP
WITHCHARTSINAFULLRACKCONFIGURATION ORYOUCANSELECT4ARGETS7ITH,OWEST!VERAGEASTHECHART
TYPE ASSHOWNIN&IGURE 


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%


Figure 12-12. Selecting a “lowest average” chart for monitoring cells with worst offload efficiency

9OUCANREADMOREABOUTTHEMEANINGOFVARIOUSMETRICSINTHE/RACLEDOCUMENT“Enterprise Manager
System Monitoring Plug-In Metric Reference Manual for Oracle Exadata Storage Server.”
.OW YOUCANREORDERTHECHARTSONTHECELLGROUPDASHBOARDBYCLICKINGTHE2EORDERBUTTONAS
SHOWNIN&IGURE EARLIER4HISWILLSHOWYOUALISTOFDEFINEDCHARTS WHICHYOUCANTHENREORDERON
THESCREEN ASSEENIN&IGURE 


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%


Figure 12-13. Ordering the storage cell metric charts in Grid Control

.OWYOUAREREADYTOVIEWYOURCHARTS$EPENDINGONHOWMANYOFTHEMYOUCONFIGURED YOUSHOULDSEE
ASCREENLAYOUTLIKETHATIN&IGURE 


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%


Figure 12-14. Multiple cell-level metrics displayed in Grid Control


.OTETHATWHENYOUFIRSTCONFIGURETHECHARTS THEYWILLBEEMPTY)FYOUWAITFORAFEWMINUTES YOU
SHOULDSEETHEFIRSTDATAPOINTSAPPEARING ANDAFTERADAYHASPASSED THECHARTSSHOULDBEFULLY
POPULATEDIF,AST(OURSISSELECTEDINTHE6IEW$ATADROP DOWN 9OUCANCLICK#USTOMIZE#HARTSTO
MODIFYTHECHARTMETRICSAGAIN


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

.OWLETSLOOKATSOMEOFTHEINDIVIDUALMETRICSWEHAVEPUTONTOTHEPAGE ASSHOWNIN&IGURE
 


Figure 12-15. Various celldisk average metrics charts displayed in Grid Control

)NTHE!VG#ELLDISK3MALL2EAD,ATENCYMSEC CHARTHERE WEDOSEEANISSUE!NHOURBEFORE0- THE


AVERAGESMALLBLOCK)/UNDERK" LATENCYHASJUMPEDUP PROBABLYBECAUSEMORELARGE)/
OPERATIONSWEREDONEINTHECELL7ECANCONCLUDETHISFROMTHEOTHERTWOMETRICSINTHETOPROWTHE
!VG#ELLIDISK2EAD2EQUESTSHASSIGNIFICANTLYDROPPED WHILETHE!VG#ELLDISK2EADS (MB) HASREMAINED
THESAME ORACTUALLYEVENINCREASEDSLIGHTLY3OTHEREAREMORELARGE)/SBEINGDONE PERHAPSDUETO
MOREQUERIESUSINGA3MART3CAN4HESMALL)/LATENCYHASSUFFEREDBECAUSEOFTHIS9OUR/,40
DATABASEUSERSRUNNINGONTHESAMECLUSTERMAYNOTICETHAT
4HISISAPLACEWHEREYOUSHOULDFINDOUTWHATCAUSESALLTHISEXTRA)/7EWILLLOOKATITLATERINTHIS
CHAPTER)FYOUWANTTOAVOIDSITUATIONSWHERELARGE3MART3CANSIMPACTSMALLSINGLE BLOCK )/S YOU
SHOULDCONSIDERENABLINGTHE)/2ESOURCE-ANAGER)/2- WHICHALLOWSYOUTOSETTHE)/2-GOALTO
OPTIMIZERANDOM)/LATENCYASOPPOSEDTOFULLSCANNINGTHROUGHPUT!DDITIONALLY YOUCOULDMAKESURE
THATYOURHOTSEGMENTSACCESSEDWITHSINGLE BLOCKREADSARECACHEDINFLASHCACHE3EE#HAPTERFOR
MOREABOUT)/2-ANDRESOURCEMANAGEMENT
&IGURE SHOWSANEXAMPLEOFTHETOTALCELLDISK)/THROUGHPUTCHART.OTETHATTHEMETRICUSED
STARTSWITHh4OTAL vINDICATINGTHATTHETHROUGHPUT-"VALUESARESUMMEDOVERALLTWELVEDISKSINTHECELL
ASOPPOSEDTOTHE!VERAGEMETRICS WHICHSHOWAVERAGESACROSSTHEDISKS 4HISISAVERYIMPORTANT
POINT)FYOUARESUMMINGTOGETHERaverageMETRICSLIKEINTHE!VG#ELLDISK2EADSSECTIONTOPRIGHT
CORNER OF&IGURE  THENYOUWILLSTILLENDUPWITHASUMOFTHEAVERAGECELLDISKREADRATES NOTTHE
TOTALAGGREGATETHROUGHPUTOFALLDISKSINTHECELL4HECELLDISKSaverageMETRICSAREGOODFORCHARTING
THINGSLIKETHEMIN MAX ANDCELL LEVELAVERAGE)/LATENCIESORDISKUTILIZATIONFIGURES BUTNOTVALIDFOR
MONITORINGTHINGSLIKE)/THROUGHPUTOFALLCELLS


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

)TISVALIDTOsumTOGETHER4OTAL#ELLDISKMETRICSTOGETTHETOTALAGGREGATETHROUGHPUT SOFROM
&IGURE WESEETHATTHEAGGREGATEDISKREADTHROUGHPUTACROSSALLTHECELLSISAROUND
-"SECONDFORTHEGIVENWORKLOAD


Figure 12-16. Celldisk-level Total metrics summed together for monitoring total I/O throughput

3OMETIMES ESPECIALLYWHENTHEMONITORING5)CHARTSDONTSEEMTOMAKESENSE YOUMIGHTASKWHERE


THESECHARTSTAKETHEIRDATAFROM4HISISEASYTOFINDOUT ASTHE'RID#ONTROLMETRICSPLUG INSAREJUST
0ERLSCRIPTS WHICHTHENRUNCOMMAND LINEUTILITIESLIKE#ELL#,)ORPLAIN33(CLIENTSTOFETCHTHEIR
METRICS9OUCANCHECKTHEDIRECTORYWHEREYOUHAVEINSTALLEDTHE%XADATA3TORAGE#ELL3ERVER
MONITORINGPLUG INYOURSELF
[bd P__^aPR[T_a^SdRc\XSS[TfPaTPVT]c Vbbhb\P]PS\X]bRaX_cbT\g^aPR[TNRT[[

^aPR[TNRT[[NRPcTV^ahN\TcaXRb_[^aPR[TNRT[[NVaXSSXbZNR^]UXV_[
^aPR[TNRT[[NRT[[SXbZNR^]UXV_[^aPR[TNRT[[NVaXSSXbZN\TcaXRb_[
^aPR[TNRT[[NRT[[SXbZN\TcaXRb_[^aPR[TNRT[[NX]cTaR^]]TRcN\TcaXRb_[
^aPR[TNRT[[NR^\\^]_\^aPR[TNRT[[NX^a\Q^^bcN\TcaXRb_[
^aPR[TNRT[[NR^]UXV_[^aPR[TNRT[[NX^a\NR^]UXV_[
^aPR[TNRT[[NR^]bd\TaVa^d_N\TcaXRb_[^aPR[TNRT[[N[d]NR^]UXV_[
^aPR[TNRT[[NSPcPQPbTN\TcaXRb_[^aPR[TNRT[[N[d]N\TcaXRb_[
^aPR[TNRT[[NSXbZNR^]UXV_[^aPR[TNRT[[N\TcaXRb_[
^aPR[TNRT[[NSXbZN\TcaXRb_[^aPR[TNRT[[N^UU[^PSN\TcaXRb_[
^aPR[TNRT[[NU[PbWRPRWTN\TcaXRb_[^aPR[TNRT[[NaTb__[
^aPR[TNRT[[NUbN\TcaXRb_[
,ETSTAKEAQUICKLOOKATONEOFTHESE0ERLSCRIPTS ^aPR[TNRT[[NRT[[SXbZN\TcaXRb_[ TOSEEWHEREITGETS
ITSDATA
...beginning of the script skipped...

\hR^\\P]S,bbW[RT[[\^]Xc^aX_PSSaTbbRT[[R[X
[Xbc\TcaXRRdaaT]cfWTaT^QYTRcCh_T,K24;;38B:K*
g\[T[

\hg\[^dc,OR^\\P]SO*



#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

\h_PabTa,G<;))?PabTa-]Tf7P]S[Tab,-j
BcPac,-KWP]S[TNbcPac
4]S,-KWP]S[TNT]S
2WPa,-KRWPaPRcTa3PcP
l*


...rest of the script skipped...
!SYOUCANSEE THE%XADATA#ELL'RID#ONTROLPLUG INISMERELYABUNCHOF0ERLSCRIPTS WHICHTHENLOG
INTOTARGETCELLSVIA33(ANDRUNREGULAR#ELL#,)COMMANDSWITH8-,OUTPUTMODE4HEOUTPUTISTHEN
PARSEDANDRETURNEDTOTHE'RID#ONTROLAGENT
.OWTHATWEKNOWWHICHACTUALCOMMANDTHE'RID#ONTROLPLUG INUSESFORPULLINGDATA WECAN
RUNITOURSELVESANDSEEWHICHDATAITINCLUDES.OTETHATTHERESANADDITIONALFILTERCONDITIONSHOWING
ONLYONEMETRICFORBREVITY

2T[[2;8-;
;8BC<4CA822DAA4=CF74A4^QYTRcCh_T,24;;38B:0=3]P\T,23N8>NC<NANB<NA@
23N8>NC<NANB<NA@23NNRT[["!$"(dbaT`dTbc
23N8>NC<NANB<NA@23N NRT[[" %""dbaT`dTbc
23N8>NC<NANB<NA@23N!NRT[["%%&dbaT`dTbc
23N8>NC<NANB<NA@23N"NRT[[" # !dbaT`dTbc
23N8>NC<NANB<NA@23N#NRT[["!# dbaT`dTbc
23N8>NC<NANB<NA@23N$NRT[["!'& dbaT`dTbc
23N8>NC<NANB<NA@23N%NRT[[""#'dbaT`dTbc
23N8>NC<NANB<NA@23N&NRT[["!!&( dbaT`dTbc
23N8>NC<NANB<NA@23N'NRT[["!""dbaT`dTbc
23N8>NC<NANB<NA@23N(NRT[[" ! (dbaT`dTbc
23N8>NC<NANB<NA@23N NRT[["! dbaT`dTbc
23N8>NC<NANB<NA@23N NRT[[" $$%dbaT`dTbc
23N8>NC<NANB<NA@553NNRT[["#%#dbaT`dTbc
23N8>NC<NANB<NA@553N NRT[["#& dbaT`dTbc
23N8>NC<NANB<NA@553N!NRT[["#&%dbaT`dTbc
23N8>NC<NANB<NA@553N"NRT[["#&"dbaT`dTbc
23N8>NC<NANB<NA@553N#NRT[["#$dbaT`dTbc
23N8>NC<NANB<NA@553N$NRT[["#%&dbaT`dTbc
23N8>NC<NANB<NA@553N%NRT[["#%(dbaT`dTbc
23N8>NC<NANB<NA@553N&NRT[["#&#dbaT`dTbc
23N8>NC<NANB<NA@553N'NRT[["#$%dbaT`dTbc
23N8>NC<NANB<NA@553N(NRT[["#$(dbaT`dTbc
23N8>NC<NANB<NA@553N NRT[["#% dbaT`dTbc
23N8>NC<NANB<NA@553N NRT[["#$$dbaT`dTbc
23N8>NC<NANB<NA@553N !NRT[["#%&dbaT`dTbc
23N8>NC<NANB<NA@553N "NRT[["#'dbaT`dTbc
23N8>NC<NANB<NA@553N #NRT[["#'"dbaT`dTbc
23N8>NC<NANB<NA@553N $NRT[["#& dbaT`dTbc

4HEGRIDDISKNAMESSTARTINGWITH53NINDICATETHATTHESELINESAREREPORTEDFORFLASHDISKSEACHCELLHAS
¾'"FLASHCARDS BUTEACHFLASHCARDPRESENTSFOURFLASHDISKSTOTHEOPERATINGSYSTEM TOTALINGFLASH
DISKSPERCELL 3O USINGTHISEXERCISEWEHAVEFOUNDOUTWHETHERTHECELL DISKMETRICSINCLUDEFLASHDISK
METRICSINADDITIONTOREGULARDISKDRIVESˆANDYES THEYDO4HISMAKESSOMEOFTHECHARTSLIE ASTHE


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

FLASHREADTIMESTHATAREANORDEROFMAGNITUDEFASTERWILLMAKETHEAVERAGEREGULARDISKREADTIMESLOOK
BETTERASWELL)NFACT SOMEOFTHECELLDISKSHAVEAPRETTYBADSMALLREAD)/LATENCY&OREXAMPLE UPTO
MILLISECONDSPERREQUESTONAVERAGE WHICHISMUCHHIGHERTHANTHEAVERAGESEEK ROTATIONAL DATA
TRANSFERLATENCYSHOULDBEFORAMODERN20-DISK EVENIFITISBUSYWITHRANDOM)/
REQUESTS4HISPROBABLYINDICATES)/QUEUEINGSOMEWHERE LIKELYINTHE/3)/QUEUE WHICHYOUCAN
CONFIRMBYLOOKINGATTHEPfPXc ANDbeRc\COLUMNSINX^bcPcOUTPUTMOREABOUTX^bcPcLATERINTHIS
CHAPTER BUT \P]X^bcPcISYOURFRIEND 
3O IDEALLYYOUSHOULDMONITORTHEFLASHDISKSANDGOODOLDSPINNINGDISKDRIVESSEPARATELY BYEITHER
POST PROCESSINGTHERETURNEDDATAORJUSTRUNNINGTWOSEPARATE#ELL#,)COMMANDSINYOURMONITORING
TOOLS#ELL#,)ALLOWSYOUTOFILTERITSRESULTSFURTHERUSINGAREGULAREXPRESSION ASSHOWNHERE
2T[[2;8-;8BC<4CA822DAA4=CF74A4^QYTRcCh_T,24;;38B:
0=3]P\T,23N8>NC<NANB<NA@0=3\TcaXR>QYTRc=P\T;8:453N*

23N8>NC<NANB<NA@53NNRT[["#%#dbaT`dTbc
23N8>NC<NANB<NA@53N NRT[["#& dbaT`dTbc
23N8>NC<NANB<NA@53N!NRT[["#&%dbaT`dTbc
23N8>NC<NANB<NA@53N"NRT[["#&"dbaT`dTbc
23N8>NC<NANB<NA@53N#NRT[["#$dbaT`dTbc
23N8>NC<NANB<NA@53N$NRT[["#%&dbaT`dTbc
23N8>NC<NANB<NA@53N%NRT[["#%(dbaT`dTbc
23N8>NC<NANB<NA@53N&NRT[["#&#dbaT`dTbc
23N8>NC<NANB<NA@53N'NRT[["#$%dbaT`dTbc
23N8>NC<NANB<NA@53N(NRT[["#$(dbaT`dTbc
23N8>NC<NANB<NA@53N NRT[["#% dbaT`dTbc
23N8>NC<NANB<NA@53N NRT[["#$$dbaT`dTbc
23N8>NC<NANB<NA@53N !NRT[["#%&dbaT`dTbc
23N8>NC<NANB<NA@53N "NRT[["#'dbaT`dTbc
23N8>NC<NANB<NA@53N #NRT[["#'"dbaT`dTbc
23N8>NC<NANB<NA@53N $NRT[["#& dbaT`dTbc
.OWWESEEONLYTHEFLASHDRIVES9OUCANREADMOREABOUTTHE#ELL#,)USAGEANDSYNTAXEXAMPLESIN
!PPENDIX!OFTHISBOOKANDALSOINTHEOFFICIALDOCUMENTATION Oracle Exadata Storage Server Software
User’s Guide

7HICH#ELL-ETRICSTO5SE
7HICHCELLMETRICSTOUSEISANIMPORTANTQUESTION/RACLEPROVIDESAHUGEVARIETYOFDIFFERENTMETRICS
FROMTHEDATABASELEVEL THEHOSTSERVERLEVEL ANDTHE%XADATACELLLEVEL)TISVERYEASYTOGETLOSTINTHEM
OREVENWORSE GETMISLEDANDTROUBLESHOOTAWRONGORNON EXISTENTPROBLEM)NPERFORMANCE
TROUBLESHOOTING WESHOULDSTARTFROMWHATMATTERSˆUSERRESPONSETIMEˆANDDRILLDOWNFROMTHEREAS
EXPLAINEDINTHEPREVIOUSSECTIONSOFTHISCHAPTER "UTGENERALEFFICIENCYMONITORING UTILIZATION
OVERVIEW ANDCAPACITYPLANNINGARESOMETIMESGOODREASONSFOREXAMININGCELL LEVELAGGREGATED
METRICS
4HISMAYCOMEASASURPRISEIFYOUHAVEEXPECTEDMORE BUTTHEREISNOLONGLISTOFSECRETANDSPECIAL
%XADATAMETRICSYOUSHOULDMONITORINYOURCELLS!CELLISJUSTASERVER WITH2!- #05S ANDDISKS
SENDINGDATAOUTOVERANETWORKLINK3OTHEFUNDAMENTALMETRICSYOUWOULDWANTTOMONITORATTHECELL
LEVELARETHESAMEYOUDUSEINANYSERVER#05UTILIZATION SYSTEMLOAD MEMORYUTILIZATIONANDDISK
UTILIZATION AND)/THROUGHPUTANDLATENCY4HEMOSTIMPORTANTMETRICSAREAVAILABLEINTHE'RID
#ONTROL3TORAGE#ELLMONITORINGPLUG IN ANDTHERESTCANBEEXTRACTEDFROM/37ATCHERLOGFILES4HE
ADVANCEDMETRICSCOMEINTOPLAYONLYWHENDEALINGWITHBUGSORSOMERARE VERYSPECIFICPERFORMANCE
ISSUES SOTHEYSHOULDNTREALLYBEACTIVELYMONITOREDUNLESSTHEREISAPROBLEM


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

/NETOPICDESERVESSOMEELABORATIONˆTHE#05USAGEMONITORING BOTHINTHEDATABASEANDCELLS
4HEDATAWAREHOUSESANDREPORTINGSYSTEMS UNLIKE/,40DATABASES DONTUSUALLYREQUIREVERYQUICK
RESPONSETIMESFORUSERQUERIES/FCOURSE THEFASTERAQUERYCOMPLETES THEBETTER BUTINA$7 PEOPLE
DONTREALLYNOTICEIFAQUERYRANINSECONDSINSTEADOFSECONDS"UTATYPICAL/,40USERWOULD
DEFINITELYNOTICEIFTHEIR SECONDQUERYTOOKSECONDSOCCASIONALLY4HATSONEOFTHEREASONSWHYIN
/,40SERVERSYOUWOULDNOTWANTTOCONSTANTLYRUNAT#05UTILIZATION9OUCANNOTDOTHATANDALSO
MAINTAINSTABLEPERFORMANCE)NAN/,40SYSTEMYOUMUSTLEAVESOMEHEADROOM)N$7SERVERS
HOWEVER THESMALLFLUCTUATIONSINPERFORMANCEWOULDNOTBENOTICED ANDYOUCANAFFORDTORUNAT
OF#05UTILIZATIONINORDERTOGETTHEMOSTOUTOFYOURINVESTMENT
(OWEVER %XADATACOMPLICATESTHINGS)NADDITIONTOHAVINGMULTIPLEDATABASENODES YOUALSOHAVE
ANOTHERWHOLELAYEROFSERVERSTHECELLS4HINGSGETINTERESTINGESPECIALLYWHENRUNNING3MART3CANS
WITHHIGHPARALLELISMAGAINST%(##TABLES4HATSBECAUSEOFFLOADEDDECOMPRESSIONREQUIRESALOTOF
#05CYCLESINTHECELLS4HUSITISPOSSIBLETHATFORSOMEWORKLOADSYOURCELLS#05SWILLBEBUSY
ANDUNABLETOFEEDDATABACKTOTHEDATABASELAYERFASTENOUGH4HEDATABASELAYER#05SMAYBEHALF
IDLE WHILECELLSCOULDREALLYUSESOMEEXTRA#05CAPACITY
4HERISKFROMCELLUTILIZATIONREACHINGISTHEREASON/RACLEMADERT[[baeABLETOSKIPOFFLOAD
PROCESSINGFORSOMEDATABLOCKSANDPASSTHESEBLOCKSSTRAIGHTBACKTOTHEDATABASESTARTINGINRT[[bae
 4HECELLCHECKSWHETHERITS#05UTILIZATIONISOVERANDWHETHERTHEDATABASE#05
UTILIZATIONITSSENTINBASEDONRESOURCEMANAGERSTATSFROMTHEDATABASE ISLOWERTHANTHAT!NDIFSO
SOMEBLOCKSARENOTPROCESSEDINTHECELLS BUTPASSEDTHROUGHTOTHEDATABASEDIRECTLY4HEDATABASE
THENWILLDECRYPTIFNEEDED ANDDECOMPRESSTHEBLOCKSANDPERFORMPROJECTIONANDFILTERINGINTHE
DATABASELAYER4HISALLOWSYOUTOFULLYUTILIZEALLYOUR#05CAPACITYINBOTHLAYERSOFTHE%XADATACLUSTER
(OWEVER THISAUTOMATICALLYMEANSTHATIFSOMEBLOCKSARESUDDENLYPROCESSEDINTHEDATABASELAYER
INSTEADOFBEINGOFFLOADEDTOCELLS THENYOUMAYSEEUNEXPECTED#05UTILIZATIONSPIKESINTHEDATABASE
LAYER WHENCELLSARETOOBUSY4HISSHOULDNTBEAPROBLEMONMOST$7SYSTEMS ESPECIALLYWITH
PROPERLYCONFIGUREDRESOURCEMANAGER BUTYOUWOULDWANTTOWATCHOUTFORTHISWHENRUNNING/,40OR
OTHERLOW LATENCYSYSTEMSON%XADATA
!SUSUAL /RACLEPROVIDESGOODMETRICSABOUTTHISPASS THROUGHFEATURE7HENEVERTHEOFFLOAD
PROCESSINGISSKIPPEDFORSOMEBLOCKSDURINGA3MART3CANANDTHESEBLOCKSARESENTBACKTOTHE
DATABASELAYERFORPROCESSING THESTATISTIChCELLPHYSICAL)/BYTESPUSHEDBACKDUETOEXCESSIVE#05ON
CELLv GETSINCREMENTEDINEB4BBC0CEBHBBC0CAND!72REPORTS2EADMOREABOUTTHISFEATUREAND
STATISTICIN#HAPTER

-ONITORING%XADATA3TORAGE#ELL/3 LEVEL-ETRICS
/RACLE$ATABASEANDTHERT[[baeSOFTWAREDOAGOODJOBOFGATHERINGVARIOUSPERFORMANCEMETRICS BUT
THEREARESTILLCASESWHEREYOUWOULDWANTTOUSEAN/3TOOLINSTEAD/NEOFTHEREASONSISTHATUSUALLY
THEEVIEWSIN/RACLETELLYOUWHAT/RACLEthinksITSDOING BUTTHISMAYNOTNECESSARILYBEWHATSREALLY
HAPPENINGIFYOUHITABUGORSOMEOTHERLIMITATIONOF/RACLESBUILT ININSTRUMENTATION/NEOFTHE
LIMITATIONSISLOW LEVEL)/MEASUREMENT

Monitoring the Storage Cell Server’s I/O Metrics with iostat


"OTH/RACLE$ATABASEANDTHESTORAGECELLSDOMEASURETHE)/#OMPLETION4IMEINOTHERWORDS THE
RESPONSETIMEOF)/S7ITHSYNCHRONOUS)/OPERATIONS /RACLES)/WAITTIMEISMERELYTHESYSTEMCALL
LIKE_aTPS COMPLETIONTIME7ITHASYNCHRONOUS)/ THERESPONSETIMEMEASUREMENTISTRICKIER ASAN
ASYNCHRONOUS)/SUBMITSYSTEMCALLWILLNOTBLOCKANDWAITITWILLRETURNIMMEDIATELYINMICROSECONDS
ANDSOME)/REAPINGSYSTEMCALLWILLBEEXECUTEDLATER WHICHWILLMARKTHE)/OPERATIONASCOMPLETE
4HE%XADATASTORAGECELLSKEEPTRACKOFEACHASYNCHRONOUS)/REQUESTFOREXAMPLE WHENITWAS


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

SUBMITTED ANDONCETHE)/ISSUCCESSFULLYREAPED THEYWILLCHECKTHEREAPINGTIMESTAMPAGAINSTTHAT


)/SSUBMITTIMESTAMPANDKNOWITSDURATION
2EGARDLESSOFTHISEXTRART[[bae LEVEL)/MONITORING THECELLSSTILLDONTBREAKTHE)/RESPONSE
TIMEINTOTHETWOIMPORTANTCOMPONENTSHOWMUCHTIMETHIS)/REQUESTSPENTUSELESSLYwaiting INTHE
/3)/QUEUEBEFOREITWASEVENSENTOUTTOTHE3#3)DEVICE ANDHOWLONGTHEACTUALHARDWAREservice
timeWASONCETHE)/REQUESTWASSENTOUTTOTHEHARDWARE#OMPARINGTHE)/SERVICETIMETOWAITING
TIMEGIVESANIMPORTANTCLUEABOUTWHETHERTHESTORAGEHARDWAREITSELFRESPONDSSLOWLY INWHICHCASE
THESERVICETIMEISHIGHERTHANYOUWOULDEXPECTFROMAMODERNDISKDRIVE

 .OTE3OWHATISTHISNORMAL)/SERVICETIMETOEXPECTFROMDISKS4HATDEPENDSONWHICHDISKSYOUHAVE
WHATTHEIRSEEKLATENCYIS HOWFARTHEDISKREADWRITEHEADHASTOSEEKFROMITSPREVIOUSLOCATION WHATTHE
ROTATIONALLATENCYOFTHEDISKIS HOWFASTITSPINS20- ANDHOWFASTITCANTRANSFERTHEBITSJUSTREADOVERTHE
WIRESORFIBER 4HEREISNOMAGICINCALCULATINGWHATAGOODSERVICETIMESHOULDBEFORADISKITSALLBASEDONTHE
PHYSICALCAPABILITIESOFTHEDISK ANDTHESECAPABILITIESAREDOCUMENTEDINTHEVENDORSDISKSPECS9OUCANREAD
MOREABOUTTHEVARIOUSLATENCIESINVOLVEDFROM7IKIPEDIA
Wcc_)T]fXZX_TSXP^aVfXZX7PaSNSXbZNSaXeT0RRTbbNcX\T

/FCOURSE THEREMAYBEOTHEROVERHEAD LIKE3!.STORAGENETWORKROUNDTRIPTIMESANDANYEXTRA


LATENCYCAUSEDBYSTORAGECONTROLLERS SWITCHES ANDSOON"UTREMEMBER %XADATAISNOTCONNECTEDTO
3!.STORAGETHEDISKSAREATTACHEDDIRECTLYTOTHESTORAGECELLS%ACHSTORAGECELLHASALITTLE,3)
-EGA2AIDCONTROLLERINIT ANDTHEDISKSAREATTACHEDTOTHATCONTROLLER4HEREARENOCOMPLEXNETWORK
COMPONENTSBETWEENTHEDISKSANDSTORAGECELLS WHICHMIGHTDRIVEUPLATENCYORFAIL-OREIMPORTANTLY
THEREARENOhOTHERvDATABASESORAPPLICATIONSCONNECTEDTOTHESTORAGE WHICHYOUHAVENOCONTROLOVER
BUTWHICHCOULDSUDDENLYSTARTSATURATINGTHEDISKSWITHOUTAWARNING!LLYOUWOULDSEEISTHATTHEDISK
)/SERVICETIMESSUDDENLYGOUPASTHESTORAGEARRAYGETSOVERLOADED
!NYWAY ASMALL)/REQUESTUPTO+" AGAINSTAMODERN20-DISKDRIVESHOULDIDEALLY
HAVEAVERAGESERVICETIMEOFnMILLISECONDSPER)/REQUEST4HISCOMESFROMAMSAVERAGESEEK
LATENCY MSAVERAGEROTATIONALLATENCY PLUSMSFORTRANSFERRINGTHEK"OVER3!3CHANNELS)N
THEORYTHISAVERAGESEEKLATENCYISAPESSIMISTICFIGURE ASSUMINGTHATTHEWHOLEDISKISFULLANDTHEDISK
READWRITEHEADSHAVETODORANDOMSEEKSACROSSTRACKSFROMENDTOENDOFTHEDISKCYLINDERS"UTYOU
PROBABLYHAVECONFIGUREDYOURDISKSINTOHOTTERANDCOLDERREGIONSTHE2%#/DISKGROUP FOREXAMPLE
ANDTHECOLDERREGIONSAREVISITEDMUCHLESSFREQUENTLY DRIVINGTHEREALAVERAGESEEKTIMESSHORTER3O
WHILEYOUMAYGETTHESELOWnMSSERVICETIMESWHENYOURDISKHEADSDONTHAVETOSEEKTOOFAR IN
PRACTICE MSAVERAGE)/SERVICETIMESARECOMPLETELY/+ONCEYOURUNREALPRODUCTIONWORKLOADS


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

 +EVIN3AYS)MOFTENSURPRISEDATTHELACKOFFOCUSPAIDTODATAPLACEMENTONPHYSICALDISKS4HEAUTHORSARE
CORRECTTOPOINTOUTTHATSO CALLEDSHORT STROKED)/REQUESTSHAVESOME IFNOTALL SEEKTIMEREMOVEDFROMTHE
SERVICETIMEOFTHEREQUEST(OWEVER )DLIKETOELABORATEONTHISPOINTFURTHER7HENDISCUSSING%XADATAWEOFTEN
CONCENTRATEONDATACAPACITYOFENORMOUSPROPORTION(OWEVER ITISSELDOMTHECASETHATALLDATAISACTIVEINALL
QUERIES-OSTDATAWAREHOUSESHAVEANACTIVESUBSETOFTHETOTALDATABASE/NECANEASILYENVISIONTHEACTIVE
PORTIONOFA4"DATAWAREHOUSEBEINGASSMALLAS4"*USTONEPERCENT(OWCANTHISBE!LWAYSREMEMBER
THAT/RACLE$ATABASE COMBINEDWITH%XADATA OFFERSMANYhLINESOFDEFENSEvINFRONTOFTHEDREADEDPHYSICAL)/
"EFOREPHYSICAL)/THEREISARESULTSCACHEMISS 3'!BUFFERCACHEMISSYES ITHASPURPOSEEVENWHEN%XADATAIS
INVOLVED PARTITIONELIMINATION ANDFINALLYASTORAGEINDEXMISS/NCETHROUGHTHESEhLINESOFDEFENSE vTHEREISA
PHYSICAL)/FORDATATHATISPOTENTIALLYCOMPRESSEDWITHACOMPRESSIONRATIOOF SAY 4OTHATEND THE4"
ACTIVEPORTIONISACTUALLY4"ˆASIZABLEAMOUNTOFDATA3EEKTIMESARETHELIONSSHAREOFPHYSICAL)/SERVICE
TIME)NFACT FROMACURRENTCOSTPERSPECTIVE THEOPTIMALDATAWAREHOUSEARCHITECTUREWOULDCONSISTOFSEEK FREE
ROTATIONALHARDDISKDRIVES7HILETHATMAYSEEMABSURD ALLOWMETOPOINTOUTTHAT4"ISEXACTLYPERCENTOFTHE
AGGREGATESURFACEAREAOFTHE'" 3!3DRIVESOFFEREDINAFULLRACK8MODELWITHHIGH PERFORMANCE
DRIVES,ONGSEEKSARENOTAFIXEDCOSTINMODERNDATAWAREHOUSESˆESPECIALLYWHENTHEACTIVEPORTIONISSUCHA
SMALLPERCENTAGEOFTHEWHOLE)FTHEACTIVEPORTIONOFTHEDATAWAREHOUSEREMAINSAFIXEDPERCENTAGE YETSERVICE
TIMESINCREASEOVERTIME THEPROBLEMISLIKELYFRAGMENTATION$ATASCATTEREDOVERTHEENTIRETYOFROUND SPINNING
MAGNETICMEDIAISNOTOPTIMALREGARDLESSOFWHETHER/RACLE$ATABASEISCONNECTEDTOCONVENTIONALSTORAGEOR
%XADATA%VENWITH%XADATA THEFUNDAMENTALSSTILLAPPLY

4HEWHOLEPOINTOFTHISEXPLANATIONSOFARISREALLYTHATITis POSSIBLETOKNOWWHATTHEIDEALDISK
serviceTIMESSHOULDBEFOR%XADATACELLSDISKDRIVES ANDIFTHESERVICETIMESARECONSTANTLYMUCHHIGHER
THANTHAT THENTHEREISSOMEPROBLEMWITHTHESTORAGEHARDWAREDISKSORCONTROLLERS 7ITH3!.
STORAGE HIGH/3 LEVELSERVICETIMESCOULDALSOMEANTHATTHEREISSOMEQUEUINGGOINGONINSIDETHE3!.
NETWORKORTHESTORAGEARRAYFOREXAMPLE IFATHOUSANDOTHERSERVERSAREHAMMERINGTHESAMESTORAGE
ARRAYWITH)/ "UTASSAIDABOVE %XADATASTORAGECELLSHAVEDEDICATEDSTORAGEINTHEMONLYTHECURRENT
CELL/3CANACCESSTHISSTORAGE ANDALL)/SAREVISIBLEINX^bcPc
3O WHATIFTHESERVICETIMEIS/+ BUT/RACLERT[[bae STILLSEESBAD)/PERFORMANCE7ELLTHISMAY
MEANTHEREISSTILLqueuingGOINGONINSIDETHECELL,INUXSERVERSˆANDX^bcPcCANSHOWTHISINFORMATION
TOO9OUCANHAVEONLYALIMITEDNUMBEROFOUTSTANDING)/SINTHEhON THE FLYvSTATEAGAINSTYOUR
STORAGECONTROLLER,5.S4HESTORAGECONTROLLERNEEDSTOKEEPTRACKOFEACHOUTSTANDING)/FOR
EXAMPLE ITHASTOREMEMBERWHEREINTHEHOST2!-TOWRITETHEBLOCKONCEITISREADFROMDISKAND
ARRIVESATTHECONTROLLER ANDTHESE)/SLOTSARELIMITED3OTHE,INUXKERNELDOESNOTALLOWSENDINGOUT
MORE)/STHANTHESTORAGECONTROLLERCANHANDLEOTHERWISEA3#3)RESETWOULDOCCUR4HESETHROTTLED
)/SWILLHAVETOWAITINTHE/3DISKDEVICE)/QUEUEˆANDTHEYAREuselessly WAITINGTHERETHEYARENT
EVENSENTOUTTOTHESTORAGECONTROLLERYET/NLYWHENSOMEPREVIOUSLYOUTSTANDING)/OPERATION
COMPLETESWILLTHEFIRSTITEMINTHEQUEUEBESENTTOTHEDISKSASSUMINGTHATTHE)/LATENCYDEADLINE
HASNTBEENREACHEDFORSOMEREQUESTRT[[baeUSESTHE,INUXhDEADLINEv)/SCHEDULER 


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

)FYOUDOHAVE)/WAITINGQUEUEINGTIME GOINGON THENTHEPfPXcAVERAGE)/COMPLETIONTIME


COLUMNINX^bcPcWILLBESIGNIFICANTLYHIGHERTHANTHEbeRc\ESTIMATED)/SERVICETIME COLUMN.OTE
THATTHENAMEhAWAITvISSOMEWHATMISLEADING ASITDOESNOTSHOWONLYTHEWAITQUEUING TIME IT
SHOWSTHETOTALWAITPLUSSERVICETIME3IMILARLY THEPeV`dbiCOLUMNDOESNOTSHOWJUSTTHEAVERAGE)/
WAITQUEUELENGTH BUTRATHERTHEAVERAGEtotalNUMBEROFNOTCOMPLETED)/SINTHE)/REQUESTQUEUE
REGARDLESSOFWHETHERTHEYHAVEALREADYBEENSENTOUTTOSTORAGEHARDWAREAREALREADYBEINGSERVICED
ORSTILLWAITINGINTHE)/QUEUENOTYETSERVICED 
,INUXX^bcPcSHOWSSTATISTICSFORTHEDISKPARTITIONANDTHECELLSOFTWARE2!)$DEVICEUSEDFORCELL
/3PARTITIONMIRRORING 7ECANFILTEROUTTHOSELINESSOTHATONLYTHEPHYSICALDISKSTATSWOULDBELISTED
&OREXAMPLE
XX^bcPcg\$kTVaT_ebSJ(LkM\S

;X]dg!% ' (#" #T[$T]ZRT["T]ZXcTRR^\$!!! 

PeVR_d)dbTa]XRTbhbcT\X^fPXcbcTP[XS[T
&"&$  (&$ 

3TeXRT)abfba<1bf<1bPeVa`biPeV`dbiPPfPXcbbeRc\dcX[
bSP !$%&""(%"!%  '## "(& ""((&(#
bSQ'%#'&$"(#!##( (#'&#((#" %$#(
bSR$(( &$"'& # %!"#%"''%$ (#!
bSS$#!'("&$ $ $#%'&  $ '# 
bST '#"!' %! #'' "(#%%% #&'%&#
bSU %! '"$$%! ' " $(!"!
bSV%%!!!%!# $ $ $$"#($&"!$(($ &
bSW#$%!$"'% $ %$! #!$(&$%""(&
bSX  $" ##$' &%' ("%%#%"(## %"
bSY#"( %%"'& ! "$ "&$'!$$%$ "(#
bSZ '&"($ (!  #%"%%''$$(##%#&""
bS[ %%$# ('% $(" %&%"#%'"!&#
bS\!' #&(" $( "'#
bS]!'&"" !##!$$"# 
bS^!'#" " !#%"$&"# 
bS_!'!""!##($'"# 
bS`!&(#$" !$$$'"" 
bSa!'(!'"!###%"# 
bSb!(#"!" !#"$$%"# 
bSc!'$"" !##($#"# 
bSd!'!!("!#%#$%"# 
bSe!'%#(" !$ $$"" 
bSf!("$'" !$ !$""" 
bSg!'&"$" !#"&$&"" 
bSh!'#% " !$!'$!"! 
bSi!' !("!#%"$&"# 
bSPP!'%"!" !##%"# 
bSPQ!'(""" !#"&$'"# 
bSPR!(!("!#"%$'"# 
7AITAMINUTE3HOULDNTWESEEFEWERDISKS ASEACHCELLHASONLYHARDDRIVESINIT7ESEESOMANY
DISKSBECAUSEINADDITIONTOTHEHARDDISKS CELLSALSOHAVETHEIRFLASHCARDSPRESENTEDASSEPARATE


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

DISKS&INALLY THERESALSOONE53"DISK9OUCANUSETHE[bbRbXCOMMANDINTHECELLTOSEEALLDISKS
DETECTEDBYTHE/3
[
[bbRbX
J)!))LSXbZ;;B8<A(!% 'X! !STebSP
J)!) )LSXbZ;B8<A(!% 'X! !STebSQ
J)!)!)LSXbZ;B8<A(!% 'X! !STebSR
J)!)")LSXbZ;B8<A(!% 'X! !STebSS
J)!)#)LSXbZ;B8<A(!% 'X! !STebST
J)!)$)LSXbZ;B8<A(!% 'X! !STebSU
J)!)%)LSXbZ;B8<A(!% 'X! !STebSV
J)!)&)LSXbZ;B8<A(!% 'X! !STebSW
J)!)')LSXbZ;B8<A(!% 'X! !STebSX
J)!)()LSXbZ;B8<A(!% 'X! !STebSY
J)!) )LSXbZ;B8<A(!% 'X! !STebSZ
J)!) )LSXbZ;B8<A(!% 'X! !STebS[
J )))LSXbZDD]XVT]?B0# STebS\
J')))LSXbZ00C0<<0AE4;;B3''B0!3!HSTebS]
J')) )LSXbZ0C0<0AE4;;B3''B0!3!HSTebS^
J'))!)LSXbZ0C0<0AE4;;B3''B0!3!HSTebS_
J'))")LSXbZ0C0<0AE4;;B3''B0!3!HSTebS`
J()))LSXbZ0C0<0AE4;;B3''B0!3!HSTebSa
J()) )LSXbZ0C0<0AE4;;B3''B0!3!HSTebSb
J())!)LSXbZ0C0<0AE4;;B3''B0!3!HSTebSc
J())")LSXbZ0C0<0AE4;;B3''B0!3!HSTebSd
J )))LSXbZ0C0<0AE4;;B3''B0!3!HSTebSe
J )) )LSXbZ0C0<0AE4;;B3''B0!3!HSTebSf
J ))!)LSXbZ0C0<0AE4;;B3''B0!3!HSTebSg
J ))")LSXbZ0C0<0AE4;;B3''B0!3!HSTebSh
J )))LSXbZ0C0<0AE4;;B3''B0!3!HSTebSi
J )) )LSXbZ0C0<0AE4;;B3''B0!3!HSTebSPP
J ))!)LSXbZ0C0<0AE4;;B3''B0!3!HSTebSPQ
J ))")LSXbZ0C0<0AE4;;B3''B0!3!HSTebSPR

4HE,3)DISKSHEREARETHEHARDDISKSPRESENTEDTOTHEHOSTBYTHE,3)3#3)2!)$CONTROLLERFROMDEVICES
bSPTObS[ THE5NIGEN03!ISTHE53"DISK ANDTHE-!26%,,!4!DISKSARETHEFLASHCARDS)FYOU
COMPARETHEAVERAGE)/SERVICETIMESbeRc\ INX^bcPc YOULLSEETHATTHEDEVICESBELONGINGTOFLASH
CARDSHAVEASERVICETIMEANORDEROFMAGNITUDELOWERTHANHARDDISKDEVICES3O IFYOUWANTTOMONITOR
ONLYTHEHARD DISKDEVICES YOUCANFILTERX^bcPcOUTPUTTHISWAY

X^bcPcg\$kTVaT_3TeXRTkMbSJP[L
X
3TeXRT)abfba<1bf<1bPeVa`biPeV`dbiPfPXcbeRc\dcX[
bSP ($ !!!'%! "''#&$( %%%!%"&%((
bSQ(&( "%!# # "%#'$"  "#' !"" &&#
bSR&%%%##& !%&(% %"#%$"%$$
bSS%%&'("(# !&&%$!'#%"'"&#$!!
bST #$'!'( "  ! '('%#%!"&(&&
bSU % &($#$$"' !'# ""$
bSV& $%("$( !' ###$""&&%#!!$(#
bSW$% &#'#% !''"$!%#("&&'"'$$#
bSX !'(' #%" " $&((& ""''"$&"#


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

bSY$#"%$$#& !"(%'($%#%#'#$#'$
bSZ "#''%(&# "# !!&'"#  '"' &&
bS[ %# !"'' !%&&"(%&$!'!&!'"&$"

Advanced Cell Monitoring With OS Watcher


7HILETHEDATABASE LEVELWAITPROFILEAND31,-ONITORINGSHOULDBEUSEDASASTARTINGPOINTFOR
PERFORMANCEMONITORINGANDTROUBLESHOOTING SOMETIMESTHESEAPPROACHESARENOTENOUGHANDYOU
WANTTODRILLDEEPER4HISSECTIONEXPLAINSONEADDITIONALDATASOURCEFORTHAT%XADATASTORAGECELLSCOME
WITHAPREINSTALLEDTOOLCALLED/37ATCHER LOCATEDINTHE^_c^aPR[T^bfPcRWTa^bfDIRECTORY4HISTOOL
ISJUSTASETOFSHELLSCRIPTS WHICHTHENRUNSTANDARD/3TOOLS LIKEe\bcPc X^bcPcAND]TcbcPc TOCOLLECT
THEIRDATA/37ATCHERSBENEFITISTHATITRUNSAT/3LEVEL NOTINSIDEADATABASE SOITISNOTAFFECTEDBY
DATABASEHANGSANDPERFORMANCEISSUESORCASESWHERETHEDATABASESEVIEWSDONTSHOWTHETRUTHOR
HAVEENOUGHDETAIL!DDITIONALLY THEHIGH FREQUENCY/37ATCHERCOLLECTORSSAMPLEDATAEVERYSECONDOR
FEWSECONDS ALLOWINGITTODETECTSHORThHICCUPSvORBURSTSOFACTIVITY
9OUCANCHECKWHETHERTHE/37ATCHERISRUNNINGBYSIMPLYSEARCHINGFORANYPROCESSESWITH
h/37vINTHEIRNAMEBESURETOSEARCHFORBOTHUPPERANDLOWERCASE 
_
_VaT_[U>BFk^bf
$#"QX]ZbW^bfbdQbW7XVW5aT`4gPSPcPNRT[[baebcPcbW
!%# !QX]ZbW>BFPcRWTabW $ %'QiX_!
!''!&QX]ZbW>BFPcRWTa5<bW %'
!''#%QX]ZbW^bfbdQbW7XVW5aT`4gPSPcPNe\bcPcbW
!''#&QX]ZbW^bfbdQbW7XVW5aT`4gPSPcPN\_bcPcbW
!''#'QX]ZbW^bfbdQbW7XVW5aT`4gPSPcPN]TcbcPcbW
!''#(QX]ZbW^bfbdQbW7XVW5aT`4gPSPcPNX^bcPcbW
!''$"QX]ZbW^bfbdQbW7XVW5aT`4gPSPcPNc^_bW
!''&&QX]ZbW^bfbdQbW7XVW5aT`^_c^aPR[T^bfPcRWTa^bf4gPSPcPASb8]U^bW
!'( QX]QPbW^_c^aPR[T^bfPcRWTa^bf4gPSPcPASb8]U^bW7XVW5aT`
!PPARENTLY THE/37ATCHERISRUNNINGINTHISSTORAGECELLANDTHEREAREANUMBEROF%XADATA SPECIFIC
COLLECTORSENABLED TOO)FYOUWANTTOSEETHEHIERARCHYOFTHE/37ATCHERPROCESSDAEMONS THENON
,INUXYOUCANUSEEITHERTHE_b7COMMANDSHOWNINTHEFIRSTCHAPTERORTHE_bcaTTCOMMANDAS
SHOWNHERE
_bcaTTP0W[d_O_VaT_>BFPcRWTabWO
_

>BFPcRWTabW!%# !>BFPcRWTabW $ %'QiX_!
k4gPSPcP3XPV2^[[!''%%^_c^aPR[TRT[[^b4gPSPcP3XPV2^[[TRc^abW
kOb[TT_!$& '"
k>BFPcRWTa5<bW!''!&>BFPcRWTa5<bW %'
k^bfbdQbW $#"^bfbdQbW7XVW5aT`4gPSPcPNRT[[baebcPcbW
kO4gPSPcPNRT[[bae $#&4gPSPcPNRT[[baebcPcbW7XVW5aT`
kkQiX_! $( bcS^dc
kORT[[baebcPc $(X]cTaeP[,$R^d]c,&!
k^bfbdQbW!''#%^bfbdQbW7XVW5aT`4gPSPcPNe\bcPcbW
kO4gPSPcPNe\bcPc!''$4gPSPcPNe\bcPcbW7XVW5aT`
kkQiX_! ! !%bcS^dc
kOe\bcPc ! !$$&!
k^bfbdQbW!''#&^bfbdQbW7XVW5aT`4gPSPcPN\_bcPcbW
kO4gPSPcPN\_bcPc!''$!4gPSPcPN\_bcPcbW7XVW5aT`
kkQiX_! !%!&bcS^dc


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

kO\_bcPc !%!%$&!
k^bfbdQbW!''#'^bfbdQbW7XVW5aT`4gPSPcPN]TcbcPcbW
kO4gPSPcPN]TcbcPc!''$#4gPSPcPN]TcbcPcbW7XVW5aT`
kOb[TT_!$& & $
k^bfbdQbW!''#(^bfbdQbW7XVW5aT`4gPSPcPNX^bcPcbW
kO4gPSPcPNX^bcPc!''$%4gPSPcPNX^bcPcbW7XVW5aT`
kkQiX_! ! $bcS^dc
kOX^bcPc ! #cg$&!
k^bfbdQbW!''$"^bfbdQbW7XVW5aT`4gPSPcPNc^_bW
kO4gPSPcPNc^_bW!''%#4gPSPcPNc^_bW7XVW5aT`
kkQiX_! "#$"bcS^dc
kOc^_ "#$!QRS$]&!
O^bfbdQbW!''&&^bfbdQbW7XVW5aT`^_c^aPR[T^bfPcRWTa^bf4gPSPcPASb8]U^bW
O4gPSPcPASb8]U^!'( ^_c^aPR[T^bfPcRWTa^bf4gPSPcPASb8]U^bW7XVW5aT`
Ob[TT_!$&  
4HE/37ATCHERDAEMONSSTORETHEIRCOLLECTEDDATAINTHE^_c^aPR[T^bfPcRWTa^bfPaRWXeT
DIRECTORY)TDOESNTUSEANYSPECIALFORMATFORSTORINGTHEDATAITJUSTSTORESTHETEXTOUTPUTOFTHE
STANDARD/3TOOLSITRUNS4HISMAKESITEASYTOUSEREGULARTEXTPROCESSINGUTILITIES LIKEVaT_ !7+OR
0ERLPYTHONSCRIPTSTOEXTRACTANDPRESENTTHEINFORMATIONYOUNEED(ERESANEXAMPLE
[b[^_c^aPR[T^bfPcRWTa^bfPaRWXeT
c^cP[!'
Safgab!a^^cRT[[dbTab!'%&!<Ph!$ #)4gPSPcP3XPV2^[[TRc
Safgab!a^^cRT[[dbTab!#'<Ph!$ #)4gPSPcP>BF
Safgab!a^^cRT[[dbTab!#'<Ph!$ #)4gPSPcPA3B
Safgab!a^^cRT[[dbTab#$$%<Ph!$ #)^bfRT[[baebcPc
Safgab!a^^cRT[[dbTab!#'<Ph!$ #) ^bfX^bcPc
Safgab!a^^cRT[[dbTab!#'<Ph!$ #)^bf\T\X]U^
Safgab!a^^cRT[[dbTab!#'<Ph!$ #)^bf\_bcPc
Safgab!a^^cRT[[dbTab!#$&%<Ph!$ #)^bf]TcbcPc
Safgab!a^^cRT[[dbTab#(%<Ph% !)"$^bf_aec]Tc
Safgab!a^^cRT[[dbTab!#'<Ph!$ #)^bf_b
Safgab!a^^cRT[[dbTab!#'<Ph!$ #)^bfb[PQX]U^
Safgab!a^^cRT[[dbTab!#'<Ph!$ #)^bfc^_
Safgab!a^^cRT[[dbTab!#'<Ph!$ #) ^bfe\bcPc
%ACHDIRECTORYCONTAINSARCHIVEFILESWITHCORRESPONDINGCOMMANDOUTPUT
^bfX^bcPc
RS^_c^aPR[T^bfPcRWTa^bfPaRWXeT^
[bcakcPX[

T]ZRT["T]ZXcTRR^\NX^bcPcN $!$$SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$%SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$&SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$'SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$(SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$ SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$ SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$ !SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$ #SPcQi!
T]ZRT["T]ZXcTRR^\NX^bcPcN $!$ "SPcQi!


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

4HEREISASEPARATEBZIPPEDFILESAVEDFOREACHHOUR MAKINGITEASYTOMANUALLYINVESTIGATEPAST
PERFORMANCEDATAORWRITEAQUICK!7+ VaT_OR0ERLSCRIPT WHICHEXTRACTSONLYTHEDATAOFINTEREST4HE
EXAMPLEBELOWEXTRACTSX^bcPc)/STATISTICSFROMABZIPPEDFILEFROM!-ON-AY 
QQiRPcT]ZRT["T]ZXcTRR^\NX^bcPcN $!$(SPcQi!kWTPS $
iiiFTS<<Ph!$() )#"23C! BP\_[TX]cTaeP[)$bTRR^]Sb
;X]dg!% ' (#" #T[$T]ZRT["T]ZXcTRR^\$!$ 

CX\T)() )#"
PeVR_d)dbTa]XRTbhbcT\X^fPXcbcTP[XS[T
&%&' "&(&(

3TeXRT)abfbabTRbfbTRbPeVa`biPeV`dbiPfPXcbeRc\dcX[
bSP !" !%% &(%'"$"#" '#"  !&$ $"%'( '
bSP #$ # " ! & $&
bSP!!!%!%
bSP" ##& # &'&('%!'%('$ %$% ! %$ (#&%''#
bSP#  # '#  '# 
bSP$!$#$$ #"" %!'!&!#' !""  !
bSP%!("'%  " ! !&$"(("

4HE/37ATCHEROUTPUTSAMPLESAREPREFIXEDBYATIMESTAMPLINE WHICHSTARTSWITHhZZZvASYOUSEE
ABOVE4HISSHOWSYOUTHEEXACTTIME UPTOTHESECOND WHENTHE/3COMMANDWASEXECUTEDANDWHAT
THESAMPLEINTERVALWAS.OTETHATTHIShZZZvLINEWILLONLYSHOWYOUWHENTHEMONITORINGCOMMANDWAS
EXECUTED3OMECOMMANDSAREEXECUTEDONLYONCEPERHOUR BUTTHEYKEEPCOLLECTINGANDDUMPINGDATA
SAMPLESTHROUGHOUTTHATHOUR)NSUCHCASETHEREAREMONITORINGCOMMAND SPECIFICTIMESTAMPSPRINTED
FOREACHDATASAMPLE4HEFOLLOWINGEXAMPLESHOWSHOWTHERT[[baebcPcCOMMANDUSES,,,2daaT]c
CX\T,,,TOINDICATETHEEXACTTIMETHEPERFORMANCEDATABELOWITISFROM9OUCANUSETHISPREFIXINYOUR
CUSTOMSCRIPTS(ERESANEXAMPLE
QiRPcT]ZRT["T]ZXcTRR^\NRT[[baebcPcN $!$ "SPcQi!kWTPS"
iiiFTS<Ph!$ "))23C! BP\_[TX]cTaeP[)$bTRR^]Sb
,,,2daaT]cCX\T,,,FFTS<Ph!$ "))! 

,,8]_dc>dc_dcaT[PcTSbcPcb,,
=d\QTa^UWPaSSXbZQ[^RZ8>aTPSaT`dTbcb %&('&###
=d\QTa^UWPaSSXbZQ[^RZ8>faXcTaT`dTbcb $#(%'!(
7PaSSXbZQ[^RZ8>aTPSb:1 '%"##!&#
7PaSSXbZQ[^RZ8>faXcTb:1!$!!# % $!
=d\QTa^UU[PbWSXbZQ[^RZ8>aTPSaT`dTbcb%&!"""!
=d\QTa^UU[PbWSXbZQ[^RZ8>faXcTaT`dTbcb $$!'&(#
5[PbWSXbZQ[^RZ8>aTPSb:1'&'%''
5[PbWSXbZQ[^RZ8>faXcTb:1"#&""&#!#
=d\QTa^USXbZ8>Taa^ab
=d\QTa^UaTPSbUa^\U[PbWRPRWT$&'(((!
=d\QTa^UfaXcTbc^U[PbWRPRWT " (& 
5[PbWRPRWTaTPSb:1'& # %
5[PbWRPRWTfaXcTb:1"#&!"%$%
=d\QTa^UU[PbWRPRWT8>Taa^ab
BXiT^UTeXRcX^]Ua^\U[PbWRPRWT:1
=d\QTa^U^dcbcP]SX]V[PaVTU[PbW8>b
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbSdaX]VY^Q "#


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbQhRWTRZTa
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^ab\Pac8>
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTb%%$%'
2daaT]caTPSQ[^RZ8>c^QTXbbdTS:1
C^cP[aTPSQ[^RZ8>c^QTXbbdTS:1(%%%!"'!
2daaT]cfaXcTQ[^RZ8>c^QTXbbdTS:1
C^cP[faXcTQ[^RZ8>c^QTXbbdTS:1!$$#%(%" &
2daaT]caTPSQ[^RZbX]8>:1
C^cP[aTPSQ[^RZ8>XbbdTS:1(%%%!"'!
... a lot of output removed ....

4HISOUTPUTISJUSTTHEFIRSTOFEACH SECONDSAMPLESDUMPEDBYRT[[baebcPcEVERYHOUR4HEFIRST
COLUMNSHOWSTHECELLMETRICNAME ANDTHESECONDCOLUMNALLZEROS SHOWSTHEMETRICVALUEINTHE
current metric intervalSNAPSHOT "ECAUSETHECOMMANDWASJUSTEXECUTEDANDTOOKITSFIRSTSAMPLE IT
SHOWSZEROFOREACHMETRIC ASTHEDELTACOMPUTATIONSTARTSONLYAFTERTHESECONDSNAPSHOTISTAKEN)F
YOUNAVIGATEDOWNWARDINTHE/37ATCHERDUMPFILE YOUWILLSEENONZEROVALUESFORMANYMETRICS
STARTINGFROMTHESECONDSNAPSHOT4HELASTCOLUMNSHOWSTHECUMULATIVEVALUESINCETHERT[[bae
PROCESSSTARTED FOREACHMETRIC9OUPROBABLYSHOULDJUSTIGNORETHISCUMULATIVEVALUE ASITCONTAINS
INFORMATIONFROMSINCETHERT[[baeSTARTWHICHMAYBEMONTHSAGO ,OOKINGATASINGLECUMULATIVE
VALUE ACCUMULATINGINFORMATIONFROMSUCHALONGTIME WOULDNOTTELLYOUMUCHABOUTWHATS
HAPPENINGRIGHTNOWORWHATWASHAPPENINGLAST&RIDAYAT!--ETRICDELTASOVERSHORTERTIMEPERIODS
ARETHEWAYTOGO ANDTHISISWHATYOUSEEINTHESECONDCOLUMNTHECURRENTINTERVALVALUEASOF
SAMPLINGTHEMETRICS.OWLETSSAYWEAREINTERESTEDONLYINASINGLERT[[baeMETRIC .UMBEROF,ATENCY
4HRESHOLDFOR2EDO,OG7RITES,ASTHEDATABASELAYEREXPERIENCEDSOMElog file parallel writeDELAYSAS
SEENINE4E4=CN78BC>6A0< FOREXAMPLE EARLIER,ETSSAYTHISHAPPENEDON-AY EARLYINTHE
MORNING!STHE/37ATCHERLOGFILESARENAMEDACCORDINGTHEDATEANDTIME99--$$ANDHOURIN
HOURFORMAT YOUCANSEARCHFORSPECIFICFILESONLYBYUSINGREGULAR5NIXFILESYSTEMWILDCARDS)NTHE
FOLLOWINGEXAMPLEWERESEARCHINGFORALLHOURSOF-AY ANDUSINGTVaT_TOLISTBOTHTHEhCURRENT
TIMEvANDTHEMETRICLINESFROMTHEMATCHINGFILES

QiRPcT]ZRT["T]ZXcTRR^\NRT[[baebcPcN $!$SPcQi!kK
TVaT_,,,2daaT]cCX\T,,,k=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTbkK
WTPS

,,,2daaT]cCX\T,,,FTS<Ph!$))"! 
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTb%$%#
,,,2daaT]cCX\T,,,FTS<Ph!$))'! 
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTb%$%#
,,,2daaT]cCX\T,,,FTS<Ph!$)) "! 
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTb%$%#
,,,2daaT]cCX\T,,,FTS<Ph!$)) '! 
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTb%$%#
,,,2daaT]cCX\T,,,FTS<Ph!$))!"! 
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTb!%$%%

!SITSHARDTOREADTHEABOVEOUTPUT HERESALITTLESCRIPTWHICHFORMATSTHEOUTPUTBETTERANDISMORE
CONVENIENTTOUSE


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

QX]QPbW

=P\T)^bfTgcaPRcbW
?da_^bT)4gcaPRcPb_TRXUXR\TcaXRUa^\>BFPcRWTaRT[[baebcPcPaRWXeTb

DbPVT)
^bfTcaPRcbWRT[[bae\TcaXRc^VaT_U^a^bfNPaRWXeTNUX[TbN^UNX]cTaTbcSPcQi!

4gP\_[T)
^bfTgcaPRcbW=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTbK
RT[[ TgP\_[TR^\NRT[[baebcPcN $!$SPcQi!

<4CA82, 
bWXUc

QiRPc`k
TVaT_2daaT]cCX\Tk<4CA82k
PfZ
1468=
j_aX]cU! b!b!bK]C8<42DAA4=CNE0;2D<D;0C8E4NE0;l
2daaT]c
j_aX]cUbbbb"#$%&l
=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTb
j_aX]cU!S!SK]  l


T]S^UbRaX_c

7HILETHISSCRIPTISMEANTTOMAKEEXTRACTINGTHEDESIREDMETRICHISTORYOUTOFTHE/37ATCHERLOGSEASIER
THEMAINPURPOSEOFLISTINGTHESCRIPTINTHISBOOKISTOSHOWHOWEASYEXTRACTINGHISTORICAL/3 LEVELAND
OTHER METRICSCANBE)NVESTINGADAYINTOLEARNINGBASIC!7+OR0ERLTEXTPROCESSINGWILLLIKELYPAYOFF
ANDSAVETIMEWHENYOUNEEDTODOUNCONVENTIONALMONITORINGORTROUBLESHOOTINGTASKS,ETSSEEWHAT
ITDOES


^bfTgcaPRcbW=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTbK
T]ZRT["T]ZXcTRR^\NRT[[baebcPcN $!$SPcQi!kWTPS

C8<42DAA4=CNE0;2D<D;0C8E4NE0;
FTS<Ph!$))"%$%#
FTS<Ph!$))'%$%#
FTS<Ph!$)) "%$%#
FTS<Ph!$)) '%$%#
FTS<Ph!$))!"!%$%%
FTS<Ph!$))!'%$%%
FTS<Ph!$))""%$%%
FTS<Ph!$))"'%$%%
FTS<Ph!$))#"%$%%



#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

4HESCRIPTGOESTHROUGHALLTHEFILENAMES WHICHMATCHTHESECONDEXPRESSIONONTHECOMMANDLINEAND
VaT_SFORWHATEVERMETRICISSPECIFIEDASTHEFIRSTPARAMETERINDOUBLEQUOTES )NTHISCASEWEARE
LOOKINGFOR.UMBEROF,ATENCY4HRESHOLD7ARNINGSFOR2EDO,OG7RITES WHICHISINCREMENTEDWHEN)/
OPERATIONSTAGGEDASREDOLOGFILEWRITESTAKETOOLONGTOCOMPLETEINTHECELL!PPARENTLYTHEREWERETWO
)/OPERATIONSAROUNDTHETIMERANGEBETWEENANDWHICHHADRESPONSETIMESHIGH
ENOUGHTOBEREPORTED
5SINGTHEPREVIOUSEXAMPLE YOUCANALREADYGENERATEFORMATTEDDATAGOODENOUGHFORVISUAL
INSPECTIONORLOADINGINTO%XCELORSOMECHARTINGTOOL)FYOUARELOOKINGONLYFORSOMERANDOMPROBLEM
TIMES THENYOUCANDOPOST PROCESSING SUCHASSHOWINGJUSTTHELINESWHERETHEMETRICVALUEISNOT
ZERO
^bfTgcaPRcbW=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTbK
T]ZRT["T]ZXcTRR^\NRT[[baebcPcN $SPcQi!kVVaT_e

C8<42DAA4=CNE0;2D<D;0C8E4NE0;
BPc<Ph&!))!!!
BPc<Ph&%))"  !
BPc<Ph&'))!$ &
BPc<Ph&! )!') $  '
BPc<Ph&!!)) (  (
BPc<Ph&!!))!(#!"
BPc<Ph&!!))"##!&
Bd]<Ph'!))" "&
Bd]<Ph'!))('#$
Bd]<Ph'#))"##(
Bd]<Ph'%))  '!
Bd]<Ph''))$%''
<^]<Ph(!))  % #
<^]<Ph(#))!# '
!LTERNATIVELY YOUCANSORTTHEOUTPUTBYTHEMETRICVALUEINTHE2DAA4=CNE0;COLUMNTOSEETHEWORST
PROBLEMTIMESFIRST4HENEXTEXAMPLEUSESb^ac]aZ$ ASWERESORTINGTHEFIFTHCOLUMNCOLUMNSn
ARETHEDATECOLUMNCOMPONENTS ASFARASTHEb^acUTILITYSEES 
^bfTgcaPRcbW=d\QTa^U[PcT]RhcWaTbW^[SfPa]X]VbU^aaTS^[^VfaXcTbK
T]ZRT["T]ZXcTRR^\NRT[[baebcPcN $SPcQi!kK
VaT_ekbb^ac]aZ$kWTPS

BPc<Ph #%))""%" 
5aX<Ph "))(!$#"!
CdT<Ph !))(!! &#
BPc<Ph #)) !!$#(
FTS<Ph !))' &! $
<^]<Ph(!))  % #
CdT<Ph !!))( ! (
Bd]<Ph'%))  '!
<^]<Ph(!!))&  !%
Bd]<Ph'!))" "&
!PPARENTLY THEMOSTLOGFILEWRITELATENCYPROBLEMSWEREDETECTEDAT!--AY7HENYOULOOK
ATTHEOTHEROUTPUTLINES YOUPROBABLYSEEANINTERESTINGPATTERN!LLTHESEPROBLEMSAREREPORTEDFROMA
FEWSECONDSAFTERAFULLHOUR7ELL THISISJUSTBECAUSEINTHISPARTICULAR%XADATATESTINGCLUSTER WEHAVE
OVERTENSEPARATEDATABASESINSTALLED BUTTHEYONLYRUNSOMEREPORTSINPARALLELANDUSUALLYTHEREISNO


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

/,40ACTIVITYDOINGCOMMITS"UTISITTHENDOINGTHESECOMMITSJUSTAFTERTHEHOURSTARTS7ELL THESEARE
DEFAULT/RACLE$ATABASEINSTALLATIONSWITH!72SNAPSHOTSTAKINGPLACEATTHEFULLHOUR!NDTHEREARE
OVERDATABASESINTHECLUSTER WITHAN!72SNAPSHOTTAKENANDWRITTENINEACHCLUSTERDATABASE
INSTANCE%ACH!72SNAPSHOTWRITEINVOLVESMULTIPLECOMMITS ANDAPPARENTLYTHERESULTINGLOGFILE
WRITESHAVEOCCASIONALLYTAKENLONGERTHANEXPECTED4HENEXTSTEPFORTROUBLESHOOTINGSUCHLOW LEVEL
)/ISSUESINACELLWOULDBETOLOOKATTHE/3 LEVELMETRICS LIKEX^bcPc4HECELLSDOPERFORMREGULAR
BLOCK)/AGAINSTTHEIRDISKS AFTERALL SOALLTHE/3 LEVEL)/MONITORINGTOOLSSTILLDOAPPLY
)NTHEFOLLOWINGEXTRACTFROMTHEX^bcPcARCHIVE YOUSEEAFEWINTERESTINGTHINGS4HEPfPXcTIME
SHOWSTHATONAVERAGE )/COMPLETIONTIMEQUEUINGPLUSSERVICETIME ISOVERMSFORALMOSTALLTHE
DISKS&ORACOUPLEOFDISKSITISASHIGHASMSANDMSONAVERAGE4HEDISKSESTIMATEDSERVICE
TIMEbeRc\ SHOWSGOOD)/SERVICETIMESBELOWMS SOTHEHARDDISKSANDLOWERHALFOFTHE)/
SUBSYSTEMSEEMSTOWORK/+4HEHIGHRESPONSETIMESMUSTHAVECOMEFROM)/QUEUINGWAITS WHICH
HAPPENSWHENMORE)/REQUESTSAREISSUEDTO/3THANTHESTORAGEHARDWAREANDDEVICEDRIVER
CONFIGURATION CANACCEPT
CX\T)%))$
3TeXRT)abfbabTRbfbTRbPeVa`biPeV`dbiPPfPXcbeRc\dcX[
bSP'#% $! %!!"$! "'# %"% % "$&&"'#((#("'#
bSQ%'% %' !#& %' "&$! #&%#(!( !$"(''"&& $
bSR%$ "( '#! # "  # & '!'(#$' !
bSS% ! !"$'#!&% (%&((&# %&$!'$%$!"'
bST%#' !!&$!!#$% '('  #  &!&"'"!$"(!
bSU % !$ !!''!'$&&&!
bSV$' '!&!!"( &($  &"&%'$"#(#%
bSW$#%!# ( !#'# (#%%&&&($ $#("#('$ &'
bSX!#!#' ""!'!#!' "$% $'! !$$!#%&%!
bSY%#!# "$%%#"#!! ! & & #"'%'$% 
bSZ% !' !#$ $!!$%!'&! !"!!!$(("!$&&'
bS[&'#!% " (%'! ! % ((' !#  $" '&$$%  #
4HISCASEISANEXAMPLEOFHOWLOW LATENCY/,40)/SLIKELOGFILEWRITESFORCOMMITS DONTGOWELL
TOGETHERWITHLARGE MASSIVELYPARALLELASYNCHRONOUS)/WORKLOADS WHICHDRIVETHEDISK)/QUEUE
LENGTHSUP POSSIBLYMAKINGTHELOW LATENCY)/SSUFFER4HISISWHYYOUSHOULDKEEPTHE)/2ESOURCE
-ANAGERENABLEDIN%XADATACELLSWHENRUNNINGMIXEDWORKLOADS AS)/2-ISABLETOTHROTTLETHE3MART
3CAN)/ANDPRIORITIZEIMPORTANTBACKGROUNDPROCESS)/ SUCHASLOGFILEWRITES AUTOMATICALLY
9OUCANREADMOREABOUTTHE/37ATCHERTOOLIN-Y/RACLE3UPPORTARTICLEh/37ATCHER5SER
'UIDEv$OC)$ )NFACT YOUCANDOWNLOADTHELATEST/37ATCHERFROMTHEREANDUSEITFOR
MONITORINGYOUROTHERSERVERSTOO4HE-Y/RACLE3UPPORTVERSIONOF/37ATCHERDOESNOTINCLUDETHE
%XADATACELL SPECIFICMONITORINGSCRIPTS BUTYOUDONTNEEDTHOSEFORYOURREGULARSERVERS ANYWAY&OR
%XADATASTORAGECELLS YOULLHAVETOKEEPUSINGTHEORIGINALVERSIONSHIPPEDWITHTHECELLSOFTWARE AS
/RACLEDOESNTAUTHORIZEINSTALLATIONOFANYADDITIONALSTORAGEINTOSTORAGECELLSIFYOUWANTTOKEEPTHE
SUPPORTEDCONFIGURATION
)TPAYSOFFTOOPENUPANDSKIMTHROUGH/37ATCHERSCRIPTSYOUMIGHTLEARNSOMENEWUSEFUL/3
LEVELMONITORINGCOMMANDSFROMTHEREANDWILLHAVEABETTEROVERVIEWOFWHICH/3METRICSARE
AVAILABLE9OUSHOULDDRILLDOWNTOTHESELOW LEVELMETRICSWHENTHEMORECONVENIENTLYACCESSIBLE
/RACLE$ATABASEAND#ELLCLI LEVELMETRICSARENOTENOUGH


#(!04%2 -/.)4/2).'%8!$!4!0%2&/2-!.#%

Summary
4HEREARETHOUSANDSOFMETRICSTHAT/RACLE$ATABASEANDTHECELLSPROVIDEUS7EVEONLYTOUCHEDONA
SMALLSETOFTHEMHERE4HISLEADSTOTHEOBVIOUSQUESTIONSAREALLTHESEMETRICSIMPORTANT7HATSHOULD
BETHEIRhGOODvVALUES7HICHONESSHOULDWEACTON!NDSOON4HEGENERALANSWERTOALLTHOSE
QUESTIONSISTHATNO YOUDONOTNEEDTOLEARN MEMORIZE ANDhTUNEvALLOFTHESEMETRICSITIS
IMPOSSIBLE 9OUSHOULDALWAYSMEASUREWHATMATTERSnANDITSUSUALLYTHERESPONSETIME)DEALLY YOU
SHOULDSTARTBYMEASURINGTHEend userRESPONSETIMEANDDRILLDOWNWHERENEEDEDFROMTHERE
SOMETIMESTOTHEDATABASE SOMETIMESTOTHEAPPLICATIONSERVERORNETWORKMETRICS)TSNOTALWAYSTHE
DATABASETHATISCAUSINGTHETROUBLE YOUKNOW(OWEVER THANKSTOTHECOMPLEXITYOFMODERNMULTI TIER
APPLICATIONS THISEND TO ENDDIAGNOSISMAYNOTBEAVAILABLEANDNOTFEASIBLETOIMPLEMENT 
)NSUCHCASEYOUWOULDTAKEASTEPDOWNWARDANDMONITORTHERESPONSETIMEOFYOURDATABASE
QUERIESANDTRANSACTIONS9OUJUSTSTARTTHETOP DOWNAPPROACHFROMALITTLELOWERINTHEAPPLICATION
STACK KEEPINGINMINDTHATTHEPROBLEMMAYSTILLACTUALLYBEHAPPENINGSOMEWHEREINTHEAPPLICATION
LAYERORHIGHER7HENMONITORINGTHERESPONSETIMESOFYOURUSERREPORTSAND$7QUERIES YOUSHOULD
PROBABLYSTARTFROMTHE31,-ONITORINGPAGEOR!3(DATA ANDIDENTIFYTHEPROBLEMUSERSQUERYFROM
THERESOYOUCANDRILLDOWNINTOIT5SINGTHETOP DOWNAPPROACHANDFOLLOWINGTHEBIGGESTTIME
CONSUMERSINTHE31,PLANFROMTHEREISMUCHEASIERTHANTHEOPPOSITEBOTTOM UPAPPROACH WHEREYOU
MIGHTLOOKATSOMEDATABASE WIDETOP31,REPORTANDHOPETOFIGUREOUTWHATSWRONGWITHYOURSPECIFIC
USERSWORKLOAD
/FCOURSE THEREARECASESWHEREYOULLBEMONITORINGSYSTEM WIDEAGGREGATEDanonymous
PERFORMANCEDATANOTTIEDTOANYSPECIFICUSERORSESSION ASINCAPACITYPLANNINGANDUTILIZATION
MONITORING(OWEVER QUESTIONSLIKEh)SMYDATABASEPERFORMINGWELLvSHOULDNEVERBEANSWEREDBY
LOOKINGATSOMESYSTEMUTILIZATIONREPORT.ONEOFTHESETOOLSCANTELLYOUWHETHERYOURDATABASESYSTEM
PERFORMSWELLONLYYOURUSERSCAN!NDIFTHEUSERSAREUNHAPPY YOUCANSTARTFROMANUNHAPPYUSER
ANDDRILLDOWNINTOTHERESPONSETIMEFROMTHERE/RACLEPROVIDESALLTHEMETRICSYOUNEED


C H A P T E R 13



Migrating to Exadata

3OTHEDAYISFINALLYHERE9OUR%XADATA$ATABASE-ACHINEISINSTALLED CONFIGURED TUNED TWEAKEDAND


READYTOGO"YNOWYOUVEPROBABLYINVESTEDMANY MANYHOURSLEARNINGABOUT%XADATA PROVINGITS
VALUETOTHECOMPANY ANDPLANNINGHOWYOUWILLMAKETHEMOSTOFTHISPOWERFULDATABASEPLATFORM.O
DOUBTITHASBEENALONGROADTOTRAVELBUTYOUARENTTHEREQUITEYET.OWTHEREALWORKBEGINSˆ
MIGRATION
4HISWASAMUCHMOREDIFFICULTCHAPTERTOWRITETHANWEEXPECTED7ECANTCOUNTALLTHEMIGRATIONS
WEVEBEENTHROUGHOVERTHEYEARS"UTWHENWECONSIDEREDALLTHEVARIOUSVERSIONSOF/RACLE THE
MIGRATIONTOOLSAVAILABLE ANDHOWTHEYHAVECHANGEDFROMONEVERSIONTOTHENEXT ITBECAMECLEARTHAT
WENEEDEDTONARROWTHESCOPESOMEWHAT3OTOKEEPTHISINTERESTINGANDSAVEAFEWTREESWELLBE
FOCUSINGONVERSION%NTERPRISE%DITIONFORAMAJORITYOFTHISCHAPTER!LONGTHEWAYWELLPOINTOUT
WAYSTOMAKETHEMOSTOFTHEFEATURESAVAILABLEINPREVIOUSVERSIONSOFTHE/RACLEDATABASE
4HEREAREMANYMETHODS TOOLS ANDTECHNIQUESFORMIGRATINGYOURDATABASEFROMLEGACYHARDWARE
TO%XADATA BUTGENERALLYSPEAKINGTHEYFALLINTOTWOBROADCATEGORIESPHYSICALMIGRATIONANDLOGICAL
MIGRATION7HILETHEREARESEVERALFACTORSTHATDETERMINEWHICHMETHODISBEST THEDECISIONMAKING
PROCESSISUSUALLYDOMINATEDBYONEFACTOR THEAVAILABLEDOWNTIMETOCOMPLETETHEMOVE4HEGOOD
NEWSISTHATTHEREARESEVERALSTRATEGIESTOHELPYOUGETTHERE%ACHMETHODCOMESWITHITSOWNPROSAND
CONS)NTHISCHAPTERWEREGOINGTODIGINTOEACHOFTHESEMETHODS7ELLTALKABOUTREASONSYOUMIGHT
USEONEOVERTHEOTHER THERELATIVEADVANTAGESANDDISADVANTAGES ANDWHATCOMMONPITFALLSYOUSHOULD
WATCHOUTFOR

 .OTE-IGRATINGYOURAPPLICATIONSTO/RACLE%XADATAFROMNON /RACLEPLATFORMSISOUTOFTHESCOPEOFTHISBOOK
SOITWONTBECOVEREDHERE


#(!04%2 -)'2!4).'4/%8!$!4!

 +EVIN3AYS$URING4ECHNICAL2EVIEW)APPROACHEDTHISCHAPTERWITHSKEPTICISM)NMYTHINKING THEIDEAOFAN
ENTIRECHAPTERDEDICATEDTOMIGRATINGADATABASETOTHE%XADATA$ATABASE-ACHINESEEMEDLIKEAWASTEOFSPACE
!LLOWMETOEXPLAIN

)ROUTINELYREMINDPEOPLETHATUNLESS%XADATA(YBRID#OLUMNAR#OMPRESSION%(## ISBEINGUSED THEREISNO


DIFFERENCEBETWEENDATASEGMENTSSTOREDIN%XADATA3TORAGE3ERVERCELLSANDTHOSEINCONVENTIONALSTORAGE4HE
/RACLE$ATABASESOFTWAREDEPLOYEDINTHE%XADATA$ATABASE-ACHINEIS/RACLE$ATABASEGˆWITHAVERYSMALL
AMOUNTOFCODETHATKNOWSHOWTOCOMPRESSDATAINTO%(##FORMANDOTHERWISEINTERFACEWITH%XADATAVIAI$")
CONDUCTEDMYFIRSTREVIEWPASSOFTHISCHAPTERWITHTHEMINDSETOFANIMAGINARYCUSTOMERWHO FORWHATEVER
REASON FINDSNONEEDFOR%(##7ITHTHATMINDSET)EXPECTEDTHISCHAPTERTOBENOTHINGMORETHANANOVERVIEWOF
DATABASEMIGRATIONCONCEPTS ANOCCASIONALREFERENCETO/RACLEPRODUCTDOCUMENTATION ANDPERHAPS APARAGRAPH
ORTWOOFSPECIALHANDLINGCONSIDERATIONSFOR%(##(OWEVER AFTERMYFIRSTREADINGOFTHECHAPTER)FELTCOMPELLED
TOADDTHISNOTETOTHEREADER%VENIFYOUKNOWEVERYTHINGTHEREISTOKNOWABOUTDATABASEMIGRATION INTHE
CONTEXTOF/RACLEDATABASE )ENCOURAGEYOUTOREADTHISCHAPTER(AVINGSAIDTHAT )STILLWISHTOREINFORCETHE
PRINCIPLETHATTHEREISNODIFFERENCEBETWEENADATABASESTOREDIN%XADATA3TORAGE3ERVERCELLSANDONESTOREDIN
CONVENTIONALSTORAGEˆUNLESS(##ISINVOLVED4OENDUPWITHAN/RACLEDATABASESTOREDIN%XADATA3TORAGE
3ERVERCELLS YOUHAVETOFLOWTHEDATATHROUGHTHEDATABASEGRIDUSINGTHESAMETOOLSUSEDFORANYOTHERMIGRATION
TO/RACLE(OWEVER )BELIEVETHATTHEPRINCIPLESCONVEYEDINTHISCHAPTERWILLBEQUITEHELPFULINANYMIGRATION
SCENARIOTO/RACLE)CONSIDERTHATABONUS

Migration Strategies
/NCEYOUHAVEAGOODUNDERSTANDINGWHAT%XADATAIS ANDHOWITWORKS YOUAREREADYTOSTARTTHINKING
ABOUTHOWYOUAREGOINGTOGETYOURDATABASEMOVED-IGRATIONSTRATEGIESFALLINTOTWOGENERAL
CATEGORIES LOGICALMIGRATIONANDPHYSICALMIGRATION,OGICALMIGRATIONINVOLVESEXTRACTINGTHEDATAFROM
ONEDATABASEANDLOADINGITINTOANOTHER0HYSICALMIGRATIONREFERSTOLIFTINGTHEDATABASE BLOCKBY
BLOCK FROMONEDATABASESERVERANDMOVINGITTOANOTHER4HEDATAACCESSCHARACTERISTICSOFYOUR
DATABASEAREAKEYCONSIDERATIONWHENDECIDINGWHICHMIGRATIONMETHODISBEST4HISISPRIMARILY
BECAUSEOFTHEWAYTHEDATAISACCESSEDON%XADATA/,40DATABASESTENDTOUSESINGLEBLOCKREADSAND
UPDATEDATAACROSSALLTABLES WHEREAS$ATA7AREHOUSE$7 DATABASESARETYPICALLYOPTIMIZEDFORFULL
TABLESCANSANDONLYUPDATECURRENTDATA%XADATAUSES&LASH#ACHEONTHESTORAGECELLSTOOPTIMIZE
SINGLEBLOCKREADSANDIMPROVETHEOVERALLPERFORMANCEFOR/,40DATABASES&OR$7DATABASES%XADATA
USES3MART3CANTECHNOLOGYTOOPTIMIZEFULLTABLESCANS4HEDETAILSOFTHESETWOOPTIMIZATIONMETHODS
ARECOVEREDIN#HAPTERSAND,OGICALMIGRATIONALLOWSYOUTHEOPPORTUNITYTOMAKECHANGESTOYOUR
DATABASETOOPTIMIZEITFORTHE%XADATAPLATFORM3UCHCHANGESMIGHTINCLUDERESIZINGEXTENTS
IMPLEMENTINGORREDESIGNINGYOURCURRENTPARTITIONINGSCHEMES ANDCOMPRESSINGTABLESUSING(##
4HESEAREALLVERYIMPORTANTSTORAGECONSIDERATIONSFORLARGETABLESANDESPECIALLYSOFOR$7DATABASES
"ECAUSE/,40APPLICATIONSTENDTOUPDATEDATATHROUGHOUTTHEDATABASE (##COMPRESSIONISNOTA


#(!04%2 -)'2!4).'4/%8!$!4!

GOODFITANDWOULDACTUALLYDEGRADEPERFORMANCE!NDWHILELARGEEXTENTS-"AND-" ARE
BENEFICIALFOR$7DATABASES THEYARELESSADVANTAGEOUSFOR/,40DATABASES WHICHUSEMOSTLYINDEX
BASEDACCESSANDhRANDOMvSINGLE BLOCKREADS0HYSICALMIGRATION BYITSVERYNATURE ALLOWSNOCHANGES
TOBEMADETOTHESTORAGEPARAMETERSFORTABLESANDINDEXESINTHEDATABASE WHILELOGICALMIGRATION
ALLOWSMUCHMOREFLEXIBILITYINREDEFININGSTORAGE COMPRESSION PARTITIONINGANDMORE

Logical Migration
2EGARDLESSOFTHETECHNOLOGYUSED logical migrationCONSISTSOFEXTRACTINGOBJECTSFROMTHESOURCE
DATABASEANDRELOADINGTHEMINTOATARGETDATABASE%VENTHOUGHLOGICALMIGRATIONSTRATEGIESTENDTOBE
MORECOMPLICATEDTHANPHYSICALSTRATEGIES THEYAREUSUALLYPREFERABLEBECAUSEOFTHEFOLLOWING
ADVANTAGES
Staged Migration :4ABLESANDPARTITIONSTHATARENOLONGERTAKINGUPDATESCAN
BEMOVEDOUTSIDEOFTHEMIGRATIONWINDOW REDUCINGTHEVOLUMETOBEMOVED
DURINGTHEFINALCUTOVER
Selective Migration:/FTENTIMESTHESOURCEDATABASEHASOBSOLETEUSER
ACCOUNTSANDDATABASEOBJECTSTHATARENOLONGERNEEDED7ITHTHELOGICAL
METHODTHESEOBJECTSMAYBESIMPLYOMITTEDFROMTHEMIGRATION4HEOLD
DATABASEMAYBEKEPTAROUNDFORAWHILEINCASEYOULATERDECIDEYOUNEED
SOMETHINGTHATDIDNTGETMIGRATED
Platform Differences:$ATAISCONVERTEDTOTARGETDATABASEBLOCKSIZE
AUTOMATICALLY"IG ENDIANTOLITTLE ENDIANCONVERSIONISHANDLEDAUTOMATICALLY
%XADATAHYBRIDCOLUMNARCOMPRESSION(## CANBECONFIGUREDBEFOREDATAIS
MOVED4HATISTHETABLESMAYBEDEFINEDWITH(##INTHE%XADATADATABASESO
THATDATAISCOMPRESSEDASITISLOADEDINTOTHENEWDATABASE
Extent Sizing:4ARGETTABLES PARTITIONS ANDINDEXESMAYBEPRE CREATEDWITH
OPTIMALEXTENTSIZESMULTIPLESOF-" BEFORETHEDATAISMOVED
Allows Merging of Databases:4HISISPARTICULARLYIMPORTANTWHEN%XADATAIS
USEDASACONSOLIDATIONPLATFORM)FYOUR%XADATAISMODEL6OR8  MEMORY
ONTHEDATABASESERVERSMAYBEASOMEWHATLIMITINGFACTOR6DATABASESERVERS
ARECONFIGUREDWITH'OF2!-EACH WHILE8 COMESWITH'2!-PER
SERVER4HISISALOTOFMEMORYWHENDEALINGWITHORFEWERMODERATETOLARGE
SIZEDDATABASES"UTITISBECOMINGFAIRLYCOMMONTOSEEORMOREDATABASES
ONASERVER&OREXAMPLE ONEOFUSWORKEDONAPROJECTWHERE%XADATAWASUSED
TOHOST0EOPLE3OFT(2AND&INANCIALSDATABASES4HEIMPLEMENTERREQUESTED
DATABASESFORTHISEFFORT!DDTOTHISTHEDATABASESINTHEIRPLANFOROTHER
APPLICATIONSAND3'!MEMORYBECAMEAREALCONCERN4HESOLUTIONOFCOURSEIS
TOMERGETHESESEPARATEDATABASESTOGETHERALLOWINGTHEMTOSHAREMEMORY
MOREEFFICIENTLY4HISMAYORMAYNOTBEADIFFICULTTASKDEPENDINGONHOW
CONTAINEDTHEDATABASESAREATTHESCHEMALEVEL
)FUSINGTHEhCREATETABLEASSELECTvMETHODORhINSERTINTOASSELECTvMETHOD
#4!3OR)!3 OVERADATABASELINK THENTHEDATAMAYALSOBESORTEDASITIS
LOADEDINTOTHETARGETDATABASETOIMPROVEINDEXEFFICIENCY OPTIMIZEFOR
%XADATA3TORAGE)NDEXESANDACHIEVEBETTERCOMPRESSIONRATIOS


#(!04%2 -)'2!4).'4/%8!$!4!

4HEREAREBASICALLYTWOAPPROACHESFORLOGICALMIGRATION/NEINVOLVESEXTRACTINGDATAFROMTHE
SOURCEDATABASEANDLOADINGITINTOTHETARGETDATABASE7ELLCALLTHISTHEh%XTRACTAND,OADvMETHOD
4OOLSCOMMONLYUSEDINTHISAPPROACHARE$ATA0UMP %XPORT)MPORT AND#4!3OR)!3 THROUGHA
DATABASELINK4HEOTHERMETHODISTOREPLICATETHESOURCEDATABASEDURINGNORMALBUSINESSOPERATIONS
7HENTHETIMECOMESTOSWITCHTOTHENEWDATABASE REPLICATIONISCANCELLEDANDCLIENTAPPLICATIONSARE
REDIRECTEDTOTHENEWDATABASE7ELLREFERTOTHISASTHEh2EPLICATION "ASEDvMETHOD4OOLSCOMMONLY
USEDINTHE2EPLICATION "ASEDMETHODARE/RACLE3TREAMS /RACLE$ATA'UARD,OGICAL3TANDBY AND
/RACLE'OLDEN'ATE)TISALSOPOSSIBLETOUSEACOMBINATIONOFPHYSICALANDLOGICALMIGRATION SUCHAS
COPYINGMOSTLY READONLYTABLESPACESOVERWELLAHEADOFTHEFINALCUT OVERANDAPPLYINGCHANGESTO
THEMVIASOMEREPLICATIONMETHODLIKE3TREAMS

%XTRACTAND,OAD
'ENERALLYSPEAKING THE%XTRACTAND,OADMETHODREQUIRESTHEMOSTDOWNTIMEOFALLTHEMIGRATION
STRATEGIES4HISISBECAUSEONCETHEEXTRACTBEGINS ANDFORTHEDURATIONOFTHEMIGRATION ALL$-,ACTIVITY
MUSTBEBROUGHTTOASTOP$ATAWAREHOUSEENVIRONMENTSARETHEEXCEPTIONTOTHERULE BECAUSEDATAIS
TYPICALLYORGANIZEDINANhAGE INAGE OUTvFASHION3INCEDATAISTYPICALLYPARTITIONEDBYDATERANGE
STATICDATAISSEPARATEDFROMDATATHATISSTILLUNDERGOINGCHANGE4HIShREADONLYvDATAMAYBEMIGRATED
AHEADOFTIME OUTSIDETHEFINALMIGRATIONWINDOWPERHAPSEVENDURINGBUSINESSHOURS4HEBIGGEST
ADVANTAGEOFTHE%XTRACTAND,OADSTRATEGYISITSSIMPLICITY-OST$"!SHAVEUSED$ATA0UMPOR#4!3FOR
ONEREASONORANOTHER SOTHETOOLSETISFAMILIAR!NOTHERBIGADVANTAGEISTHECONTROLITGIVESYOU/NEOF
THEGREATNEWFEATURES%XADATABRINGSTOTHETABLEIS(YBRID#OLUMNAR#OMPRESSION(## 3INCEYOU
HAVECOMPLETECONTROLOVERHOWTHEDATAISLOADEDINTOTHETARGETDATABASE ITISARELATIVELYSIMPLETASK
TOEMPLOY(##TOCOMPRESSTABLESASTHEYARELOADEDIN%XTRACTAND,OADALSOALLOWSYOUTOIMPLEMENT
PARTITIONINGORCHANGEPARTITIONINGSTRATEGIES,OADINGDATAUSING#4!3ALLOWSYOUTOSORTDATAASITIS
LOADED WHICHIMPROVESTHEEFFICIENCYOF%XADATASSTORAGEINDEXES/NECOULDARGUETHATALLTHESETHINGS
COULDBEDONEPOSTMIGRATION ANDTHATISTRUE"UTWHYMOVETHEDATATWICEWHENITCANBEINCORPORATED
INTOTHEMIGRATIONPROCESSITSELF)NSOMESITUATIONSITMAYNOTEVENBEPOSSIBLETOFITTHEDATAONTOTHE
PLATFORMWITHOUTAPPLYINGCOMPRESSION)NTHENEXTFEWSECTIONSWEWILLCOVERSEVERALAPPROACHESFOR
PERFORMING%XTRACTAND,OADMIGRATIONS

 +EVIN3AYS4HEPOINTABOUTORDEREDLOADINGOFDATAISAVERYIMPORTANTTOPIC)TISTRUETHATTHISMAYNOTALWAYS
BEANOPTION BUTTHEBENEFITCANGOEVENFURTHERTHANTHEIMPROVEDSTORAGEINDEXEFFICIENCYALREADYMENTIONED
/RDEREDLOADINGCANINCREASETHECOMPRESSIONRATIOOF%XADATA(YBRID#OLUMNAR#OMPRESSIONASWELL)NSPITEOF
THESOPHISTICATEDLOAD TIMECOMPRESSIONTECHNIQUESEMPLOYEDBYTHE(##FEATURE THEFUNDAMENTALSCANNEVERBE
FORGOTTEN)NTHECASEOFCOMPRESSION LIKE VALUESALWAYSCOMPRESSMOREDEEPLY)TISWORTHCONSIDERINGWHETHER
THISAPPROACHFITSINTOTHEWORKFLOWANDOPPORTUNITYWINDOWFORDATALOADING

Data Pump
$ATA0UMPISANEXCELLENTTOOLFORMOVINGLARGEQUANTITIESOFDATABETWEENDATABASES$ATA0UMP
CONSISTSOFTWOPROGRAMS Tg_S_ANDX\_S_4HETg_S_COMMANDISUSEDTOEXTRACTDATABASEOBJECTSOUT
OFTHESOURCEDATABASE)TCANBEUSEDTODUMPTHECONTENTSOFANENTIREDATABASEOR MORESELECTIVELY BY
SCHEMAORBYTABLE,IKEITSPREDECESSOR%XPORTTg_ $ATA0UMPEXTRACTSDATAANDSAVESITINTOA


#(!04%2 -)'2!4).'4/%8!$!4!

PORTABLEDATAFILE4HISFILECANTHENBECOPIEDTO%XADATAANDLOADEDINTOTHETARGETDATABASEUSINGTHE
X\_S_COMMAND$ATA0UMPMADEITSFIRSTAPPEARANCEIN/RACLEG SOIFYOURDATABASEISVERSIONIOR
EARLIER YOUWILLNEEDTOUSETHEOLD%XPORT)MPORTTg_X\_ INSTEAD%XPORTAND)MPORTHAVEBEEN
AROUNDSINCE/RACLE ANDALTHOUGHTHEYAREGETTINGALITTLELONGINTHETOOTHTHEYARESTILLVERYEFFECTIVE
TOOLSFORMIGRATINGDATAANDOBJECTSFROMONEDATABASETOANOTHER!ND EVENTHOUGH/RACLEHASBEEN
TALKINGABOUTDROPPINGTg_ANDX\_FORYEARSNOW THEYARESTILLPARTOFTHEBASEINSTALL&IRSTWELLTALK
ABOUT$ATA0UMPANDHOWITCANBEUSEDTOMIGRATETO%XADATA!FTERTHATWECANTAKEAQUICKLOOKAT
WAYSTOMIGRATEOLDERDATABASESUSING%XPORTAND)MPORT+EEPINMINDTHATNEWFEATURESAND
PARAMETERSAREADDEDTO$ATA0UMPWITHEACHMAJORRELEASE#HECKTHE/RACLEDOCUMENTATIONFOR
CAPABILITIESANDFEATURESSPECIFICTOYOURDATABASEVERSION
&ROMTIMETOTIMEINTHISCHAPTERWELLMAKEREFERENCETOTESTSANDTIMINGSWESAWINOURLAB4ABLE
 SHOWSSOMEOFTHERELEVANTCHARACTERISTICSOFTHESERVERSANDDATABASESWEUSEDFORTHESETESTS4HE
,!"DATABASEISTHESOURCEDATABASEAND%8$"ISTHETARGET%XADATA DATABASE)TISAN%XADATA6
QUARTERRACKCONFIGURATION

Table 13-1. Lab Configuration

Database Db Version Platform Processors CPU Clock


,!"  2ED(AT,INUX BIT $UAL#ORE )NTEL8EON '(Z
)NTEL8EON-0#05

%8$"  /RACLE%NTERPRISE,INUX BIT 1UAD#ORE )NTEL8EON '(Z


%.AHALEM

(EREISABREAKDOWNOFTHESEGMENTSINMYTESTDATABASE
B46<4=CNCH?4<1HC4B

2;DBC4A%"
8=34G " "&
8=34G?0AC8C8>=!"%
;>18=34G#'
;>1B46<4=C!(
C01;4!%%!
C01;4?0AC8C8>= &%'
CH?4!D=3> #!
.OW LETSTAKEALOOKATSOMEOFTHE$ATA0UMPPARAMETERSYOULLWANTTOKNOWABOUT(EREARE
SOMEOFTHEKEYPARAMETERSTHATAREUSEFULFORMIGRATINGDATABASES
2><?A4BB8>=$ATA0UMPCOMPRESSIONISARELATIVELYNEWFEATURE)NGYOUHAD
THEABILITYTOCOMPRESSMETADATA BUTINGTHISCAPABILITYWASEXTENDEDTO
TABLEDATAASWELL6ALIDOPTIONSARE0;; 30C0N>=;H <4C030C0N>=;HAND=>=4
5SINGTHE2><?A4BB8>=,0;;OPTION$ATA0UMPREDUCEDTHESIZEOFOUREXPORT
FROM'TO' ACOMPRESSIONRATIOOFOVERTIMES4HATSAPRETTY
SIGNIFICANTSAVINGSINSTORAGE7HENWERANTHETESTWITHCOMPRESSIONTURNED
ON WEFULLYEXPECTEDITTOSLOWDOWNTHEEXPORT BUTINSTEADITACTUALLYREDUCED
OUREXPORTTIMEFROMMINUTESTOJUSTOVERMINUTES4HISWONTALWAYSBE
THECASE OFCOURSE/NOURTESTSYSTEMTHEEXPORTWASCLEARLY)/ BOUND"UTIT
DOESPOINTOUTTHATCOMPRESSIONCANSIGNIFICANTLYREDUCETHESTORAGE


#(!04%2 -)'2!4).'4/%8!$!4!

REQUIREMENTSFOREXPORTINGYOURDATABASEWITHOUTNECESSARILYSLOWINGDOWNTHE
PROCESS5NFORTUNATELY THEABILITYTOCOMPRESSTABLEDATAONTHEFLYWASNOT
INTRODUCEDUNTILRELEASEG2)FYOURDATABASEISGANDYOUNEEDTO
COMPRESSYOURDUMPFILESBEFORETRANSFERRINGTHEMTO%XADATA YOUWILLNEEDTO
DOTHATUSINGEXTERNALTOOLSLIKEGZIP ZIP ORCOMPRESS.OTETHATTHEUSEOFTHE
data2><?A4BB8>=OPTIONIN$ATA0UMPREQUIRES/RACLE!DVANCED#OMPRESSION
LICENSES
5;0B7102:NC8<4, 5;0B7102:NB2="ELIEVEITORNOT BYDEFAULT$ATA0UMPDOES
NOTGUARANTEETHEREADCONSISTENCYOFYOUREXPORT4OEXPORTAREAD CONSISTENT
IMAGEOFYOURDATABASEYOUMUSTUSEEITHERTHE5;0B7102:NB2=ORTHE
5;0B7102:NC8<4PARAMETER)FYOUUSE5;0B7102:NC8<4 $ATA0UMPLOOKSUPTHE
NEAREST3YSTEM#HANGE.UMBER3#. CORRESPONDINGTOTHETIMEYOUSPECIFIED
ANDEXPORTSALLDATAASOFTHAT3#.5;0B7102:NC8<4CANBEPASSEDINTO$ATA
0UMPASFOLLOWS
5;0B7102:NC8<4,c^NcX\TbcP\_$B4?! ! ))33<>=HHHH77!#)<8)BB
)FYOUCHOOSETOUSE5;0B7102:NB2= YOUCANGETTHECURRENT3#.OFYOUR
DATABASEBYRUNNINGTHEFOLLOWINGQUERY
B@;-bT[TRcRdaaT]cNbR]Ua^\eSPcPQPbT*
5D;;, B274<0B, C01;4B4HESEOPTIONSAREMUTUALLYEXCLUSIVEANDSPECIFYWHETHER
THEEXPORTWILLBEFORTHEFULLDATABASE ASELECTIONOFSCHEMAS ORASELECTIONOF
INDIVIDUALTABLES.OTETHATCERTAINSCHEMAS LIKE393 -$393 #48393 AND
$"3.-0 ARENEVEREXPORTEDWHENDOINGAFULLDATABASEEXPORT
?0A0;;4;4HE?0A0;;4;PARAMETERINSTRUCTS$ATA0UMPTOSPLITTHEWORKUPINTO
MULTIPLEPARTSANDRUNTHEMCONCURRENTLY?0A0;;4;CANVASTLYIMPROVETHE
PERFORMANCEOFTHEEXPORTPROCESS
=4CF>A:N;8=:4HISPARAMETERSPECIFIESADATABASELINKINTHETARGETDATABASETO
BEUSEDFORTHEEXPORT)TALLOWSYOUTOEXPORTADATABASEFROMAREMOTESERVER
PULLTHEDATADIRECTLYTHROUGHTHENETWORKVIADATABASELINKINTHETARGET
DATABASE ANDLANDTHEFILESONAN%XADATAFILESYSTEM7ESEETHISASMOREOFA
CONVENIENCETHANANYTHINGELSE ASITSAVESYOUTHEEXTRASTEPOFTRANSPORTING
THEDUMPFILESMANUALLYATTHEENDOFTHEEXPORT)TISUSEDBY'RID#ONTROLTO
AUTOMATETHEMIGRATIONPROCESSUSINGTHEh)MPORT&ROM$ATABASEvPROCESS
5SINGTHISMETHODFORMANUALMIGRATIONDOESNTMAKEMUCHSENSEˆIFYOUARE
GOINGTOCOPYTHEDATAOVERADATABASELINKANYWAY WHYNOTLOADITTOTARGET
TABLESDIRECTLY USING#4!3ORDIRECT PATHINSERT INSTEADOFDUMPINGITTODISK
ANDRELOADINGBACKLATERON
.OWLETSTURNOURATTENTIONTOTHEIMPORTPROCESS3CHEMA LEVELIMPORTISUSUALLYPREFERABLEWHEN
MIGRATINGDATABASES)TALLOWSYOUTOBREAKTHEPROCESSUPINTOSMALLER MOREMANAGEABLEPARTS4HISIS
NOTALWAYSTHECASE ANDTHEREARETIMESWHENAFULLDATABASEIMPORTISTHEBETTERCHOICE-OSTOFTHE
TASKSWEWILLTALKABOUTHEREAPPLYTOBOTHSCHEMA LEVELANDFULLDATABASEIMPORTS !SWEGOALONG WELL
NOTEANYEXCEPTIONSYOUWILLNEEDTOBEAWAREOF)FYOUCHOOSENOTTODOAFULLDATABASEIMPORT BE
AWARETHATSYSTEMOBJECTSINCLUDINGROLES PUBLICSYNONYMS PROFILES PUBLICDATABASELINKS SYSTEM
PRIVILEGES ANDOTHERSWILLNOTBEIMPORTED9OUWILLNEEDTOEXTRACTTHE$$,FORTHESEOBJECTSUSINGTHE
B@;58;4PARAMETERANDA5D;;,HIMPORT9OUCANTHENEXECUTETHE$$,INTOTHETARGETDATABASETOCREATE
THEM,ETSTAKEALOOKATSOMEOFTHEPARAMETERSUSEFULFORMIGRATINGDATABASES


#(!04%2 -)'2!4).'4/%8!$!4!

A4<0?NB274<0!STHENAMEIMPLIES THISPARAMETERTELLS$ATA0UMPTOCHANGE
THEOWNERSHIPOFOBJECTSFROMONESCHEMATOANOTHERDURINGTHECOURSEOFTHE
IMPORT4HISISPARTICULARLYUSEFULFORRESOLVINGSCHEMACONFLICTSWHENMERGING
MULTIPLEDATABASESINTOONE%XADATADATABASE
A4<0?N30C058;4$ATAFILESCANBERENAMEDDYNAMICALLYDURINGTHEIMPORT
PROCESSUSINGTHISPARAMETER4HISALLOWS!3-TOAUTOMATICALLYORGANIZEAND
NAMETHEDATAFILESACCORDINGTO/RACLE-ANAGED&ILES/-& RULES
A4<0?NC01;4B?0244HISOPTIONCHANGESTHETABLESPACENAMEREFERENCEFOR
SEGMENTSFROMONETABLESPACETOANOTHER)TISUSEFULWHENYOUWANTTO
PHYSICALLYRELOCATETABLESFROMONETABLESPACETOANOTHERDURINGTHEIMPORT
B274<0B,ISTOFSCHEMASTOIMPORT
B@;58;4)NSTEADOFIMPORTINGANYTHINGINTOTHEDATABASE /BJECTDEFINITIONS
$$, AREWRITTENTOAN31,SCRIPT4HISCANBEQUITEUSEFULFORPRE BUILDING
OBJECTSIFYOUWANTTOMAKECHANGESTOTHEIRPHYSICALSTRUCTURE SUCHAS
PARTITIONINGORUSING(##COMPRESSION
C01;4N4G8BCBN02C8>=4HEACTIONTOTAKEIFTHEIMPORTEDOBJECTALREADYEXISTS
6ALIDKEYWORDSARE0??4=3 A4?;024 JB:8?L ANDCAD=20C4
C01;4B!LISTOFTABLESTOIMPORT&OREXAMPLE C01;4B,:B>B:4FA9>7=B>=C4BC
CA0=B5>A<4HISPARAMETERALLOWSYOUTOMAKECHANGESTOSEGMENTATTRIBUTESIN
OBJECT CREATION$$,STATEMENTS LIKESTORAGEATTRIBUTES4HISPROVIDESA
CONVENIENTWAYTOOPTIMIZEEXTENTSIZESFORTABLESWHENTHEYARECREATEDIN
%XADATA
"EFOREYOUBEGINIMPORTINGSCHEMASINTOYOUR%XADATADATABASE BEAWARETHAT$ATA0UMPONLY
CREATESTABLESPACESAUTOMATICALLYWHENAFULLDATABASEIMPORTISDONE3OIFYOUAREIMPORTINGATTHE
SCHEMAORTABLELEVELYOUWILLNEEDTOCREATEYOURTABLESPACESMANUALLY4ODOTHIS GENERATETHE$$,FOR
TABLESPACESUSINGTHEPARAMETERS5D;;,hTbANDB@;58;4,jh^daNb`[NbRaX_cl4HISPRODUCESASCRIPTWITH
THE$$,FORALLOBJECTSINTHEDUMPFILE INCLUDINGDATAFILES /NETHINGYOUMAYNOTICEABOUTTHE2A40C4
C01;4B?024$$,ISTHATTHEDATAFILEFILENAMESAREFULLYQUALIFIED4HISISNTATALLWHATWEWANT BECAUSEIT
CIRCUMVENTS/-&ANDCREATESHARD CODEDFILENAMESTHATCANNOTBEMANAGEDBYTHEDATABASE4HE
A4<0?N30C058;4PARAMETERALLOWSYOUTORENAMEYOURDATAFILESTOREFLECTTHE!3-DISKGROUPSINYOUR
%XADATADATABASE4HESYNTAXLOOKSSOMETHINGLIKETHIS
A4<0?N30C058;4,d!^aPSPcP;01 !TgP\_[T SQU)30C0
/NEFINALNOTEBEFOREWEMOVEONTO%XPORT)MPORT#HARACTERSETTRANSLATIONBETWEENTHESOURCE
ANDTARGETDATABASESISDONEAUTOMATICALLYWITH$ATA0UMP-AKESURETHECHARACTERSETOFTHESOURCE
DATABASEISASUBSETOFTHETARGETDATABASE ORSOMETHINGMAYBELOSTINTRANSLATION&OREXAMPLE ITS
OKAYIFYOURSOURCEDATABASEIS53!3#))BIT ANDTHETARGETDATABASEIS7%)3/0BIT "UT
MIGRATINGBETWEENDIFFERENT BITCHARACTERSETSORGOINGFROMBITTOBITMAYCAUSESPECIALCHARACTERS
TOBEDROPPED

Export and Import


)FTHEDATABASEYOUAREMIGRATINGTO%XADATAISARELEASEPRIORTOVERSIONG $ATA0UMPWONTBEAN
OPTION)NSTEADYOUWILLNEEDTOWORKWITHITSPREDECESSORS %XPORTTg_ AND)MPORTX\_ 
%XPORT)MPORTFEATURESHAVENTCHANGEDMUCHSINCE/RACLE BUTIFYOUAREMIGRATINGFROMAPREVIOUS


#(!04%2 -)'2!4).'4/%8!$!4!

RELEASE YOUWILLNOTICETHATSOMEFEATURESMAYBEMISSING(OPEFULLYYOUARENTSTILLSUPPORTINGI
DATABASES OR'ODFORBIDX BUTNOTTOWORRY%VENTHOUGHSOMEOPTIONSLIKE5;0B7102:NB2=AND
?0A0;;4;ARENOTOPTIONSINTHESEOLDERRELEASES THEREAREWAYSTOWORKAROUNDTHESEMISSINGFEATURES
?0A0;;4;ISSTRICTLYA$ATA0UMPFEATUREBUTYOUCANSTILLPARALLELIZEDATABASEEXPORTSBYRUNNING
CONCURRENTSCHEMAEXPORTS4HISISAMUCHLESSCONVENIENTWAYOFhPARALLELIZINGvYOUREXPORTPROCESS)F
YOUHAVETOPARALLELIZEYOUREXPORTPROCESSINTHISWAYYOUWILLHAVETODOTHEWORKOFFIGURINGOUTWHICH
SCHEMAS GROUPEDTOGETHER AREFAIRLYEQUALINSIZETOMINIMIZETHETIMEITTAKESFORALLOFTHEMTO
COMPLETE
2><?A4BB8>=ISANOTHERFEATUREMISSINGFROM%XPORT4HISHASNEVERBEENMUCHOFANISSUEFOR$"!S
SUPPORTING5NIX,INUXPLATFORMS4HESESYSTEMSPROVIDETHEABILITYTOREDIRECTTHEOUTPUTFROM%XPORT
THROUGHTHER^\_aTbbORViX_COMMANDSBYMEANSOFANAMEDPIPE SOMETHINGLIKETHISTHESIGNISTHE
SHELLPROMPT OFCOURSE 
\ZUXU^Tg_S\_

[b[Tg_S\_
_afafa aY^W]b^]SQP>Rc! $) &Tg_S\_

RPcTg_S\_kViX_R-\hNR^\_aTbbTSNTg_^acS\_Vi

Tg_bhbcT\UX[T,Tg_S\_^f]Ta,aY^W]b^]R^]bXbcT]c,hR^\_aTbb,]bcPcXbcXRb,]^]T
[^V,\hNR^\_aTbbTSNTg_^ac[^V

[b[\hNR^\_aTbbTSNTg_^ac
afafa aY^W]b^]SQP" "# #' %$>Rc!!!)"!\hNR^\_aTbbTSNTg_^acS\_Vi
afafa aY^W]b^]SQP #"!>Rc!!!)"!\hNR^\_aTbbTSNTg_^ac[^V
4HEA4<0?NC01;4B?024PARAMETERISNOTAVAILABLEIN%XPORT)MPORT4OWORKAROUNDTHISYOUWILL
HAVETOGENERATEA31,FILEUSINGTHE8=34G58;4PARAMETERWHICHPRODUCESA31,SCRIPTLIKE$ATA0UMPS
B@;58;4PARAMETER9OUCANTHENMODIFYTABLESPACEREFERENCESANDPRE CREATESEGMENTSINTHENEW
TABLESPACEASNEEDED5SINGTHE86=>A4PARAMETERWILLALLOW)MPORTTOSIMPLYPERFORMANINSERTINTOTHE
TABLESYOUMANUALLYCREATEDAHEADOFTIME4HEA4<0?NB274<0PARAMETERTAKESONASLIGHTLYDIFFERENT
FORMIN)MPORT4OCHANGETHENAMEOFASCHEMADURINGIMPORT USETHE5A><DB4AANDC>DB4A
PARAMETERS
4HEREISONELIMITATIONWITH%XPORT)MPORTTHATCANNOTBEESCAPED)MPORTDOESNOTSUPPORT
%XADATA(YBRID#OLUMNAR#OMPRESSION(## /URTESTSSHOWTHATWHENIMPORTINGDATAUSING)MPORT
THEBESTTABLECOMPRESSIONYOUCANEXPECTTOGETISABOUTWHATYOUWOULDGETWITHTABLESCOMPRESSEDFOR
/,40ALSOKNOWNINGASh!DVANCED#OMPRESSIONv )TDOESNTMATTERIFATABLEISCONFIGUREDFORANY
ONEOFTHEFOUR(##COMPRESSIONMODESAVAILABLEON%XADATA 1UERY,OW(IGHAND!RCHIVE
,OW(IGH 4HISISBECAUSE(##COMPRESSIONCANONLYOCCURIFTHEDATAISDIRECT PATHINSERTED USING
SYNTAXLIKEX]bTac0??4=3 FOREXAMPLE!CCORDINGTHE%XADATA5SERS'UIDE h#ONVENTIONAL
INSERTSANDUPDATESARESUPPORTED vBUThRESULTINALESSCOMPRESSEDFORMAT ANDREDUCEDCOMPRESSION
RATIOv4HIShREDUCEDCOMPRESSIONRATIOvISACTUALLYTHESAMEASTHE/,40COMPRESSIONPROVIDEDBYTHE
!DVANCED#OMPRESSIONOPTION WHICH(##FALLSBACKTOFORNORMALINSERTS"YTHEWAY )MPORTWILLNOT
COMPLAINORISSUEANYWARNINGSTOTHISEFFECT)TWILLSIMPLYIMPORTTHEDATAATAMUCHLOWERCOMPRESSION
RATE SILENTLYEATINGUPFARMORESTORAGETHANYOUPLANNEDOREXPECTED4HEREISNOTHINGYOUCANDO
ABOUTITOTHERTHANREBUILDTHEAFFECTEDTABLESAFTERTHEIMPORTISCOMPLETE4HEIMPORTANTTHINGTO
UNDERSTANDISTHATYOUCANNOTEXPLOIT%XADATAS(##COMPRESSIONUSING%XPORT)MPORT
4HE%XPORT)MPORTAPPROACHALSODOESNOTSUPPORT4RANSPARENT$ATA%NCRYPTION4$% )FYOUR
DATABASEUSES4$%YOUWILLNEEDTOUSE$ATA0UMPTOMIGRATETHISDATA)FYOUAREIMPORTINGATTHE
SCHEMALEVEL SYSTEMOBJECTSLIKEROLES PUBLICSYNONYMS PROFILES PUBLICDATABASELINKS SYSTEM
PRIVILEGES ANDOTHERSWILLNOTBEIMPORTED3YSTEMOBJECTSLIKETHESECANBEEXTRACTEDBYDOINGAFULL


#(!04%2 -)'2!4).'4/%8!$!4!

DATABASEIMPORTANDWITHTHE8=34G58;4PARAMETERTOEXTRACTTHE$$,TOCREATETHESEOBJECTS4HISSTEP
ISWHERETHEMOSTMISTAKESAREMADE)TISATEDIOUSPROCESSANDCAREFULATTENTIONMUSTBEGIVENSOTHAT
NOTHINGFALLSTHROUGHTHECRACKS&ORTUNATELY THEREARETHIRD PARTYTOOLSTHATDOAVERYGOODJOBOF
COMPARINGTWODATABASESANDSHOWINGYOUWHEREYOUVEMISSEDSOMETHING-OSTOFTHESETOOLS LIKE
4/!$AND$"#HANGE-ANAGERFROM%MBARCADERO ALSOPROVIDEAFEATURETOSYNCHRONIZETHEOBJECT
DEFINITIONSACROSSTOTHENEWDATABASE
)FYOUARESTILLTHINKINGABOUTUSING%XPORT)MPORT NOTETHATASTHEDATALOADINGWITH)MPORTDOESNT
USEDIRECT PATHLOADINSERTS ITWILLHAVEMUCHHIGHER#05USAGEOVERHEADDUETOUNDOANDREDO
GENERATIONANDBUFFERCACHEMANAGEMENT9OUWOULDALSOHAVETOUSEAPROPER1D554APARAMETERFOR
ARRAYINSERTSYOULLWANTTOINSERTTHOUSANDSOFROWSATATIME ANDUSE2><<8C,HWHICHWILLCOMMIT
AFTEREVERYBUFFERINSERT SOYOUWOULDNTFILLUPTHEUNDOSEGMENTSWITHONEHUGEINSERTTRANSACTION

When to Use Data Pump or Export/Import


$ATA0UMPAND%XPORT)MPORTAREVOLUME SENSITIVEOPERATIONS4HATIS THETIMEITTAKESTOMOVEYOUR
DATABASEWILLBEDIRECTLYTIEDTOITSSIZEANDTHEBANDWIDTHOFYOURNETWORK&OR/,40APPLICATIONSTHISIS
DOWNTIME!SSUCH ITISBETTERSUITEDFORSMALLER/,40DATABASES)TISALSOWELLSUITEDFORMIGRATINGLARGE
$7DATABASES WHEREREAD ONLYDATAISSEPARATEDFROMREAD WRITEDATA4AKEALOOKATTHEDOWNTIME
REQUIREMENTSOFYOURAPPLICATIONANDRUNAFEWTESTSTODETERMINEWHETHER$ATA0UMPISAGOODFIT
!NOTHERBENEFITOF$ATA0UMPAND%XPORT)MPORTISTHATTHEYALLOWYOUTOCOPYOVERALLTHEOBJECTSIN
YOURAPPLICATIONSCHEMASEASILY RELIEVINGYOUFROMMANUALLYHAVINGTOCOPYOVER0,31,PACKAGES
VIEWS SEQUENCEDEFINITIONS ANDSOON)TISNOTUNUSUALTOUSE%XPORT)MPORTFORMIGRATINGSMALLTABLES
ANDALLOTHERSCHEMAOBJECTS WHILETHELARGESTTABLESAREMIGRATEDUSINGADIFFERENTMETHOD

What to Watch Out for when Using Data Pump or Export/Import


#HARACTER SETDIFFERENCESBETWEENTHESOURCEANDTARGETDATABASESARESUPPORTED BUTIFYOUARE
CONVERTINGCHARACTERSETSMAKESURETHECHARACTERSETOFTHESOURCEDATABASEISASUBSETOFTHETARGET)F
YOUAREIMPORTINGATTHESCHEMALEVEL CHECKTOBESUREYOUARENOTLEAVINGBEHINDANYSYSTEMOBJECTS
LIKEROLESANDPUBLICSYNONYMS ORDATABASELINKS2EMEMBERTHAT(##ISONLYSUPPORTEDIN$ATA0UMP
"ESUREYOUUSETHECONSISTENCYPARAMETERSOF%XPORTOR$ATA0UMPTOENSURETHATYOURDATAISEXPORTED
INAREAD CONSISTENTMANNER$ONTFORGETTOTAKEINTOACCOUNTTHELOADYOUAREPUTTINGONTHENETWORK
$ATA0UMPAND%XPORT)MPORTMETHODSALSOREQUIREYOUTOHAVESOMETEMPORARYDISKSPACEBOTH
INTHESOURCEANDTARGETSERVER FORHOLDINGTHEDUMPFILES.OTETHATUSING$ATA0UMPSTABLEDATA
COMPRESSIONOPTIONREQUIRESYOUTOHAVE/RACLE!DVANCED#OMPRESSIONLICENSESBOTHFORTHESOURCE
ANDTARGETDATABASEONLYTHE\TcPSPcPN^][h COMPRESSIONOPTIONISINCLUDEDINTHE%NTERPRISE%DITION
LICENSE 

#OPYING$ATAOVERA$ATABASE,INK
7HENEXTRACTINGANDCOPYINGVERYLARGEAMOUNTSOFDATAˆMANYTERABYTESˆBETWEENDATABASES
DATABASELINKSMAYBEYOURBESTOPTION5NLIKETHE$ATA0UMPOPTION WITHDATABASELINKSYOUWILLREAD
YOURDATAONCEFROMTHESOURCE TRANSFERITIMMEDIATELYOVERTHENETWORK ANDWRITEITONCEINTOTHE
TARGETDATABASE 7ITH$ATA0UMP /RACLEWOULDHAVETOREADTHEDATAFROMSOURCE THENWRITEITTOA
DUMPFILE ANDTHENYOULLTRANSFERTHEFILEWITHSOMEFILE TRANSFERTOOLORDOTHENETWORKCOPYOPERATION
USING.&3 READTHEDUMPFILEINTHETARGETDATABASE ANDTHENWRITEITINTOTHETARGETDATABASETABLES)N
ADDITIONTOALLTHEEXTRADISK)/DONEFORWRITINGANDREADINGTHEDUMPFILES YOUWOULDNEEDEXTRADISK
SPACEFORHOLDINGTHESEDUMPFILESDURINGTHEMIGRATION.OWYOUMIGHTSAYh(OLDON $ATA0UMPdoes


#(!04%2 -)'2!4).'4/%8!$!4!

HAVETHE=4CF>A:N;8=:OPTIONANDTHEABILITYTOTRANSFERDATADIRECTLYOVERDATABASELINKSv9ESTHATS
TRUE BUTUNFORTUNATELYWHENUSINGX\_S_WITHDATABASELINKS $ATA0UMPPERFORMSCONVENTIONAL8=B4AC
0BB4;42CS NOTDIRECTPATHINSERTS!NDTHISMEANSTHATTHEINSERTSWILLBEMUCHSLOWER GENERATELOTSOF
REDOANDUNDO ANDPOSSIBLYRUNOUTOFUNDOSPACE!NDMOREIMPORTANTLY CONVENTIONALPATH)!3DOES
NOTCOMPRESSDATAWITH(##COMPRESSIONBUTRESORTSTOREGULAR/,40COMPRESSIONINSTEADIF(##IS
ENABLEDFORTHETABLE 3OTHISMAKESTHE$ATA0UMPFILE LESSIMPORTOVERDATABASELINKSVIRTUALLYUSELESS
FORLOADINGLOTSOFDATAINTO%XADATAFAST9OUWOULDHAVETOUSEYOUROWNDIRECTPATH)!3STATEMENTS
WITH0??4=3HINTSTOGETTHEBENEFITSOFDIRECTPATHLOADSANDMAXIMUMPERFORMANCEOUTOFFILE LESS
TRANSFEROVERDATABASELINKS

 +EVIN3AYS!DDTOTHISLISTOFPOSSIBLEDUMPFILETRANSFERTECHNIQUESTHECAPABILITYKNOWNAS)NJECTING&ILESWITH
$ATABASE&ILE3YSTEM$"&3 4HE$"&3CLIENTSQUbNR[XT]c HASBEENPORTEDTOALL,INUXAND5NIXPLATFORMSAND
CANBEUSEDTOCOPYFILESINTOTHE%XADATA$ATABASE-ACHINEEVENIFTHE$"&3FILESYSTEMISNOTMOUNTEDONTHE
HOSTSOFTHE%XADATA$ATABASE-ACHINENORONTHESENDINGSYSTEM)TISAMOUNT FREEAPPROACH/RACLE
$OCUMENTATIONPROVIDESCLEAREXAMPLESOFHOWTOUSETHEBUILT INR^_hCOMMANDTHATSQUbNR[XT]cSUPPORTS4HE
DATAFLOWSFROMTHESQUbNR[XT]cEXECUTABLEOVER31,
.ETANDISINSERTEDDIRECTLYINTO3ECURE&ILE,/"S4HE
TRANSFERISMUCHMOREEFFICIENTTHANTHE.&3PROTOCOLANDISSECURE-OST%XADATA$ATABASE-ACHINEDEPLOYMENTS
MAINTAIN$"&3FILESYSTEMS SOTHEREISLESSOFANEEDFORLOCALDISKCAPACITYUSEDASASTAGINGAREA

4HEREARESOMECASESWHEREMOVINGYOURDATATHROUGHDATABASELINKSMAYNOTPERFORMASWELLAS
THE$ATA0UMPAPPROACH)FYOUHAVEASLOWNETWORKLINKBETWEENTHESOURCEANDTARGETMIGRATIONS
BETWEENREMOTEDATACENTERS PERHAPS THENYOUMAYBENEFITMOREFROMCOMPRESSINGTHEDUMPFILES
WHILEDATABASELINKSOVER/RACLE.ETWONTDOASAGGRESSIVECOMPRESSIONAS FOREXAMPLE GZIPCANDO
/RACLE.ET31,
.ET DOESSIMPLECOMPRESSIONBYDE DUPLICATINGCOMMONCOLUMNVALUESWITHINAN
ARRAYOFROWSWHENSENTOVER31,
.ET4HISISWHYTHENUMBEROFBYTESTRANSFERREDOVER31,
.ETMAY
SHOWASMALLERVALUETHANTHETOTALSIZEOFRAWDATA
4RANSFERRINGTHEDATAOFASINGLETABLEOVERADATABASELINKISVERYEASY)NTHETARGET%XADATA
DATABASEYOULLNEEDTOCREATEADATABASELINKPOINTINGTOTHESOURCEDATABASE THENJUSTISSUEEITHERA
#4!3OR8=B4ACB4;42CCOMMANDOVERTHEDATABASELINK
2A40C430C010B4;8=:sourcedb
2>==42CC>source_user
834=C858431Hsource_password
DB8=6tns_alias*

2A40C4C01;4UPRc0BB4;42C5A><UPRc/b^daRTSQ*
4HISEXAMPLEWILLCREATETHETABLESTRUCTUREANDCOPYTHEDATA BUTITWONTCREATEANYOTHEROBJECTS
SUCHASINDEXES TRIGGERSORCONSTRAINTSFORTHETABLE4HESEOBJECTSMUSTBEMANUALLYCREATEDLATER EITHER
BYRUNNINGTHE$$,SCRIPTSORBYDOINGAMETADATA ONLYIMPORTOFTHESCHEMAOBJECTS


#(!04%2 -)'2!4).'4/%8!$!4!

 .OTE7HENCREATINGTHEDATABASELINK YOUCANSPECIFYTHEDATABASELINKS4.3CONNECTSTRINGDIRECTLY WITHA


53).'CLAUSE LIKETHIS

2A40C430C010B4;8=:DB8=634B2A8?C8>=,033A4BB,?A>C>2>;,C2?7>BC,
[^RP[W^bc?>AC, $! 2>==42CN30C0,B4AE4A,343820C43B4AE824N=0<4,>A0 6

4HATWAY YOUDONTHAVETOSETUPc]b]P\Tb^aPENTRIESINTHEDATABASESERVER

!NOTHEROPTIONISTOUSE8=B4ACB4;42CFORLOADINGDATAINTOANEXISTINGTABLESTRUCTURE7EWANTTO
BYPASSTHEBUFFERCACHE ANDTHEUNDO GENERATION AND REDO LOGGINGMECHANISMFORTHISBULKDATALOAD
SOWECANUSETHE0??4=3HINTTOMAKETHISADIRECTPATHLOADINSERT
8=B4AC0??4=38=C>UPRcB4;42C5A><UPRc/b^daRTSQ*

2><<8C*

7EREASSUMINGHERETHATTHEDATABASEISIN=>0A278E4;>6MODEDURINGTHEMIGRATION SOWEHAVENT
SETANYLOGGINGATTRIBUTESFORTHETABLEBEINGLOADED)N=>0A278E4;>6MODEALLBULKOPERATIONSSUCHAS
8=B4AC0??4=3 X]STgA41D8;3AND0;C4AC01;4<>E4 AREAUTOMATICALLY=>;>668=6
)FYOURDATABASEMUSTBEIN0A278E4;>6MODEDURINGSUCHDATALOADING BUTYOUSTILLWANTTOPERFORM
THELOADINGOFSOMETABLESWITHOUTLOGGING THENYOUCANJUSTTEMPORARILYTURNOFFLOGGINGFORTHOSE
TABLESFORTHEDURATIONOFTHELOAD
0;C4AC01;4UPRc=>;>668=6*

8=B4AC0??4=38=C>UPRcB4;42C5A><UPRc/b^daRTSQ*

0;C4AC01;4UPRc;>668=6*

/FCOURSEIFYOURDATABASEORTABLESPACECONTAININGTHISTABLEISMARKED5>A24;>668=6 THENLOGGING
WILLSTILLOCCUR DESPITEANYTABLE LEVEL=>;>668=6ATTRIBUTES

Achieving High-Throughput CTAS or IAS over a Database Link


7HILETHEPREVIOUSEXAMPLESARESIMPLE THEYMAYNOTGIVEYOUTHEEXPECTEDTHROUGHPUT ESPECIALLY
WHENTHESOURCEDATABASESERVERISNTINTHESAME,!.ASTHETARGET4HEDATABASELINKSANDTHE
UNDERLYING4#0PROTOCOLMUSTBETUNEDFORHIGHTHROUGHPUTDATATRANSFER4HEDATATRANSFERSPEEDIS
LIMITEDOBVIOUSLYBYYOURNETWORKINGEQUIPMENTTHROUGHPUTANDISALSODEPENDENTONTHENETWORK
ROUND TRIPTIME244 BETWEENTHESOURCEANDTARGETDATABASE
7HENMOVINGTENSOFTERABYTESOFDATAINASHORTTIME YOUOBVIOUSLYNEEDALOTOFNETWORK
THROUGHPUTCAPACITY9OUMUSTHAVESUCHCAPACITYFROMENDTOEND FROMYOURSOURCEDATABASETOTHE
TARGET%XADATACLUSTER4HISMEANSTHATYOURSOURCESERVERMUSTBEABLETOSENDDATAASFASTASYOUR
%XADATACLUSTERHASTORECEIVEIT ANDANYNETWORKINGEQUIPMENTSWITCHES ROUTERS INBETWEENMUST
ALSOBEABLETOHANDLETHAT INADDITIONTOALLOTHERTRAFFICTHATHASTOFLOWTHROUGHTHEM$EALINGWITH
CORPORATENETWORKTOPOLOGYANDNETWORKHARDWARECONFIGURATIONISAVERYWIDETOPICANDOUTOFTHE


#(!04%2 -)'2!4).'4/%8!$!4!

SCOPEOFTHISBOOK BUTWELLTOUCHTHESUBJECTOFTHENETWORKHARDWAREBUILTINTO%XADATADATABASE
SERVERSHERE
)NADDITIONTOTHE)NFINI"ANDPORTS %XADATACLUSTERSALSOHAVEBUILT IN%THERNETPORTS4ABLE 
LISTSALLTHE%THERNETAND)NFINI"ANDPORTS

Table 13-2. Exadata Ethernet and InfiniBand ports in each database server

Exadata Version Hardware Ethernet Ports InfiniBand Ports


6 (0 ¾'BS ¾'BS$$2

6 3UN ¾'BS ¾'BS1$2

8  3UN ¾'BS ¾'BS


¾'BS

8  3UN ¾'BS ¾'BS


¾'BS

The database servers and cells each have one more administrative Ethernet port for server management
(ILOM).

.OTETHATTHISTABLESHOWSTHENUMBEROFNETWORKPORTSPERDATABASESERVER3O WHILE%XADATA6
DOESNOTHAVEANY'B%PORTS ITSTILLHAS¾'B%PORTSPERDATABASESERVER7ITHDATABASESERVERSIN
AFULLRACK THISWOULDADDUPTO¾'B%PORTS GIVINGYOUAMAXIMUMTHEORETICALTHROUGHPUTOF
GIGABITSPERSECONDWHENUSINGONLY%THERNETPORTS7ITHVARIOUSOVERHEADS GIGAbytesPERSECONDOF
TRANSFERSPEEDWOULDTHEORETICALLYSTILLBEACHIEVABLEIFYOUMANAGETOPUTALLOFTHENETWORKPORTS
EQUALLYINTOUSEANDTHEREARENOOTHERBOTTLENECKS4HISWOULDMEANTHATYOUHAVETOEITHERBONDTHE
NETWORKINTERFACESORROUTETHEDATATRANSFEROFDIFFERENTDATASETSVIADIFFERENTNETWORKINTERFACES
$IFFERENTDBLINKSCONNECTIONSCANBEROUTEDVIADIFFERENT)0SOR$ATA0UMPDUMPFILESTRANSFERREDVIA
DIFFERENTROUTES
4HISALREADYSOUNDSCOMPLICATED THATSWHYCOMPANIESMIGRATINGTO%XADATAOFTENUSEDTHEHIGH
THROUGHPUTBONDED)NFINI"ANDLINKSFORMIGRATINGLARGEDATASETSWITHLOWDOWNTIME5NFORTUNATELY THE
EXISTINGDATABASENETWORKINGINFRASTRUCTUREINMOSTCOMPANIESDOESNOTINCLUDE)NFINI"ANDINOLDBIG
IRONSERVERS 4HESTANDARDUSUALLYISANUMBEROFSWITCHEDANDBONDED'B%%THERNETPORTSOR'B%
PORTSINSOMECASES4HATSWHY FOR%XADATA66MIGRATIONS YOUWOULDHAVEHADTOEITHERINSTALLAN
)NFINI"ANDCARDINTOYOURSOURCESERVERORUSEASWITCHCAPABLEOFBOTHHANDLINGTHESOURCE%THERNET
TRAFFICANDFLOWINGITONTOTHETARGET%XADATA)NFINI"ANDNETWORK
,UCKILYTHENEW%XADATA8 AND8 RELEASESBOTHHAVE'B%PORTSINCLUDEDINTHEM SOYOU
DONTNEEDTOGOTHROUGHTHEHASSLEOFGETTINGYOUROLDSERVERS)NFINI"AND ENABLEDANYMOREANDCAN
RESORTTO'B%CONNECTIONSIFYOUROLDSERVERSORNETWORKSWITCHESHAVE'B%%THERNETCARDSIN
PLACE 0ROBABLYBYTHETIMETHISBOOKCOMESOUT NOBODYPLANSLARGE SCALEMIGRATIONSTO%XADATA6AND
6ANYMORE


#(!04%2 -)'2!4).'4/%8!$!4!

 .OTE2EMEMBERTHATIFYOUDOnotHAVEHUGEDATATRANSFERREQUIREMENTSWITHINAVERYLOWDOWNTIMEWINDOW
THENTHEISSUESDESCRIBEDHEREMAYNOTBEPROBLEMSFORYOUATALL9OUWOULDWANTTOPICKTHEEASIESTAND
SIMPLESTDATATRANSFERMETHODTHATGETSTHEJOBDONEWITHINTHEREQUIREDTIMEWINDOW)TSIMPORTANTTOKNOWTHE
AMOUNTOFDATATOBETRANSFERREDINADVANCEANDTESTTHEACTUALTRANSFERSPEEDSINADVANCETOSEEWHETHERYOU
WOULDFITINTOTHEPLANNEDDOWNTIME)FYOURDBLINKTRANSFERORDUMPFILECOPYOPERATIONISTOOSLOW THENYOUCAN
USEFREETOOLSLIKEI0ERFWcc_)X_TaUb^daRTU^aVT]Tc TOTESTOUTYOURNETWORKTHROUGHPUTBETWEENSOURCE
ANDTARGETSERVERS)FTHEDBLINKSORDATAPUMPDUMPFILETRANSFERISSIGNIFICANTLYWORSETHANI0ERFSRESULTS THERE
MUSTBEACONFIGURATIONBOTTLENECKSOMEWHERE

4HISLEADSUSTOSOFTWARECONFIGURATIONTOPICSFORHIGHNETWORKTHROUGHPUTFORDATABASEMIGRATIONS
4HISCHAPTERDOESNOTAIMTOBEANETWORKTUNINGREFERENCE BUTWEWOULDLIKETOEXPLAINSOME
CHALLENGESWEVESEEN'ETTINGTHE/RACLEDATABASELINKSTHROUGHPUTRIGHTINVOLVESCHANGINGMULTIPLE
SETTINGSANDREQUIRESMANUALPARALLELIZATION(OPEFULLYTHISSECTIONWILLHELPYOUAVOIDREINVENTINGTHE
WHEELWHENDEALINGWITHHUGEDATASETSANDLOWDOWNTIMEREQUIREMENTS
)NADDITIONTOTHENEEDFORSUFFICIENTTHROUGHPUTCAPACITYATTHENETWORKHARDWARELEVEL THEREARE
THREEMAJORSOFTWARECONFIGURATIONSETTINGSTHATAFFECT/RACLESDATATRANSFERSPEED
v &ETCHARRAYSIZEPaaPhbXiT
v 4#0SENDANDRECEIVEBUFFERSIZES
v /RACLE.ET3ESSION$ATA5NIT3$5 SIZE
7ITHREGULARAPPLICATIONCONNECTIONS THEFETCHARRAYSIZEHASTOBESETTOAHIGHVALUE RANGINGFROM
HUNDREDSTOTHOUSANDS IFYOUARETRANSFERRINGLOTSOFROWS/THERWISE IF/RACLESENDSTOOFEWROWSOUTAT
ATIME MOSTOFTHETRANSFERTIMEMAYENDUPBEINGSPENTWAITINGFOR31,
.ETPACKETPING PONGBETWEEN
THECLIENTANDSERVER
(OWEVER WITHDATABASELINKS /RACLEISSMARTENOUGHTOAUTOMATICALLYSETTHEFETCHARRAYSIZETOTHE
MAXIMUMˆITTRANSFERSROWSATATIME3O WEDONTNEEDTOTUNEITOURSELVES

Tuning TCP Buffer Sizes


4HE4#0SENDANDRECEIVEBUFFERSIZESARECONFIGUREDATTHEOPERATING SYSTEMLEVEL SOEVERY/3HAS
DIFFERENTSETTINGSFORIT)NORDERTOACHIEVEHIGHERTHROUGHPUT THE4#0BUFFERSIZESHAVETOBEINCREASED
INBOTHENDSOFTHECONNECTION7ELLCOVERA,INUXAND3OLARISEXAMPLEHEREREADYOUR/3NETWORKING
DOCUMENTATIONIFYOUNEEDTODOTHISONOTHERPLATFORMS7EOFTENUSETHE0ITTSBURGH3UPERCOMPUTING
#ENTERSh%NABLING(IGH0ERFORMANCE$ATA4RANSFERSvPAGEFORREFERENCE
Wcc_)fff_bRTSd]Tcf^aZX]V_a^YTRcbcR_cd]T &IRST YOULLNEEDTODETERMINETHEMAXIMUM
BUFFERSIZE4#0PERCONNECTION INYOURSYSTEM
/NTHE%XADATASERVERS JUSTKEEPTHESETTINGSFOR4#0BUFFERSIZESASTHEYWERESETDURINGSTANDARD
%XADATAINSTALL/N%XADATATHE4#0STACKHASALREADYBEENCHANGEDFROMGENERIC,INUXDEFAULTS$Onot
CONFIGURE%XADATASERVERSSETTINGSBASEDONGENERICDATABASEDOCUMENTATIONSUCHASTHEh/RACLE
$ATABASE1UICK)NSTALLATION'UIDEFOR,INUXv 


#(!04%2 -)'2!4).'4/%8!$!4!

(OWEVER ONTHESOURCESYSTEM WHICHISABOUTTOSENDLARGEAMOUNTSOFDATA THEDEFAULT4#0BUFFER


SIZESMAYBECOMEABOTTLENECK9OUSHOULDADDTHESELINESTOTcRbhbRc[R^]UIFTHEYRENOTTHERE
ALREADY
]TcR^aTa\T\NSTUPd[c,!%! ##
]TcR^aTa\T\N\Pg,1048576
]TcR^aTf\T\NSTUPd[c,!%! ##
]TcR^aTf\T\N\Pg,4194304
4HENISSUEAbhbRc[~_COMMANDTOAPPLYTHESEVALUESINTOTHERUNNINGKERNEL
4HEMAXIMUMREADANDWRITEBUFFERSIZESPER4#0CONNECTIONWILLBESETTO-"AND-"
RESPECTIVELY BUTTHEDEFAULTSTARTINGVALUEFORBUFFERSISK"FOREACH,INUXKERNELSANDHIGHER
ANDANDHIGHER CANAUTOMATICALLYTUNETHEACTUALBUFFERSIZESFROMDEFAULTVALUESUPTOALLOWED
MAXIMUMSDURINGRUNTIME)FTHESEPARAMETERSARENOTSET ,INUXKERNEL DEFAULTSTOK"BUFFER
SIZES WHICHMAYBECOMEABOTTLENECKWHENTRANSFERRINGLARGEAMOUNTSOFDATA4HEWRITEBUFFERHAS
BEENCONFIGUREDBIGGERASTHESOURCEDATAWOULDBESENDINGWRITING THELARGEAMOUNTSOFDATA THE
AMOUNTOFDATARECEIVEDWILLBEMUCHSMALLER
4HEOPTIMALBUFFERSIZESAREDEPENDENTONYOURNETWORKROUNDTRIPTIME244 ANDTHENETWORKLINK
MAXIMUMTHROUGHPUTORDESIREDTHROUGHPUT WHICHEVERISLOWER 4HEOPTIMALBUFFERSIZEVALUECANBE
CALCULATEDUSINGTHE"ANDWIDTH
$ELAYPRODUCT"$0 FORMULA ALSOEXPLAINEDINTHEh%NABLING(IGH
0ERFORMANCE$ATA4RANSFERSvDOCUMENTMENTIONEDEARLIERINTHISSECTION.OTETHATCHANGINGTHEKERNEL
PARAMETERSSHOWNEARLIERMEANSAGLOBALCHANGEWITHINTHESERVER ANDIFYOURDATABASESERVERHASALOT
OFPROCESSESRUNNING THEMEMORYUSAGEMAYRISETHANKSTOTHEINCREASEDBUFFERSIZES3OYOUMIGHTNOT
WANTTOINCREASETHESEPARAMETERSUNTILTHEACTUALMIGRATIONHAPPENS
(ERESANEXAMPLEFROMANOTHER/3TYPE/N3OLARISANDNEWERVERSIONS THEDEFAULTSENDAND
RECEIVEBUFFERSIZEIS+"4HISWOULDRESULTINEVENPOORERTHROUGHPUTCOMPAREDTO,INUXSDEFAULT
+"/N3OLARISYOUCANCHECKTHEMAXBUFFERSIZEANDMAX4#0CONGESTIONWINDOWWITHTHEFOLLOWING
COMMANDS
]SSSTecR_cR_N\PgNQdU
#'$&%
]SSSTecR_cR_NRf]SN\Pg
#'$&%
4HISOUTPUTSHOWSTHATTHEMAXIMUMSENDORRECEIVE BUFFERSIZEINTHE3OLARIS/3IS-"4HIS
CANBECHANGEDWITHTHE]SS~bTcCOMMAND BUTYOULLNEEDROOTPRIVILEGESFORTHAT
]SSbTcSTecR_cR_N\PgNQdU# (#"#
]SSbTcSTecR_cR_NRf]SN\Pg# (#"#
4HIS HOWEVERJUSTSETSTHEmaximum4#0BUFFERSIZESANDTHE4#0CONGESTIONWINDOW PER
CONNECTION BUTNOTTHEDEFAULTBUFFERSIZES WHICHANEWCONNECTIONWOULDACTUALLYGET4HEDEFAULT
BUFFERSIZESCANBEREADTHISWAY
]SSSTecR_cR_Ng\XcNWXfPc
#( $!
]SSSTecR_cR_NaTReNWXfPc
#( $!
"OTHTHEDEFAULTSENDBUFFERXMITMEANSTRANSMIT ANDRECEIVEBUFFERSIZESARE+"4OCHANGE
THESEDEFAULTSTO-"EACH WEWOULDRUNTHESECOMMANDS
]SSbTcSTecR_cR_NaTReNWXfPc# (#"#
]SSbTcSTecR_cR_Ng\XcNWXfPc# (#"#


#(!04%2 -)'2!4).'4/%8!$!4!

.OTETHATTHESESETTINGSARENOTPERSISTENT THEYWILLBELOSTAFTERAREBOOT)FYOUWANTTOPERSISTTHESE
SETTINGS YOUSHOULDADDASTARTUPSCRIPTINTORCDORSOMERCLOCALEQUIVALENT WHICHWOULDRE RUNTHE
PREVIOUSCOMMANDS!NOTHEROPTIONWOULDBETOPUTTHESEVALUESTOTcRbhbcT\ BUTSTARTINGFROM
3OLARISTHEUSEOFTHEGLOBALTcRbhbcT\SETTINGSISNOTENCOURAGED9ETANOTHERAPPROACHWOULDBETO
PUTTHEVALUESINTOA3OLARIS3ERVICE-ANAGEMENT&RAMEWORK3-& MANIFESTFILE BUTTHATISOUTOFTHE
SCOPEOFTHISBOOK
)FTHESOURCESERVERISSTILLGOINGTOBEACTIVELYINUSEINPRODUCTION DURINGTHEDATATRANSFER THEN
THINKTWICEBEFOREINCREASINGTHEDEFAULTBUFFERSIZESGLOBALLY7HILEYOUCOULDPOTENTIALLYMAKETHEBULK
DATATRANSFERMUCHFASTERFOREVERYBODYWITHLARGERBUFFERSIZES YOURSERVERMEMORYUSAGEWOULDALSO
GROW4#0BUFFERSLIVEINKERNELMEMORY ANDYOUCOULDRUNINTOMEMORYSHORTAGEISSUES
4HISISWHEREAMORESOPHISTICATEDWAYFORCHANGINGBUFFERSIZESBECOMESVERYUSEFUL3OLARISALLOWS
YOUTOSETTHEDEFAULTSENDANDRECEIVEBUFFERSIZESATrouteLEVEL3O ASSUMINGTHATTHETARGETSERVERISIN
ADIFFERENTSUBNETFROMMOSTOTHERPRODUCTIONSERVERS YOUCANCONFIGURETHEBUFFERSIZESFORASPECIFIC
ROUTEONLY
,ETSCHECKTHECURRENTROUTESFIRST
netstat -rn
A^dcX]VCPQ[T)8?e#
3TbcX]PcX^]6PcTfPh5[PVbATUDbT8]cTaUPRT

STUPd[c (! %'&&!D6 T V
STUPd[c &! % (  D6  
&! % &! % ( $ D !T V 
(! %'&& (! %'&& !'D "T V
!!# (! %'&& !'D T V
!&  !& D7 '![^
,ETSASSUMETHATTHATTHETARGET%XADATASERVERUSESSUBNET ANDONEOFTHESERVERSHAS
)09OUCANUSETHEa^dcTVTcCOMMANDINTHE3OLARISMACHINETOSEEIFTHEREAREANY
EXISTINGROUTE SPECIFICSETTINGS
a^dcTVTc (! %'&& !"
a^dcTc^) (! %'&& !"
STbcX]PcX^]) (! %'&&
\PbZ)!$$!$$!$$
X]cTaUPRT)T V
U[PVb)+D?3>=4-
recvpipe sendpipebbcWaTbWacc\baccePa\bW^_R^d]c\cdTg_XaT
 $
4HEaTRe_X_TANDbT]S_X_TVALUESAREZEROTHEYUSEWHATEVERARETHE/3SYSTEM WIDEDEFAULTS
,ETSCHANGETHEROUTESETTINGSNOWANDCHECKTHESETTINGSWITHa^dcTVTcAGAIN
a^dcTRWP]VT]Tc (! %'&&-recvpipe 4194304 -sendpipe 4194304
RWP]VT]Tc (! %'&&
a^dcTVTc (! %'&& !"
a^dcTc^) (! %'&& !"
STbcX]PcX^]) (! %'&&
\PbZ)!$$!$$!$$
X]cTaUPRT)T V
U[PVb)+D?3>=4-
recvpipe sendpipebbcWaTbWacc\baccePa\bW^_R^d]c\cdTg_XaT
4194304 4194304 $


#(!04%2 -)'2!4).'4/%8!$!4!

.OWALLCONNECTIONSBETWEENTHESOURCESERVERANDTHATSUBNETWOULDREQUESTBOTHSENDAND
RECEIVESOCKETBUFFERSIZE-" BUTCONNECTIONSUSINGOTHERROUTESWOULDCONTINUEUSINGDEFAULTVALUES
.OTETHATTHISROUTECHANGESETTINGISNTPERSISTENTACROSSREBOOTS SOYOUWOULDNEEDTOGETTHE
SYSADMINTOADDTHISCOMMANDINA3OLARISOR3-&SERVICE STARTUPFILE
"EFOREYOUCHANGEANYOFTHESESOCKETBUFFERSETTINGATTHE/3LEVEL THERESSOMEGOODNEWSIFYOUR
SOURCEDATABASEIS/RACLEGORNEWER3TARTINGFROM/RACLEG ITISPOSSIBLETOMAKE/RACLEREQUESTA
CUSTOMBUFFERSIZEITSELFUPTOTHEcR_N\PgNQdULIMIT WHENANEWPROCESSISSTARTED9OUCANDOTHISBY
CHANGINGTHE[XbcT]Ta^aPONTHESERVERSIDESOURCEDATABASE ANDc]b]P\Tb^aPORTHERAW4.3
CONNECTSTRINGINDATABASELINKDEFINITION INTHETARGETDATABASESIDE4HETARGETDATABASEACTSASTHE
CLIENTINTHEDATABASELINKCONNECTIONPOINTINGFROMTARGETTOSOURCE4HISISWELLDOCUMENTEDINTHE
/PTIMIZING0ERFORMANCESECTIONOFTHEOracle Database Net Services Administrator’s Guide SECTION
h#ONFIGURING)/"UFFER3IZEv
!DDITIONALLY YOUCANREDUCETHENUMBEROFSYSCALLS/RACLEUSESFORSENDINGNETWORKDATA BY
INCREASINGTHE/RACLE.ET3ESSION$ATA5NIT3$5 SIZE4HISREQUIRESEITHERACHANGEIN[XbcT]Ta^aPOR
SETTINGTHEDEFAULT3$5SIZEINSERVER SIDEb`[]Tc^aP2EADTHE/RACLEDOCUMENTATIONFORMOREDETAILS
(EREISTHESIMPLESTWAYTOENABLEHIGHER3$5ANDNETWORKBUFFERIN/RACLEVERSIONSGANDNEWER
!DDTHEFOLLOWINGLINETOTHESOURCEDATABASESb`[]Tc^aP
3450D;CNB3DNB8I4,"!&%&
-AKESURETHESOURCEDATABASES[XbcT]Ta^aPCONTAINSSTATEMENTSLIKETHEFOLLOWINGEXAMPLE
;8BC4=4A,
34B2A8?C8>=N;8BC,
34B2A8?C8>=,
033A4BB,?A>C>2>;,8?2:4H,4GC?A>2 $! 
033A4BB,
?A>C>2>;,C2?
7>BC,b^[PaXb 
?>AC, $! 
(SEND_BUF_SIZE=4194304)
(RECV_BUF_SIZE=1048576)



4HETARGET%XADATASERVERSc]b]P\Tb^aPWOULDTHENLOOKLIKETHISEXAMPLE
B>; !,
34B2A8?C8>=,
(SDU=32767)
033A4BB,
?A>C>2>;,C2?
7>BC,b^[PaXb 
?>AC, $! 
(SEND_BUF_SIZE=1048576)
(RECV_BUF_SIZE=4194304)

2>==42CN30C0,
B4AE4A,343820C43


#(!04%2 -)'2!4).'4/%8!$!4!

B4AE824N=0<4,B>; !


7ITHTHESESETTINGS WHENTHEDATABASELINKCONNECTIONISINITIATEDINTHETARGET%XADATA DATABASE
THEc]b]P\Tb^aPCONNECTIONSTRINGADDITIONSWILLMAKETHETARGET/RACLEDATABASEREQUESTALARGER4#0
BUFFERSIZEFORITSCONNECTION4HANKSTOTHE3$5SETTINGINTHETARGETDATABASESc]b]P\Tb^aPANDTHE
SOURCEDATABASESb`[]Tc^aP THETARGETDATABASEWILLNEGOTIATETHEMAXIMUM3$5SIZEPOSSIBLEˆ
BYTES

 .OTE)FYOUHAVEDONE31,
.ETPERFORMANCETUNINGINOLD/RACLEVERSIONS YOUMAYREMEMBERANOTHER
31,
.ETPARAMETERC3D4RANSMISSION$ATA5NITSIZE 4HISPARAMETERISOBSOLETEANDISIGNOREDSTARTINGWITH
/RACLE.ET/RACLE 

)TISPOSSIBLETOASKFORDIFFERENTSIZESFORSENDANDRECEIVEBUFFERS4HISISBECAUSEDURINGTHEDATA
TRANSFERTHEBULKOFDATAWILLMOVEFROMSOURCETOTARGETDIRECTION/NLYSOMEACKNOWLEDGEMENTAND
hFETCHMOREvPACKETSARESENTINTHEOTHERDIRECTION4HATSWHYWEVECONFIGUREDTHESENDBUFFERLARGER
INTHESOURCEDATABASE[XbcT]Ta^aP ASTHESOURCEWILLDOMOSTLYSENDING/NTHETARGETSIDE
c]b]P\Tb^aP WEVECONFIGUREDTHERECEIVEBUFFERLARGERASTHETARGETDATABASEWILLDOMOSTLYRECEIVING
.OTETHATTHESEBUFFERSIZESARESTILLLIMITEDBYTHE/3 LEVELMAXIMUMBUFFERSIZESETTINGS
]TcR^aTa\T\N\Pg AND]TcR^aTf\T\N\PgPARAMETERSINTcRbhbRc[R^]UIN,INUXANDcR_N\PgNQdU
KERNELSETTINGIN3OLARIS 

Parallelizing Data Load


)FYOUCHOOSETHEEXTRACT LOADAPPROACHFORYOURMIGRATION THERESONEMOREBOTTLENECKTOOVERCOMEIN
CASEYOUPLANTOUSE%XADATA(YBRID#OLUMNAR#OMPRESSION%(## 9OUPROBABLYWANTTOUSE%(##
TOSAVETHESTORAGESPACEANDALSOGETBETTERDATASCANNINGPERFORMANCECOMPRESSEDDATAMEANSFEWER
BYTESTOREADFROMDISK .OTETHATFASTERSCANNINGMAYNOTMAKEYOURQUERIESSIGNIFICANTLYFASTERIFMOST
OFYOURQUERYEXECUTIONTIMEISSPENTINOPERATIONSOTHERTHANDATAACCESS LIKESORTING GROUPING JOINING
ANDANYEXPENSIVEFUNCTIONSCALLEDEITHERINTHEB4;42CLISTORFILTERCONDITIONS(OWEVER %(##
COMPRESSIONREQUIRESMANYMORE#05CYCLESTHANTHECLASSICBLOCK LEVELDE DUPLICATION ASTHEFINAL
COMPRESSIONIN%(##ISPERFORMEDWITHHEAVYALGORITHMS,:/ :,IBOR":IP DEPENDINGONTHE
COMPRESSIONLEVEL !LSO WHILEdeCOMPRESSIONCANHAPPENEITHERINTHESTORAGECELLORDATABASELAYER
THECOMPRESSIONOFDATACANHAPPENONLYINTHEDATABASELAYER3O IFYOULOADLOTSOFDATAINTOA%(##
COMPRESSEDTABLEUSINGASINGLESESSION YOUWILLBEBOTTLENECKEDBYTHESINGLE#05YOUREUSING
4HEREFOREYOULLNEEDTOPARALLELIZETHEDATALOADTOTAKEADVANTAGEOFALLTHEDATABASELAYERS#05STOGET
THEDATALOADDONEFASTER
3OUNDSSIMPLEˆWELLJUSTADDA?0A0;;4;FLAGTOTHETARGETTABLEORA?0A0;;4;HINTINTOTHEQUERY
ANDWESHOULDBEALLSET RIGHT5NFORTUNATELYTHINGSAREMORECOMPLEXTHANTHAT4HEREAREACOUPLEOF
ISSUESTOSOLVEONEOFTHEMISEASY BUTTHEOTHERONEREQUIRESSOMEEFFORT


#(!04%2 -)'2!4).'4/%8!$!4!

)SSUEˆ-AKING3URETHE$ATALoad)S0ERFORMEDIN0ARALLEL
4HEPROBLEMHEREISTHATWHILEPARALLEL1UERYAND$$,AREENABLEDBYDEFAULTFORANYSESSION THE
PARALLEL$-,ISNOT4HEREFORE PARALLEL#4!3STATEMENTSWILLRUNINPARALLELFROMENDTOEND BUTTHE
LOADINGPARTOFPARALLEL)!3STATEMENTSWILLBEDONEINSERIAL4HEQUERYPARTB4;42C WILLBEPERFORMEDIN
PARALLEL ASTHESLAVESPASSTHEDATATOTHESINGLE1UERY#OORDINATORANDTHE1#ISTHESINGLEPROCESS
WHICHISDOINGTHEDATALOADINGINCLUDINGTHE#05 INTENSIVECOMPRESSION 
4HISPROBLEMISSIMPLETOFIX THOUGHYOULLJUSTNEEDTOENABLEPARALLEL$-,INYOURSESSION,ETS
CHECKTHEPARALLELEXECUTIONFLAGSINOURSESSIONFIRST
B@;-B4;42C_`NbcPcdb_S\[NbcPcdb_SS[NbcPcdb_S\[NT]PQ[TS
!-5A><ebTbbX^]F74A4bXS,BHBN2>=C4GCdbTaT]ebXS*

?@NBC0CDB?3<;NBC0CDB?33;NBC0CDB?3<;N4=01;43

4=01;43DISABLED4=01;43NO
4HEPARALLEL$-,ISDISABLEDINTHECURRENTSESSION4HE?3<;N4=01;43COLUMNISTHEREFORBACKWARD
COMPATIBILITY,ETSENABLE0$-,
B@;-0;C4AB4BB8>=4=01;4?0A0;;4;3<;*

BTbbX^]P[cTaTS

B@;-B4;42C_`NbcPcdb_S\[NbcPcdb_SS[NbcPcdb_S\[NT]PQ[TS
!-5A><ebTbbX^]F74A4bXS,BHBN2>=C4GCdbTaT]ebXS*

?@NBC0CDB?3<;NBC0CDB?33;NBC0CDB?3<;N4=01;43

4=01;434=01;434=01;43H4B
!FTERENABLINGPARALLEL$-, THE8=B4AC0BB4;42CSAREABLETOUSEPARALLELSLAVESFORTHELOADING
PARTOFTHE)!3STATEMENTS
(ERESONEIMPORTANTTHINGTOWATCHOUTFOR REGARDINGPARALLELINSERTS)NTHENEXTEXAMPLEWEHAVE
STARTEDANEWSESSIONTHUSTHE0$-,ISDISABLEDINIT ANDWEREISSUINGAPARALLELINSERTSTATEMENT7E
HAVEADDEDAhSTATEMENT LEVELv?0A0;;4;HINTINTOBOTHINSERTANDQUERYBLOCKS ANDTHEEXPLAINED
EXECUTIONPLANOUTPUTTHE31<BNG?;0=PACKAGE SHOWSUSTHATPARALLELISMISUSED(OWEVER THIS
EXECUTIONPLANWOULDBEVERYSLOWLOADINGINTOACOMPRESSEDTABLE ASTHEPARALLELISMISENABLEDONLYFOR
THEQUERYB4;42C PART NOTTHEDATALOADINGPART
0AYATTENTIONTOWHERETHEACTUALDATALOADINGHAPPENSˆINTHE;>030BB4;42COPERATORINTHE
EXECUTIONPLANTREE4HIS;>030BB4;42C HOWEVER RESIDESABOVETHE?G2>>A38=0C>AROWSOURCETHISIS
THEROWSOURCETHATCANPULLROWSANDOTHERINFORMATIONFROMSLAVESINTO1# !LSO INLINEYOUSEETHE
?-BOPERATOR WHICHMEANSTHATANYROWSPASSEDUPTHEEXECUTIONPLANTREEFROMLINEARERECEIVEDBY
ASERIALPROCESS1# 


#(!04%2 -)'2!4).'4/%8!$!4!

B@;-8=B4AC0??4=3?0A0;;4; %8=C>c!B4;42C?0A0;;4; %5A><c 




k8Sk>_TaPcX^]k=P\TkA^fbkC@k8=>DCk?@3XbcaXQk

kk8=B4ACBC0C4<4=Ckk':kkkk
k kLOAD AS SELECTkC!kkkkk
k!k?G2>>A38=0C>Akkkkkk
k"k?GB4=3@2A0=3><k)C@ k':k@ k?-Bk@2A0=3k
k#k?G1;>2:8C4A0C>Akk':k@ k?2F2kk
k$kC01;40224BBBC>A0645D;;kC k':k@ k?2F?kk


=^cT

3TVaTT^U?PaP[[T[Xb\Xb %QTRPdbT^UWX]c

%a^fbbT[TRcTS
4HEMESSAGEh$EGREEOF0ARALLELISMISBECAUSEOFHINTvMEANSTHATAREQUESTFORRUNNINGSOME
PARTOFTHEQUERYWITHPARALLELDEGREEWASUNDERSTOODBY/RACLEANDTHISDEGREEWASUSEDIN#"/
CALCULATIONS WHENOPTIMIZINGTHEEXECUTIONPLAN(OWEVER ASEXPLAINEDABOVE THISDOESNTMEANTHAT
THISPARALLELISMWASUSEDTHROUGHOUTTHEWHOLEEXECUTIONPLAN)TSIMPORTANTTOCHECKWHETHERTHE
ACTUALDATALOADINGWORK;>030BB4;42C ISDONEBYTHESINGLE1#ORBY08SLAVES
,ETSSEEWHATHAPPENSWHENWEENABLEPARALLEL$-,
B@;-0;C4AB4BB8>=4=01;4?0A0;;4;3<;*

BTbbX^]P[cTaTS

B@;-8=B4AC0??4=3?0A0;;4; %8=C>c!B4;42C?0A0;;4; %5A><c 


k8Sk>_TaPcX^]k=P\TkA^fbkC@k8=>DCk?@3XbcaXQk

kk8=B4ACBC0C4<4=Ckk':kkkk
k k?G2>>A38=0C>Akkkkkk
k!k?GB4=3@2A0=3><k)C@ k':k@ k?-Bk@2A0=3k
k"kLOAD AS SELECTkC!kk@ k?2F?kk
k#k?G1;>2:8C4A0C>Akk':k@ k?2F2kk
k$kC01;40224BBBC>A0645D;;kC k':k@ k?2F?kk


=^cT

3TVaTT^U?PaP[[T[Xb\Xb %QTRPdbT^UWX]c
.OW COMPARETHISPLANTOTHEPREVIOUSONE4HEYAREDIFFERENT)NTHISCASETHE;>030BB4;42C
OPERATORHASMOVEDDOWNTHEEXECUTIONPLANTREE ITSNOTAPARENTOF?G2>>A38=0C>AANYMORE(OWYOU
CANREADTHISSIMPLEEXECUTIONPLANISTHATTHEC01;40224BBBC>A0645D;;SENDSROWSTO?G1;>2:
8C4A0C>AWHICHISTHEROW SOURCEWHOACTUALLYCALLSTHEC01;40224BBANDPASSESITTHENEXTRANGEOF
DATABLOCKSTOREAD 08",/#+)4%2!4/2THENSENDSROWSBACKTO;>030BB4;42C WHICHTHEN


#(!04%2 -)'2!4).'4/%8!$!4!

IMMEDIATELYLOADSTHEROWSTOTHEINSERTEDTABLE WITHOUTPASSINGTHEMTO1#ATALL!LLTHEB4;42CAND
;>03WORKISDONEWITHINTHESAMESLAVE THERESNOINTERPROCESSCOMMUNICATIONNEEDED(OWDOWE
KNOWTHAT)TISBECAUSETHE8=>DCCOLUMNSAYS?2F?0ARALLELOPERATION #OMBINED7ITH0ARENT FOR
BOTHOPERATIONS ANDTHEC@VALUEFORBOTHOFTHEOPERATIONSISTHESAME@  4HISINDICATESTHAT
PARALLELEXECUTIONSLAVESDOPERFORMALLTHESESTEPS UNDERTHESAME4ABLE1UEUENODE WITHOUTPASSING
THEDATAAROUNDBETWEENSLAVESETS
4HEPROPEREXECUTIONPLANWHENREADINGDATAFROMADATABASELINKLOOKSLIKETHIS
B@;-8=B4AC0??4=3?0A0;;4; %8=C>c\_
!-B4;42C?0A0;;4; %5A><SQPNb^daRT/baRSQ


k8Sk>_TaPcX^]k=P\TkA^fbkC@8]bk8=>DCk?@3XbcaXQk

kk8=B4ACBC0C4<4=Ckk! :kkkk
k k?G2>>A38=0C>Akkkkkk
k!k?GB4=3@2A0=3><k)C@  k! :k@  k?-Bk@2A0=3k
k"kLOAD AS SELECTkC<?kk@  k?2F?kk
k#k?GA4248E4kk! :k@  k?2F?kk
k$k?GB4=3A>D=3A>18=k)C@ k! :kkB-?kA=3A>18=k
k%kA4<>C4k310NB>DA24k! :kBA231kA-Bkk


AT\^cTB@;8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


%B4;42C>?0@D4NCA0=B5>A<B70A43 %B70A43 %
>F=4A=0<4CH?4;8=4C4GC
5A><310NB>DA24310NB>DA24PRRTbbX]VBA231

=^cT

3TVaTT^U?PaP[[T[Xb\Xb %QTRPdbT^UWX]c
)NTHISEXAMPLE BECAUSEWEENABLEDPARALLEL$-,ATTHESESSIONLEVEL THEDATALOADINGISDONEIN
PARALLELTHE;>030BB4;42CISAPARALLELOPERATIONTHE8=>DCCOLUMNSHOWS?2F? EXECUTEDWITHIN08
SLAVESANDNOTTHE1#
.OTETHAT31<BNG?;0=SHOWSTHE31,STATEMENTFORSENDINGTOTHEREMOTESERVEROVERTHEDATABASE
LINKINTHE2EMOTE31,)NFORMATIONSECTIONABOVE )NSTEADOFSENDING?0A0;;4;HINTSTOTHEREMOTE
SERVER ANUNDOCUMENTEDB70A43HINTISSENT WHICHISANALIASOFTHE?0A0;;4;HINT
4HISWASTHEEASIERISSUETOFIX)FYOURDATAVOLUMESAREREALLYBIG THENTHEREISANOTHERPROBLEMTO
SOLVEWITHDATABASELINKS ANDITSEXPLAINEDBELOW

)SSUEˆ!CHIEVING&ULLY0ARALLEL.ETWORK$ATA4RANSFER
!NOTHERISSUEWITHDATABASELINKSANDPARALLELEXECUTIONISTHATEVENIFYOUMANAGETORUNPARALLEL
EXECUTIONONBOTHENDSOFTHELINK ITISTHEQUERYCOORDINATORSTHATACTUALLYOPENTHEDATABASELINKAND
DOTHENETWORKTRANSFER4HE08SLAVESDONTSOMEHOWMAGICALLYOPENTHEIROWNDATABASELINK
CONNECTIONSTOTHEOTHERDATABASE ALLTRAFFICFLOWSTHROUGHTHESINGLEQUERYCOORDINATOROFAQUERY3O
YOUCANRUNYOUR#4!3)!3STATEMENTWITHHUNDREDSOF08SLAVESˆBUTYOULLSTILLHAVEONLYASINGLE
DATABASELINKCONNECTIONDOINGNETWORKTRANSFER7HILEYOUCANOPTIMIZETHENETWORKTHROUGHPUTBY


#(!04%2 -)'2!4).'4/%8!$!4!

INCREASINGTHE4#0BUFFERAND3$5SIZES THERESSTILLALIMITOFHOWMUCHDATATHE1#PROCESSONA
SINGLE#05 ISABLETOINGEST
&IGURE ILLUSTRATESHOWTHEDATAFLOWSTHROUGHASINGLEQUERYCOORDINATORSDESPITEALLTHEPARALLEL
EXECUTION

PX PX

PX PX
QC QC
Source DB Exadata
PX PX

PX PX

Figure 13-1. Data flow is single-threaded through query coordinators.

)NADDITIONTOTHESINGLE1#DATABASELINKBOTTLENECK SENDINGDATAMESSAGES BETWEENTHE1#AND


08SLAVESTAKESSOMEEXTRA#05TIME4HISISWHEREFINE TUNINGTHE_PaP[[T[NTgTRdcX^]N\TbbPVTNbXiT
PARAMETERHASHELPEDALITTLEINTHEPAST BUTSTARTINGFROM/RACLEITSVALUEDEFAULTSTO+"ANYWAY
SOTHEREPROBABLYWONTBEANYSIGNIFICANTBENEFITINADJUSTINGTHISFURTHER!NDIFYOUAREDOINGPARALLEL
DATALOADSACROSSMULTIPLENODESINA2!#INSTANCE THEREWILLSTILLBEASINGLE1#PERQUERYWITHASINGLE
NETWORKCONNECTION3O IF1#RUNSINNODEANDTHEPARALLELSLAVESINNODE THE1#WILLHAVETOSEND
THEDATAITFETCHESACROSSTHEDBLINKTOTHE08SLAVESOVERTHE2!#INTERCONNECTAS08MESSAGES
3OIFYOUCHOOSETOUSEDATABASELINKSWITHPARALLELSLAVES YOUSHOULDRUNmultiple separate queries
INDIFFERENTINSTANCESANDFORCETHE08SLAVESTOBEINTHESAMEINSTANCEASTHE1# USINGTHEFOLLOWING
COMMAND
B@;-0;C4AB4BB8>=B4C_PaP[[T[NU^aRTN[^RP[,CAD4*

BTbbX^]P[cTaTS
4HATWAYYOUWILLAVOIDATLEASTTHE2!#INTER INSTANCETRAFFICANDREMOTEMESSAGING#05OVERHEAD
BUTTHE1#TO08SLAVEINTRA INSTANCEMESSAGINGROWDISTRIBUTION OVERHEADSTILLREMAINSHERE
.OW DESPITEALLTHESEOPTIMIZATIONSANDMIGRATINGDIFFERENTLARGETABLESUSINGPARALLELQUERIESIN
DIFFERENTINSTANCES YOUMAYSTILLFINDTHATASINGLEDATABASELINKANDQUERYCOORDINATOR DOESNOT
PROVIDEENOUGHTHROUGHPUTTOMIGRATETHELARGESTFACTTABLESOFYOURDATABASEWITHINYOURDOWNTIME!S
STATEDEARLIER THEDATABASELINKSAPPROACHISBESTUSEDFORTHEFEWHUGETABLESINYOURDATABASE ANDALL
THERESTCANBEEXPORTEDIMPORTEDWITH$ATA0UMP0ERHAPSYOUONLYHAVECOUPLEOFHUGEFACTTABLES
BUTIFYOUHAVEEIGHT2!#INSTANCESINTHEFULLRACK%XADATACLUSTER HOWCOULDYOUMAKEALLTHEINSTANCES
TRANSFERANDLOADDATAEFFICIENTLY9OUWOULDWANTTOHAVEATLEASTONEPARALLELQUERYWITHITSQUERY
COORDINATORANDDATABASELINKPERINSTANCEANDLIKELYMULTIPLESUCHQUERIESIFASINGLE1#PROCESSCANT
PULLANDDISTRIBUTEDATAFASTENOUGH
4HEOBVIOUSSOLUTIONHEREISTOTAKEADVANTAGEOFPARTITIONING ASYOURLARGEMULTI TERABYTETABLES
ARELIKELYPARTITIONEDINTHESOURCEDATABASEANYWAY3OYOUCANCOPYTHEHUGETABLEINMULTIPLESEPARATE
PARTS(OWEVERTHEREAREACOUPLEOFPROBLEMSASSOCIATEDWITHTHISAPPROACH
4HEFIRSTISSUEISTHATWHENPERFORMINGTHEUSUALDIRECTPATHLOADINSERTWHICHISNEEDEDFOR(YBRID
#OLUMNAR#OMPRESSIONANDFOR=>;>668=6LOADS YOURSESSIONWOULDLOCKTHETABLEITINSERTSINTO
EXCLUSIVELYFORITSELF.OBODYELSECANMODIFYNORINSERTINTOTHATTABLEWHILETHEREISANUNCOMMITTED


#(!04%2 -)'2!4).'4/%8!$!4!

DIRECTPATHLOADTRANSACTIONACTIVEAGAINSTTHATTABLE.OTETHATOTHERSCANSTILLREADTHATTABLE ASB4;42C
STATEMENTSDONTTAKEENQUEUELOCKSONTABLESTHEYSELECTFROM
3O HOWTOWORKAROUNDTHISCONCURRENCYISSUE,UCKILY/RACLE8=B4ACSYNTAXALLOWSYOUTOSPECIFY
THEEXACTPARTITIONORSUBPARTITIONWHEREYOUWANTTOINSERT BYITSNAME
8=B4AC0??4=3
8=C>
UPRcPARTITION ( Y20080101 )
B4;42C

5A><
UPRc/b^daRTSQ
F74A4
^aSTaNSPcT-,C>N30C4!'  HHHH<<33
0=3^aSTaNSPcT+C>N30C4!' !HHHH<<33
7ITHTHISSYNTAX THEDIRECT PATHINSERTSTATEMENTWOULDLOCKONLYTHESPECIFIEDPARTITION ANDOTHER
SESSIONSCOULDFREELYINSERTINTOOTHERPARTITIONSOFTHESAMETABLE/RACLEWOULDSTILLPERFORMPARTITION
KEYCHECKING TOENSURETHATDATAWOULDNTBELOADEDINTOWRONGPARTITIONS)FYOUATTEMPTTOINSERTAN
INVALIDPARTITIONKEYVALUEINTOAPARTITION /RACLERETURNSTHEERRORMESSAGE
>A0 ## )X]bTacTS_PacXcX^]ZThXb^dcbXSTb_TRXUXTS_PacXcX^]
.OTETHATWEDIDNOTUSETHE?0AC8C8>=partition_nameSYNTAXINTHEB4;42CPARTOFTHEQUERY
4HEPROBLEMHEREISTHATTHEQUERYGENERATORUNPARSER WHICHCOMPOSESTHE31,STATEMENTTOBESENT
OVERTHEDATABASELINK DOESNOTSUPPORTTHE?0AC8C8>=SYNTAX)FYOUTRYIT YOUWILLGETANERROR
>A0 # )_PacXcX^]TgcT]STScPQ[T]P\TRP]]^caTUTac^PaT\^cT^QYTRc
4HATSWHYWEARERELYINGONTHEpartition pruningONTHESOURCEDATABASESIDEˆWEJUSTWRITETHE
FILTERPREDICATESINTHEF74A4CONDITIONSOTHATONLYTHEDATAINTHEPARTITIONOFINTERESTWOULDBE
RETURNED)NTHEEXAMPLEJUSTSHOWN THESOURCETABLEISRANGE PARTITIONEDBYORDER?DATECOLUMNAND
THANKSTOTHEF74A4CLAUSEPASSEDTOTHESOURCEDATABASE THEPARTITIONPRUNINGOPTIMIZATIONINTHAT
DATABASEWILLONLYSCANTHROUGHTHEREQUIREDPARTITIONANDNOTTHEWHOLETABLE
.OTETHATWEARENOTUSINGTHE14CF44=CLAUSEINTHISEXAMPLE ASITINCLUDESBOTHVALUESINTHERANGE
SPECIFIEDINTHEF74A4CLAUSE WHEREAS/RACLE0ARTITIONINGOPTIONShVALUESLESSTHANvCLAUSEEXCLUDESTHE
VALUESPECIFIEDIN$$,FROMTHEPARTITIONSVALUERANGE
)TISALSOPOSSIBLETOUSESUBPARTITION SCOPEINSERTSYNTAX TOLOADINTOASINGLESUBPARTITIONTHUS
LOCKINGONLYASINGLESUBPARTITIONATTIME 4HISISUSEFULWHENEVENASINGLEPARTITIONOFDATAISTOOLARGE
TOBELOADEDFASTENOUGHVIAASINGLEPROCESSDATABASELINK ALLOWINGYOUTOSPLITYOURDATAINTOEVEN
SMALLERPIECES
8=B4AC0??4=3
8=C>
UPRcSUBPARTITION ( Y20080101_SP01 )
B4;42C

5A><
UPRc/b^daRTSQ
F74A4
^aSTaNSPcT-,C>N30C4!'  HHHH<<33
0=3^aSTaNSPcT+C>N30C4!' !HHHH<<33
0=3ORA_HASH(customer_id, 63, 0) + 1 = 1


#(!04%2 -)'2!4).'4/%8!$!4!

)NTHISEXAMPLETHESOURCETABLEISSTILLRANGE PARTITIONEDBYORDER?DATE BUTITISHASHPARTITIONEDTO


SUBPARTITIONS!SITSNOTPOSSIBLETOSENDTHEBD1?0AC8C8>=CLAUSETHROUGHTHEDATABASELINK EITHER
WEHAVEUSEDTHE>A0N70B7FUNCTIONTOFETCHONLYTHEROWSBELONGINGTOTHEFIRSTHASHSUBPARTITIONOF
TOTALSUBPARTITIONS4HE>A0N70B7B@;FUNCTIONUSESTHESAMEZVVWPbWFUNCTIONINTERNALLY WHICHIS
USEDFORDISTRIBUTINGROWSTOHASHPARTITIONSANDSUBPARTITIONS)FWEHADSUBPARTITIONS WEWOULD
CHANGETHE%"INTHE31,SYNTAXTO !&]~ 
!SWEWOULDNEEDTOTRANSFERALLTHESUBPARTITIONS WEWOULDCOPYOTHERSUBPARTITIONSINPARALLEL
DEPENDINGONTHESERVERLOADOFCOURSE BYRUNNINGSLIGHTVARIATIONSOFTHEABOVEQUERYANDCHANGING
ONLYTHETARGETSUBPARTITIONNAMEANDTHE>A0N70B7OUTPUTTOCORRESPONDINGSUBPARTITIONPOSITION
8=B4AC0??4=3
8=C>
UPRcBD1?0AC8C8>=H!'  NSP02
B4;42C

5A><
UPRc/b^daRTSQ
F74A4
^aSTaNSPcT-,C>N30C4!'  HHHH<<33
0=3^aSTaNSPcT+C>N30C4!' !HHHH<<33
0=3>A0N70B7Rdbc^\TaNXS%" ,2
!NDSOYOULLNEEDTORUNATOTALOFVERSIONSOFTHISSCRIPT
8=C>UPRcSUBPARTITION ( Y20080101_SP03 )F74A4>A0N70B7Rdbc^\TaNXS%" ,3

8=C>UPRcSUBPARTITION ( Y20080101_SP04 )F74A4>A0N70B7Rdbc^\TaNXS%" ,4


8=C>UPRcSUBPARTITION ( Y20080101_SP64 )F74A4>A0N70B7Rdbc^\TaNXS%" ,64

)FYOURTABLESHASHSUBPARTITIONNUMBERINGSCHEMEINTHESUBPARTITIONNAMEDOESNTCORRESPONDTO
THEREALSUBPARTITIONPOSITIONTHE>A0N70B7RETURNVALUE THENYOULLNEEDTOQUERY
310NC01NBD1?0AC8C8>=BANDFINDTHECORRECTSUBPARTITION?NAMEUSINGTHEBD1?0AC8C8>=N?>B8C8>=
COLUMN
4HERESONEMORECATCHTHOUGH7HILETHEORDER?DATEPREDICATEWILLBEUSEDFORPARTITIONPRUNINGIN
THESOURCEDATABASE THE>A0N70B7FUNCTIONWONTˆTHEQUERYEXECUTIONENGINEJUSTDOESNTKNOWHOWTO
USETHE>A0N70B7PREDICATEFORSUBPARTITIONPRUNING)NOTHERWORDS THEABOVEQUERYWILLREADALL
SUBPARTITIONSOFASPECIFIEDRANGEPARTITION THENTHE>A0N70B7FUNCTIONWILLBEAPPLIEDTOEVERYROW
FETCHEDANDTHEROWSWITHNON MATCHING>A0N70B7RESULTWILLBETHROWNAWAY3O IFYOUHAVE
SESSIONS EACHTRYINGTOREADONESUBPARTITIONWITHTHEABOVEMETHOD EACHOFTHEMWOULDENDUP
SCANNINGTHROUGHALLSUBPARTITIONSUNDERTHISRANGEPARTITION THISMEANS¾SUBPARTITION
SCANS
7EHAVEWORKEDAROUNDTHISPROBLEMBYCREATINGVIEWSONTHESOURCETABLEINTHESOURCEDATABASE
7EWOULDCREATEAVIEWFOREACHSUBPARTITION USINGASCRIPT OFCOURSE4HEVIEWNAMESWOULDFOLLOWA
NAMINGCONVENTIONSUCHAS6?&!#4?9?30 ANDEACHVIEWWOULDCONTAINTHEBD1?0AC8C8>=
ghiCLAUSEINTHEVIEWSB4;42CSTATEMENT2EMEMBER THESEVIEWSWOULDBECREATEDINTHESOURCE
DATABASE SOTHEREWONTBEANISSUEWITHDATABASELINKSSYNTAXRESTRICTION!NDWHENITSTIMETO
MIGRATE THEINSERT INTO SUBPARTITIONSTATEMENTSEXECUTEDINTHETARGET%XADATADATABASEWOULD
REFERENCEAPPROPRIATEVIEWSDEPENDINGONWHICHSUBPARTITIONISREQUIRED4HISMEANSTHATSOMELARGE
FACTTABLESWOULDHAVETHOUSANDSOFVIEWSONTHEM4HEVIEWSMAYBEINASEPARATESCHEMA ASLONGAS


#(!04%2 -)'2!4).'4/%8!$!4!

THESCHEMAOWNERHASREADRIGHTSONTHESOURCETABLE!LSO YOUPROBABLYDONTHAVETOUSETHISTRICKON
ALLPARTITIONSOFTHETABLE ASIFYOURLARGESTTABLESARETIME PARTITIONEDBYSOMEORDER?DATEORSIMILAR
THENYOUCANPROBABLYTRANSFERMUCHOFTHEOLDPARTITIONSBEFORETHEDOWNTIMEWINDOW SOYOUWONT
NEEDTOUSESUCHEXTREMEMEASURES
4HETECHNIQUESJUSTDISCUSSEDMAYSEEMQUITECOMPLICATEDANDTIMECONSUMING BUTIFYOUHAVE
TENSORHUNDREDSOFTERABYTESOFRAWDATATOEXTRACT TRANSFER ANDCOMPRESS ANDALLTHISHASTOHAPPEN
VERYFAST SUCHMEASURESAREGOINGTOBEUSEFUL7EHAVEUSEDTHESETECHNIQUESFORMIGRATING6,$"DATA
WAREHOUSESUPTO4"INSIZECOMPRESSEDWITHOLD FASHIONEDBLOCKCOMPRESSION WITHRAWDATASETS
EXCEEDINGAQUARTEROFAPETABYTE(OWEVER WENEEDTOOPTIMIZEOUROWNTIMETOO SOREADTHENEXT
SECTIONABOUTWHENITISFEASIBLETOGOWITHDATABASELINKSANDWHENITISNOT

When to Use CTAS or IAS over Database Links


)FYOUHAVEALLOCATEDPLENTYOFDOWNTIME ANDTHEDATABASETOBEMIGRATEDISNTTOOBIG ANDYOUDONT
WANTTODOMAJORREORGANIZATIONOFYOURDATABASESCHEMAS THENYOUPROBABLYDONTHAVETOUSEDATA
LOADOVERDATABASELINKS!FULL$ATA0UMPEXPORTIMPORTISMUCHEASIERIFYOUHAVETHEDOWNTIMEAND
DISKSPACEAVAILABLEEVERYTHINGCANBEEXPORTEDANDIMPORTEDWITHASIMPLECOMMAND
(OWEVER WHENYOUAREMIGRATING6,$"SWITHLOWDOWNTIMEWINDOWS DATABASELINKSCANPROVIDE
ONEPERFORMANCEADVANTAGEˆWITHDATABASELINKSYOUDONTHAVETODUMPTHEDATATOADISKFILEJUSTTO
COPYITOVERANDRELOADITBACKINTHEOTHERSERVER!LSO YOUDONTNEEDANYINTERMEDIATEDISKSPACEFOR
KEEPINGDUMPSWHENUSINGDATABASELINKS7ITHDATABASELINKSYOUREADTHEDATAFROMDISKONCEINTHE
SOURCEDATABASE TRANSFERITOVERTHEWIRE ANDWRITEITTODISKONCEINTHETARGET
4RANSFERRINGLOTSOFSMALLTABLESMAYACTUALLYBEFASTERWITHTHE%XPORT)MPORTOR$ATA0UMP
METHOD!LSO THEOTHERSCHEMAOBJECTSVIEWS SEQUENCES 0,31, ANDSOON HAVETOBESOMEHOW
MIGRATEDANYWAY3OITSAGOODIDEATOTRANSFERONLYTHELARGETABLESOVERDATABASELINKSANDUSE
%XPORT)MPORTOR$ATA0UMPFORMIGRATINGEVERYTHINGELSE!NDBYTHEWAY $ATA0UMPHASANICE
4G2;D34)PARAMETERYOUCANUSEFOREXCLUDINGTHELARGEMANUALLYTRANSFERREDTABLESFROMANEXPORTJOB

What to Watch Out For When Copying Tables over Database Links
#OPYINGTABLESDURINGBUSINESSHOURSCANIMPACTPERFORMANCEONTHESOURCEDATABASE)TCANALSOPUTA
LOADONTHENETWORK SOMETIMESEVENWHENDEDICATEDNETWORKHARDWAREISINSTALLEDFORREDUCINGTHE
IMPACTOFHIGH THROUGHPUTDATATRANSFERDURINGPRODUCTIONTIME
4ABLE SHOWSASUMMARYOFTHECAPABILITIESOFEACHOFTHESE%XTRACTAND,OADMETHODS

Table 13-3. When to Use Extract and Load

Requirement Data Pump Export/Import Database Link


3CHEMA#HANGES 9ES 9ES 9ES

4ABLE)NDEX3TORAGE#HANGES 9ES 9ES9ES

4ABLESPACE#HANGES 9ES.O 9ES



#(!04%2 -)'2!4).'4/%8!$!4!

Requirement Data Pump Export/Import Database Link


$ATA)S%NCRYPTED4$% 9ES.O 9ES

$ATABASE6ERSIONI .O 9ES 9ES

(YBRID#OLUMNAR#OMPRESSION 9ES .O 9ES

$IRECTPATHLOAD 9ES .O 9ES


1
It is possible to change the object creation DDL by running imp with show=y option to extract the DDL
statements, modifying the script and creating the objects manually in Sqlplus. Data Pump has made such
tasks much easier thanks to its TRANSFORM parameter.
2
Oracle doesn’t support SQL*Net connectivity between Oracle 10g (and newer) and pre-8.1.7.4 database
versions. If you attempt such connection, you will receive an error message ORA-03134: Connections to this
server version are no longer supported.

2EPLICATION "ASED-IGRATION
'ENERALLYSPEAKING replication-basedMIGRATIONISDONEBYCREATINGACOPYOFTHESOURCEDATABASEAND
THENKEEPINGITINSYNCBYAPPLYINGCHANGESTOTHECOPY ORhTARGETDATABASEv4HEREARETWOVERY
DIFFERENTMETHODSFORAPPLYINGTHESECHANGESPhysical replicationSHIPSARCHIVEDREDOLOGSTOTHETARGET
WHEREITISAPPLIEDTOTHEDATABASEUSINGITSINTERNALRECOVERYMECHANISMS4HISISCALLEDh2EDO!PPLYv
7ELLTALKMOREABOUTHOWTHATWORKSINTHEh0HYSICAL-IGRATIONvSECTIONLATERINTHISCHAPTER7ITH
logical replication,CHANGESTOTHESOURCEDATABASEAREEXTRACTEDAS31,STATEMENTSANDEXECUTEDONTHE
TARGETDATABASE4HETECHNIQUEOFUSING31,STATEMENTSTOREPLICATECHANGESFROMSOURCETOTARGETIS
CALLEDSQL Apply"ACKINTHE SWHEN/RACLEANDWEREALLTHERAGE ITWASCOMMONPRACTICEAMONG
$"!STOUSEsnapshotsTOKEEPTABLESINAREMOTEDATABASEINSYNCWITHMASTERTABLESINTHESOURCE
DATABASE4HESESNAPSHOTSUSEDTRIGGERSTOCAPTURECHANGESTOTHEMASTERTABLEANDEXECUTETHEMONTHE
TARGET3NAPSHOTLOGSWEREUSEDTOQUEUEUPTHESECHANGESWHENTHETARGETTABLESWEREUNAVAILABLESO
THEYCOULDBEEXECUTEDATALATERTIME)TWASASIMPLEFORMOFLOGICALREPLICATION/FCOURSE THISWASFINE
FORAHANDFULOFTABLESBUTITBECAMEUNWIELDYWHENREPLICATINGGROUPSOFTABLESORENTIRESCHEMAS)N
LATERRELEASES/RACLEWRAPPEDSOMEMANAGEABILITYFEATURESAROUNDTHISTECHNOLOGYANDBRANDEDIT
v3IMPLE2EPLICATIONv%VENBACKINTHEEARLYDAYSOFDATABASEREPLICATIONTHEREWERECOMPANIESTHAT
FIGUREDOUTHOWTOMINEDATABASEREDOLOGSTOCAPTURE$-,MOREEFFICIENTLYANDLESSINTRUSIVELYTHAN
TRIGGERSCOULD4ODAYTHEREARESEVERALPRODUCTSONTHEMARKETTHATDOAVERYGOODJOBOFUSINGTHIShLOG
MININGvTECHNIQUETOREPLICATEDATABASES4HEADVANTAGELOGICALREPLICATIONHASOVERPHYSICALREPLICATION
ISINITSFLEXIBILITY&OREXAMPLE LOGICALREPLICATIONALLOWSTHETARGETTOBEAVAILABLEFORREADACCESS)N
SOMECASESITALSOALLOWSYOUTOIMPLEMENTTABLECOMPRESSIONANDPARTITIONINGINTHETARGETDATABASE)N
THENEXTFEWSECTIONSWELLDISCUSSSEVERALTOOLSTHATSUPPORTREPLICATION BASEDMIGRATION

Oracle Streams and Golden Gate


/RACLE3TREAMSISINCLUDEDINTHEBASE2$"-3PRODUCTANDWASINTRODUCEDASANEWFEATUREINVERSION
I'OLDEN'ATEISAPRODUCTRECENTLYACQUIREDBY/RACLE"OTHPRODUCTSREPLICATEDATAINMUCHTHESAME
WAY!COPYOFTHESOURCEDATABASEISCREATEDTHETARGET ANDSTARTEDUP4HISMAYBEDONEFROMAFULL
DATABASEBACKUPUSING2ECOVERY-ANAGERORBYUSING$ATA0UMPTOINSTANTIATEB4;42CSCHEMAS4HEN
CHANGESINTHESOURCEDATABASEAREEXTRACTED ORMINED FROMTHEREDOLOGS4HECHANGESARETHEN


#(!04%2 -)'2!4).'4/%8!$!4!

CONVERTEDTOEQUIVALENT$-,AND$$,STATEMENTSANDEXECUTEDINTHETARGETDATABASE/RACLECALLS
THESESTEPS#APTURE 3TAGE AND!PPLY
2EGARDLESSOFWHICHPRODUCTYOUUSE THETARGETDATABASEREMAINSONLINEANDAVAILABLEFOR
APPLICATIONSTOUSEWHILEREPLICATIONISRUNNING.EWTABLESMAYBECREATEDINTHETARGETSCHEMAORIN
OTHERSCHEMAS!NYRESTRICTIONSONTHETARGETARELIMITEDTOTHETABLESBEINGREPLICATED4HISIS
PARTICULARLYUSEFULWHENYOURMIGRATIONSTRATEGYINVOLVESCONSOLIDATIONˆTAKINGSCHEMASFROMMULTIPLE
SOURCEDATABASESANDCONSOLIDATINGTHEMINTOONEDATABASE"ECAUSEOFITSEXTREMELYHIGHPERFORMANCE
ANDSCALABILITY MOSTCOMPANIESUSE%XADATAFORDATABASECONSOLIDATIONTOATLEASTSOMEDEGREE SOTHIS
ISAVERYUSEFULFEATURE)FYOUREADBETWEENTHELINES YOUREALIZETHATTHISMEANSYOUCANMIGRATE
MULTIPLEDATABASESCONCURRENTLY
!NOTHERCAPABILITYOFBOTH3TREAMSAND'OLDEN'ATEISTHEABILITYTODODATATRANSFORMATION4HISIS
NOTSOMETHINGWEWOULDNORMALLYASSOCIATEWITHDATABASEMIGRATION BUTITISAVAILABLESHOULDYOUNEED
IT3INCE3TREAMSUSES31,!PPLYTOPROPAGATEDATACHANGESTOTHETARGET YOUCANIMPLEMENTCHANGESTO
THETARGETTABLESTOIMPROVEEFFICIENCIES&OREXAMPLE YOUCANCONVERTCONVENTIONALTARGETTABLESTO
PARTITIONEDTABLES9OUCANALSOADDORDROPINDEXESANDCHANGEEXTENTSIZESTOOPTIMIZEFOR%XADATA"E
AWARETHATEVENTHOUGHREPLICATIONPROVIDESTHISCAPABILITY ITCANGETMESSY)FYOUAREPLANNINGALOTOF
CHANGESTOTHESOURCETABLESCONSIDERIMPLEMENTINGTHEMBEFOREYOUBEGINREPLICATION
4ABLESINTHETARGETDATABASEMAYBECOMPRESSEDUSING%XADATA(##"EPREPAREDTOTEST
PERFORMANCEWHENINSERTINGDATAANDUSING(##COMPRESSION)TISA#05 INTENSIVEPROCESS MUCH
MORESOTHAN"ASICAND/,40COMPRESSION(OWEVER THEREWARDSAREPRETTYSIGNIFICANTINTERMSOF
STORAGESAVINGSANDQUERYPERFORMANCE DEPENDINGONTHENATUREOFTHEQUERYOFCOURSE)FCONVENTIONAL
INSERTSORUPDATESAREEXECUTEDON(## COMPRESSEDTABLES /RACLESWITCHESTO/,40COMPRESSIONFOR
THEAFFECTEDROWS ANDYOURCOMPRESSIONRATIODROPSSIGNIFICANTLY$IRECTPATHINSERTSCANBEDONEBY
IMPLEMENTINGTHEINSERTAPPENDHINTASFOLLOWS
X]bTacP__T]SX]c^\hNWRRNcPQ[TbT[TRc*

X]bTacP__T]SNeP[dTbX]c^\hNWRRNcPQ[TeP[dTb<array of rows>*
.OTETHATTHEP__T]SNeP[dTbHINTONLYWORKSFROM/RACLEG2ONWARDS
!LSONOTETHATASOFTHISWRITING 'OLDEN'ATEDOESNOTSUPPORTreadingCHANGESOFCOMPRESSED
TABLESYET4HEREARETHREEBUGENHANCEMENTREQUESTSOUTSTANDINGFORADDINGEXTRACTIONSUPPORTFOR
TABLESCOMPRESSEDWITHREGULAR /,40 AND(##COMPRESSION!SFARASwritingTHEDATATOTHE
REPLICATIONTARGETGOES WERANSOMETESTSINOURLABANDFOUNDTHATWEWEREABLETOACHIEVETHE
hREDUCEDvCOMPRESSIONRATIOBYUSING'OLDEN'ATESDIRECTLOADFEATURE)TDIDNTAPPEARTOSUPPORTTHE
HIGHERLEVELSOFCOMPRESSIONYOUWOULDEXPECTFROMBULKINSERTS4ABLE SHOWSTHERESULTSOFOUR
COMPRESSIONTESTS


#(!04%2 -)'2!4).'4/%8!$!4!

Table 13-4. Golden Gate Table Compression

Method of Table Load Table Size (MB)


5NCOMPRESSED4ABLEBASELINE  
INSERT
APPEND
SELECT
FROMx 
''DIRECTLOAD
 
''DIRECTLOADAND@!PPENDHINTONTHEINSERTINTOTHESOURCETABLE  
* Note that Golden Gate has its own meaning for the term “direct load.” In Golden Gate terminology, it
means that the initial table data copy (instantiation of a table) is done by directly inserting the extracted
rows into the target database with array insert commands. The indirect approach in Golden Gate means
that the initially extracted data is dumped to an extract file first and later loaded with other tools like
Replicat (initial-load mode) or Oracle’s SQL*Loader. This is why we didn’t see ideal compression with
Golden Gate s “direct load” method as array inserts are not as good as INSERT SELECTs for compression.

!SFOR3TREAMS THEDOCUMENTATIONSAYSTHATDIRECTPATHINSERTSARENOTSUPPORTEDINGDATABASES
GDOESPROVIDELIMITEDSUPPORTTHROUGHTHE$IRECT0ATH!0)/NCEAGAIN MAKESUREYOUCHECKTHE
/RACLEDOCUMENTATIONTOSEEWHATISSUPPORTEDFORYOURDATABASEVERSION)FINDOUBTRUNAFEWTESTSTO
SEEWHETHERYOUDOGETTHELEVELOFCOMPRESSIONYOUEXPECT(OWEVER ABIGIMPROVEMENTIN/RACLE
ALLOWS3TREAMSTOcaptureDATAFROMTABLESCOMPRESSEDWITHBASICTABLECOMPRESSIONAND/,40
COMPRESSION&ROM/RACLEPATCHSETONWARDS 3TREAMS83TREAMCANALSOCAPTURECHANGESTO
(##COMPRESSEDTABLES4HEOracle Streams Concepts and Administration GuideFORG2ELEASE
EXPLAINSTHISINMOREDETAIL4HISFEATUREGIVES3TREAMSABIGADVANTAGEOVER'OLDEN'ATEifYOURSOURCE
TABLESARECOMPRESSEDandTHECOMPRESSEDDATAISUPDATED THUSREQUIRINGSOMESORTOFCHANGECAPTURE
UNLESSYOUWANTTOCOPYALLTHATDATADURINGDOWNTIME
4HELISTOFDATATYPES3TREAMSDOESNOTSUPPORTISFAIRLYSHORTINVERSIONG2(EREISTHELISTFROM
THE/RACLEDOCUMENTATION
v 158;4
v A>F83
v 5SER DEFINEDTYPESINCLUDINGOBJECTTYPES A45S VARRAYS ANDNESTEDTABLES
v G<;Ch_TSTOREDOBJECTRELATIONALLYORASBINARY8-,
v 4HEFOLLOWING/RACLE SUPPLIEDTYPES0]hTYPES 52)TYPES SPATIALTYPES AND
MEDIATYPES
!NDHEREISTHELISTOFUNSUPPORTEDDATATYPESIN'OLDEN'ATE
v 158;4
v 1;>1
v 258;4


#(!04%2 -)'2!4).'4/%8!$!4!

v 2;>1
v =2;>1
v =CH
4HEFOLLOWINGISAQUICKSUMMARYOFTHEBENEFITSCOMMONTOBOTH/RACLE3TREAMSAND'OLDEN'ATE
v 3UPPORTFORFAILOVER/RACLE2!#ENVIRONMENTS
v 3UPPORTFORMULTI TENANTDATABASES
v 3UPPORTFORTABLEPARTITIONINGTARGETTABLES
v 3UPPORTFOR(##COMPRESSIONTARGETTABLESONLYFOR'OLDEN'ATE ALTHOUGHYOU
MAYNOTGETTHEBESTLOADINGCOMPRESSIONRATIOCOMPAREDTO#4!3OR)!3
v 3UPPORTFORSTORAGECHANGESFORTABLESANDINDEXESTARGETTABLES
v !BILITYTOCHANGEINDEXINGSTRATEGYTARGETTABLES
v 2EADACCESSTOTHETARGETTABLESDURINGMIGRATION
v 3UPPORTFORENDIANDIFFERENCESBETWEENSOURCEANDTARGET
v 3UPPORTFORCHARACTERSETDIFFERENCESBETWEENSOURCEANDTARGET
v 3UPPORTFORDIFFERENTDATABASEBLOCKSIZESBETWEENSOURCEANDTARGET
v 3UPPORTFORCHANGE#APTUREONTHETARGETSERVER REDUCINGTHEPERFORMANCE
IMPACTONTHESOURCESYSTEM
v .OTDIFFICULTTOSETUP
v $ATABASEVERSION AGNOSTIC
v 6ERYLITTLEDOWNTIMETOSWITCHOVER
$ISADVANTAGESCOMMONTOBOTH3TREAMSAND'OLDEN'ATE
v 2EPLICATEDTABLESMUSTBEKEYED)FTHEREISNOPRIMARYKEYONTHESOURCETABLE
YOUMUSTPROVIDEALISTOFCOLUMNSTHATPROVIDEUNIQUENESS)FNOSUCH
COMBINATIONEXISTS THETABLECANNOTBEREPLICATED
v 3OMEDATATYPESARENOTSUPPORTEDFORREPLICATION
v ,OGMININGONTHESOURCESYSTEMCANIMPACTPERFORMANCE#ONSIDERMOVINGTHE
CHANGE#APTURETOTHETARGETSYSTEM
v )TSMORECOMPLEXTHANOTHERMIGRATIONSTRATEGIES
$ISADVANTAGESOF3TREAMSCOMPAREDTO'OLDEN'ATE
v $ATAMININGCANHEAVILYIMPACTPERFORMANCEONTHESOURCEDATABASE
v )TISMORECOMPLEXTOSETUP
v $$,ISSUPPORTEDBUTPROBLEMATIC


#(!04%2 -)'2!4).'4/%8!$!4!

v )FREPLICATIONBREAKS FIXINGITCANBEMESSY)TISOFTENEASIERTOSCRAPTHETARGETAND
REBUILDIT
v 31,!PPLYISMOREPRONETOFALLINGBEHINDTHESOURCETHAN'OLDEN'ATE
v 3TREAMSTENDSTOREQUIREMUCHMORE#05RESOURCESTHAN'OLDEN'ATE
!DVANTAGESOF3TREAMSOVER'OLDEN'ATE
v 3TREAMSISINCLUDEDWITHYOURDATABASELICENSE WHILE'OLDEN'ATEISSOLD
SEPARATELY
v )FTHESOURCEDATABASEIS/RACLEORHIGHER 3TREAMSSUPPORTSCAPTURING
CHANGESTOCOMPRESSEDSOURCETABLESBASICAND/,40COMPRESSION )FBOTHTHE
SOURCEANDTARGETDATABASESARERUNNING/RACLEVERSIONORHIGHER THENTHE
3TREAMSSUPPORTSCAPTURINGCHANGESTO(##COMPRESSEDTABLESTOO
v !LLPROCESSINFORMATIONISSTOREDINTHEDATABASE PROVIDINGCONVENIENTREMOTE
ACCESS
v 4HEREISINTEGRATIONWITH'RID#ONTROL
3OWHICHSHOULDYOUUSE 3TREAMSOR'OLDEN'ATE7EVESPOKENWITHCLIENTSANDCOLLEAGUESWHO
HAVEUSEDBOTHPRODUCTS)NEVERYCASETHEYAREUSINGTHEPRODUCTFORSIMPLEREPLICATIONTOAREMOTESITE
MUCHLIKEYOUWOULDFORDATABASEMIGRATION4HEFEEDBACKWEGETISOVERWHELMINGLYINFAVOROF'OLDEN
'ATE4HESEUSERSCITE'OLDEN'ATESEASEOFUSE STABILITY ANDPERFORMANCEASTHEMOSTIMPORTANT
REASONS)NADDITIONTOTHIS 'OLDEN'ATESUPPORTSNON /RACLEDATABASESOURCES3TREAMSRUNSINSIDETHE
/RACLEDATABASEANDHASNOTBEENPORTEDTOANYOTHERDATABASEPLATFORM!SMENTIONED 3TREAMSIS
INCLUDEDINYOUR/RACLEDATABASELICENSE'OLDEN'ATEISNOT ANDTHECOSTBASEDONTHETOTALNUMBEROF
CORESONTHESOURCEANDTARGETSERVERSISNOTTRIVIAL)FYOUHAVENEEDFORDATAREPLICATIONBEYONDYOUR
%XADATAMIGRATION THENTHEINVESTMENTMAYBEWELLWORTHIT)FYOUAREFACEDWITHAONE TIMEMIGRATION
3TREAMSMAYBEABETTERFITFORCOST

7HENTO5SE3TREAMSOR'OLDEN'ATE
3TREAMSAND'OLDEN'ATEBOTHPROVIDEALOTOFFLEXIBILITYWITHNEAR ZERODOWNTIME4HEYAREWELLSUITED
FORMIGRATIONSTHATREQUIRECHANGESTOTHETARGETTABLES4HISINCLUDESRESIZINGTABLEANDINDEXEXTENTS
IMPLEMENTINGPARTITIONINGSTRATEGIES ANDCOMPRESSINGTABLES4HEYALSOALLOWYOUTOCHANGESCHEMAS
TABLESPACES ANDDISKGROUPS AMONGOTHERTHINGS

7HATTO7ATCH/UTFORWITH3TREAMSAND'OLDEN'ATE
3INCE3TREAMSAND'OLDEN'ATEPROPAGATEDATABASECHANGESBYMININGTHEREDOLOGS YOUMUSTACCOUNT
FOR=>;>668=6OPERATIONS4HISCANBEDONEATTHETABLESPACELEVELUSINGP[cTacPQ[Tb_PRTU^aRT
[^VVX]VORATTHEDATABASELEVELUSINGP[cTaSPcPQPbTU^aRT[^VVX]V
(EREAREAFEWEXAMPLESOF=>;>668=6OPERATIONS
v 2A40C4C01;4]TfcPQ=>;>668=60BbT[TRcUa^\q
v INSERT
APPEND
xFORTABLESINNOLOGGINGMODE
v $IRECTPATH31,
,OADERFORTABLESINNOLOGGINGMODE


#(!04%2 -)'2!4).'4/%8!$!4!

.OTETHATSOMELARGE$7DATABASESAREDESIGNEDTOUSE=>;>668=6FORLARGEDATALOADSTOSAVE#05
ANDDISKSPACEFEWERARCHIVELOGSGENERATED 4HESEDATABASESRELYONINCREMENTALBACKUPSPLUSDATA
RELOADSASARECOVERYSTRATEGY)NSUCHDATABASES FORCINGREDOLOGGINGFOREVERYTHINGMAYCAUSE
UNACCEPTABLEPERFORMANCEDEGRADATIONANDARCHIVELOGGENERATION)NTHOSECASESITMAKESSENSETO
CONFIGURETHE%4,ENGINETOPERFORMLOADSTOBOTHTHEOLDANDNEW$7SYSTEMDURINGTHETRANSITION
PERIOD
3EQUENCESARENOTREPLICATED4HEYMUSTBEDROPPEDFROMTHETARGETANDRECREATEDFROMTHESOURCE
DATABASEDURINGTHEFINALCUT OVER4RIGGERSONTHETARGETTABLESMUSTBEDISABLEDDURINGREPLICATIONAND
RE ENABLEDDURINGTHEFINALCUT OVERAFTERREPLICATIONHASBEENSHUTOFF 

Logical Standby
!NOTHERTYPEOFREPLICATIONUSEFULFORDATABASEMIGRATIONISlogical standby,OGICALSTANDBYISABUILT IN
FEATUREOFTHE/RACLEDATABASE)TWASINTRODUCEDINVERSIONIRELEASEASANEXTENSIONORADDITIONAL
FEATUREOF$ATA'UARDFORMERLY0HYSICAL3TANDBY /NTHESURFACE THISSTRATEGYSOUNDSALOTLIKE3TREAMS
AND'OLDEN'ATEINTHATITISBASICALLYDOINGTHESAMETHING#HANGESTOTHESOURCEDATABASEAREMINED
FROMTHEREDOORARCHIVEDREDO ANDCONVERTEDTO31,STATEMENTSANDEXECUTEDONTHETARGETDATABASE
!SINOTHERLOGICALREPLICATIONMETHODS THEDATABASEISOPENANDAVAILABLEWHILEREPLICATIONISRUNNING
,OGICALSTANDBYISFARMORERESTRICTIVETHAN3TREAMSOR'OLDEN'ATE"ECAUSETHELOGICALSTANDBYIS
ACTUALLYINSTANTIATEDFROMAPHYSICAL BLOCK FOR BLOCK COPYOFTHESOURCEDATABASE SEVERALRULESCOME
INTOPLAY4HEDATABASEVERSIONMUSTBETHESAMEFORTHESOURCEANDTHETARGETDATABASES EVENDOWNTO
THEPATCHLEVEL7ITHFEWEXCEPTIONS SOURCEANDTARGETPLATFORMSMUSTALSOMATCHATLEASTWITHINTHE
PROCESSORARCHITECTURE&OREXAMPLE LOGICALSTANDBYDOESSUPPORTASOURCEDATABASERUNNINGONAN
!-$PROCESSORARCHITECTUREWHILETHETARGETDATABASE %XADATAINOURCASE RUNSONAN)NTEL%-4
PROCESSOR4HEOPERATINGSYSTEMFORBOTHSOURCEANDTARGETMUSTBETHESAME ALTHOUGHDIFFERENT
DISTRIBUTIONSOF,INUXWILLWORK&OREXAMPLE YOUCOULDBERUNNING3USE,INUXONTHESOURCESYSTEMBUT
/RACLE%NTERPRISE,INUXONTHETARGETASLONGASTHE,INUXKERNELISTHESAME
)TMIGHTSURPRISEYOUTOKNOWTHATWHILEINDEXESANDMATERIALIZEDVIEWSCANBECREATEDINTHETARGET
DATABASE YOUCANNOTUSELOGICALSTANDBYTOIMPLEMENTAPARTITIONINGSTRATEGYTHERE&OREXAMPLE YOU
CANCREATEORDROPINDEXESONATARGETTABLE BUTYOUCANNOTPAUSEREPLICATION DROPTHETABLE RECREATEIT
ASAPARTITIONEDTABLE RELOADIT ANDRESUMEREPLICATION4ABLECOMPRESSIONISNOTSUPPORTED EITHER7E
TRIEDWORKINGAROUNDTHATBYCOMPRESSINGTHETABLEAFTERCONVERTINGTHETARGETDATABASEFROMAPHYSICAL
TOALOGICALSTANDBY BUTTHATDOESNTWORK2EMEMBERTHAT(##COMPRESSIONONLYWORKSWITHDIRECT
PATHLOAD ANDLOGICALSTANDBYAPPLIESCHANGESUSINGCONVENTIONALINSERTS#OMPRESSIONANDTABLE
PARTITIONINGAREVERYIMPORTANTPERFORMANCESTRATEGIESFOR%XADATA4HELACKOFSUPPORTFORTHESE
FEATURESISASIGNIFICANTDOWNSIDEFORLOGICALSTANDBY
4HELISTOFUNSUPPORTEDDATATYPESISTHESAMEFORLOGICALSTANDBYASITISFOR3TREAMSAND'OLDEN
'ATE
v 158;4
v A>F83 DA>F83
v 5SER DEFINEDTYPES
v #OLLECTIONSINCLUDINGE0AA0HBANDNESTEDTABLES
v G<;Ch_TSTOREDOBJECTRELATIONALLYORASBINARY8-,
v -ULTIMEDIADATATYPESINCLUDING3PATIAL )MAGE AND/RACLE4EXT


#(!04%2 -)'2!4).'4/%8!$!4!

4HEREAREALOTOFSTEPSINCONFIGURINGANDINSTANTIATINGALOGICALSTANDBYANDWEWONTGOINTOALLTHE
DETAILSHERE"UTTOGIVEYOUANIDEAOFHOWALOGICALSTANDBYISSETUP HEREARETHEHIGH LEVELSTEPS
 #REATEAPHYSICALSTANDBYDATABASEWELLTALKABOUTTHISINTHEh0HYSICAL
3TANDBYvSECTION 
 3TOPREDOAPPLYONTHEPHYSICALSTANDBYDATABASE
 #ONFIGURE,OG-INERINTHE0RIMARYDATABASE
 #ONVERTTHEPHYSICALSTANDBYDATABASETOALOGICALSTANDBY
 /PENTHELOGICALSTANDBYDATABASEANDRESTARTREDOAPPLY
 6ERIFYTHATTHELOGICALSTANDBYDATABASEISAPPLYINGCHANGESFROMTHESOURCE
,OGICALSTANDBYUSES31,!PPLYTECHNOLOGYTOREPLICATECHANGESFROMTHESOURCEDATABASETOTHE
TARGET!SMENTIONEDEARLIER CHANGESINTHESOURCEDATABASEARECONVERTEDTO31,STATEMENTSAND
SHIPPEDTOTHETARGETFOREXECUTION!LTHOUGHTHISMAYSOUNDFAIRLYSTRAIGHTFORWARD THEREARESOME
INTERESTINGIMPLICATIONSBECAUSEOFHOWITISIMPLEMENTED(EREAREAFEWTHINGSTOKEEPINMIND

#ONSIDERATIONSFOR$-,3TATEMENTS
v "ATCHUPDATESAREEXECUTEDONEROWATATIME
v $IRECTPATHINSERTSAREPERFORMEDINCONVENTIONALMANNER
v 0ARALLEL$-,ISNOTEXECUTEDINPARALLEL
#ONSIDERATIONSFOR$$,3TATEMENTS
v 0ARALLEL$$,ISNOTEXECUTEDINPARALLEL
v #4!3ISEXECUTEDASCREATETABLE INSERT INSERT INSERT x

7HENTO5SE,OGICAL3TANDBY
,OGICALSTANDBYHASAVERYNARROWLISTOFBENEFITSTHATSETITAPARTFROMOTHER MORELIKELY MIGRATION
METHODS)TPROVIDESFULLDATABASEREPLICATIONANDALLOWSREADACCESSTOTHESTANDBYDATABASEDURING
REPLICATION!SSUCH THESTANDBYMAYBEUSEDTOOFFLOADRESOURCE INTENSIVEREPORTINGOPERATIONSFROM
THEPRODUCTIONDATABASEUNTILTHETIMEYOUAREREADYTOMAKETHEFINALSWITCH4ABLESANDMATERIALIZED
VIEWSMAYBECREATEDONTHESTANDBYDATABASE ANDINDEXESMAYBECREATEDORDROPPEDTOIMPROVE
PERFORMANCE

7HATTO7ATCH/UTFORWITH,OGICAL3TANDBY
=>;>668=6OPERATIONSDONOTGENERATEREDO WHICHMEANSTHEYWILLNOTBEREPLICATEDTOTHESTANDBY
DATABASE"ESURETOTURNOFF=>;>668=6OPERATIONSUSINGTHEP[cTaSPcPQPbTU^aRT[^VVX]VCOMMANDIN
31,
0LUS#ONSIDERINGITSLACKOFSUPPORTFORMODIFYINGSTORAGEOFTARGETTABLES COMPRESSION AND
PARTITIONING YOUMIGHTOPTTOUSETHEPHYSICALSTANDBYAPPROACHINSTEAD)FYOUDONTREQUIREFULL
DATABASEREPLICATION 3TREAMSAND'OLDEN'ATEAREEXCELLENTALTERNATIVESPROVIDINGSUPPORTFORMANYOF
THECAPABILITIESLACKINGINALOGICALSTANDBYDATABASE


#(!04%2 -)'2!4).'4/%8!$!4!

Parallel Load
4HISISABITOFhROLLYOUROWNvMETHODFORMIGRATION)NTHISSTRATEGYDATACHANGESAREFEDTOTHEDATABASE
THROUGHANIN HOUSEDEVELOPEDAPPLICATION!SSUCH ITISASMALLTASKTOCONFIGURETHEAPPLICATIONTO
UPDATE%XADATATABLESINPARALLELWITHTHECURRENTPRODUCTIONDATABASE(ISTORICALDATAISTHENMIGRATED
OVERTO%XADATADURINGNORMALBUSINESSHOURS$EPENDINGONTHEVOLUME THISMAYTAKESEVERALDAYSTO
SEVERALWEEKS/NCEALLTABLESHAVEBEENMIGRATEDTO%XADATA THEFEEDTOTHEOLDPRODUCTIONSYSTEMIS
CUTAND%XADATABECOMESTHENEWPRODUCTIONDATABASE

Non-Oracle Databases
#LEARLYTHELISTOFOPTIONSWILLBEMUCHSMALLERFORMIGRATINGNON /RACLEDATABASES/NEOFOURCLIENTSIS
CURRENTLYMIGRATINGTHIRTYORSO31,3ERVERDATABASESTO%XADATA4OBEGINWITH THISTYPEOFMIGRATION
TAKESUSDOWNTHELOGICALMIGRATIONPATHESSENTIALLYEXTRACTINGEVERYOBJECTANDROWOFDATAFROMTHE
SOURCEDATABASE ANDINSERTINGITINTOTHETARGETDATABASE)FTHESOURCEDATABASEINCLUDESCODEOBJECTS
SUCHASSTOREDPROCEDURES FUNCTIONS ANDTRIGGERS THEYWILLNEEDTOBECONVERTEDTO0,31,ORREWRITTEN
COMPLETELY
#HANGINGDATABASEVENDORSCANBEAMESSYANDCOMPLICATEDPROCESS4HEREISALOTTOCONSIDER
PLAN ANDTEST/RACLEANDOTHERVENDORSHAVEDONEAPRETTYGOODJOBOFPROVIDINGTOOLSTHATAUTOMATE
THEPROCESSTOSOMEDEGREE -IGRATINGFRONT ENDAPPLICATIONSTOAN/RACLEDATABASEISAMUCHLONGER
DISCUSSION LARGELYBECAUSEEACHDATABASEVENDORHASIMPLEMENTEDLOCKINGANDCONCURRENCYCONTROL
DIFFERENTLY!N/RACLEDATABASETENDSTODOMUCHLESSLOCKINGTHANMANYOFITSCOMPETITORS4HISISA
GOODTHINGBECAUSELESSAGGRESSIVELOCKINGMEANSMORECONCURRENCY ANDMORECONCURRENCYTRANSLATES
TOBETTERSCALABILITY(OWEVERBECAUSEOFTHISTENDENCYTOhUNDER LOCK vAPPLICATIONSWRITTENFORNON
/RACLEDATABASESSHOULDBECLOSELYREVIEWEDTOENSURETHATTHEYADEQUATELYLOCKROWSWHERESERIALIZATION
ISREQUIRED$EVELOPMENTBESTPRACTICESAREBEYONDTHESCOPEOFTHISBOOKBUTAREWELLDOCUMENTED
4OM+YTESBOOKExpert Oracle Database Architecture!PRESS  ISANEXCELLENTRESOURCEFOR$"!S
ANDDEVELOPERSMAKINGTHESWITCHTO/RACLE"EWARETHECONCEPTOFhDATABASEAGNOSTICvAPPLICATIONSIT
ISAMYTH)FYOUAREMIGRATINGAFRONT ENDAPPLICATIONALONGWITHYOURDATABASE THECODESHOULDBE
REVIEWEDANDTESTEDTHOROUGHLY/RACLES-IGRATION7ORKBENCHCANTAKESOMEOFTHEPAINOUTOFTHE
PROCESSOFCONVERTINGYOURNON /RACLEDATABASESTO%XADATA"ETTERYET ITISFREEANDFULLYSUPPORTED!S
OFTHISWRITINGTHEDATABASESITCANMIGRATEARETHESE
v -ICROSOFT31,3ERVER
v )"-$"
v 3YBASE!DAPTIVE3ERVER
v 4ERADATA
v -ICROSOFT!CCESS
v )NFORMIX
v -931,
-IGRATION7ORKBENCHEXTRACTSSOURCEDATABASEOBJECTS STORESTHEMINITSREPOSITORY ANDCONVERTS
THEMTO/RACLE COMPATIBLEOBJECTS3UPPORTEDOBJECTSARETABLES VIEWS CONSTRAINTS PRIMARYKEYS
FOREIGNKEYS INDEXES STOREDPROCEDURES FUNCTIONS TRIGGERS 31,3ERVERIDENTITYCOLUMNS TEMPORARY
OBJECTS USERS USER DEFINEDTYPES ANDMORE&OREXAMPLE E0A270AFIELDSWITHALENGTHGREATERTHAN
CHARACTERSARECONVERTEDTO#,/"IN/RACLE$ATATYPESTHAT/RACLEDOESNOTDIRECTLYSUPPORTARE


#(!04%2 -)'2!4).'4/%8!$!4!

CONVERTEDTODATATYPESWITHSIMILARCHARACTERISTICS&OREXAMPLE THE<4<>DATATYPEWILLBECONVERTEDTO
AN/RACLE#,/"DATATYPE/RACLEHANDLESTHENOTORIOUS834=C8CHDATATYPEIN31,3ERVERBYCONVERTING
ITTOA=D<14ACOLUMNONTHE/RACLESIDEANDCREATINGACORRESPONDINGINSERTTRIGGERANDSEQUENCE3OME
OBJECTSANDSYNTAXCANNOTBECONVERTEDAUTOMATICALLY&ORTHOSEOBJECTS-IGRATION7ORKBENCHANALYZES
ANDREPORTS TASKSTHATONCEREQUIREDHUMANINTERVENTION#ONVERTINGCODEANDDATATYPESMANUALLYISA
TEDIOUS TIME CONSUMING ANDERRORPRONETASK"ESURETOALLOWENOUGHTIME ANDTEST TEST TEST)FYOUR
DATABASESTORESDATASTRUCTURESONLYSUCHASTABLESANDINDEXES OTHERTOOLSLIKE'OLDEN'ATECANBE
EFFECTIVELYUSEDFORMIGRATINGYOURDATABASETO%XADATA

7HENTO5SE-IGRATION7ORKBENCH
-IGRATION7ORKBENCHISAVERYUSEFULTOOLFORREDUCINGTHETIMEANDEFFORTINVOLVEDINCROSS VENDOR
DATABASEMIGRATION4HISISESPECIALLYTRUEWHENTHEREISASUBSTANTIALAMOUNTOFPROCEDURALCODEINSIDE
THEDATABASETOBEMIGRATED)NSTEADOFSPENDINGHOURSINTHEBOOKSTRYINGTOFIGUREOUTWHICH/RACLE
DATATYPESMAPBESTTOTHESOURCEDATABASE -IGRATION7ORKBENCHGENERATESTHESEMAPPINGS
AUTOMATICALLY7EVEALSOFOUNDITTOBEAREALTIMESAVERFOR$"!SANDDEVELOPERSWHONEEDTOLEARN
HOWBUILT INDATATYPES PACKAGES ANDFUNCTIONSTRANSLATETO0,31,

7HATTO7ATCH/UTFOR7HEN-IGRATINGFROMNON /RACLE$ATABASES
$ONOTUNDERESTIMATETHEDIFFICULTYOFCROSS VENDORDATABASEMIGRATION%VENAMONGTHE31,FAMILYOF
DATABASESONTHEMARKETTHEREARESIGNIFICANTDIFFERENCESINIMPLEMENTATION9OUWILLNEEDATHOROUGH
UNDERSTANDINGOFHOWTHINGSLIKEREADCONSISTENCYANDLOCKINGAREDONEINYOURSOURCEDATABASEASWELL
ASHOWTHEYAREDONEIN/RACLE4HETIMEANDEFFORTREQUIREDFORCROSS VENDORDATABASEMIGRATIONIS
DIRECTLYTIEDTOTHECOMPLEXITYOFYOURDATABASEANDTHEAMOUNTOFSOURCECODEFORPACKAGES PROCEDURES
ANDFUNCTIONSTHATMUSTBECONVERTED)FUSER DEFINEDDATATYPESAREUSEDINTHESOURCEDATABASE THEY
WILLNEEDTOBECONVERTEDMANUALLY

,OGICAL-IGRATION7RAP5P
)NMOSTCASESLOGICALMIGRATIONPROVIDESTHEMOSTFLEXIBILITYFORRECONFIGURINGEXTENTSIZES IMPLEMENTING
ORMODIFYINGPARTITIONINGSTRATEGIES ANDCOMPRESSINGTABLESUSING(##4HISFLEXIBILITYCOMESATTHECOST
OFCOMPLEXITYANDRESTRICTIONSTHATSHOULDBEWEIGHEDANDMEASUREDAGAINSTTHESIMPLICITYOFSOMEOF
THEPHYSICALMIGRATIONSTRATEGIESPRESENTEDINTHISCHAPTER!TTHEENDOFTHEDAY YOUWILLWANTTO
PROPERLYSIZEEXTENTSFORLARGETABLES IMPLEMENTAGOODPARTITIONINGSTRATEGY ANDCOMPRESSREAD ONLY
TABLESUSING(##COMPRESSION4HISCANBEDONEBEFOREYOUSWITCHOVERTO%XADATAUSINGMOSTOFTHE
LOGICALMIGRATIONSTRATEGIESWEVEDISCUSSEDHERE

Physical Migration
0HYSICALDATABASEMIGRATION ASTHENAMEIMPLIES ISTHEPROCESSOFCREATINGABLOCK FOR BLOCKCOPYOFTHE
SOURCEDATABASEORPARTSOFTHEDATABASE ANDMOVINGITTO%XADATA0HYSICALMIGRATIONISAMUCH
SIMPLERPROCESSTHANSOMEOFTHELOGICALMIGRATIONSTRATEGIESDISCUSSEDEARLIERINTHISCHAPTER!SYOU
MIGHTEXPECT ITDOESNOTALLOWFORANYCHANGESTOBEMADETOTHETARGETDATABASE OTHERTHANCHOOSING
NOTTOMIGRATESOMEUNNECESSARYTABLESPACES4HISMEANSTHATYOUWILLNOTBEABLETOMODIFYEXTENT
SIZESFORTABLESANDINDEXES ALTERYOURINDEXINGSTRATEGY IMPLEMENTPARTITIONING ORAPPLY(##TABLE
COMPRESSION!LLTHESETASKSMUSTBEDONEPOST MIGRATION(OWEVER PHYSICALMIGRATIONIS HANDSDOWN
THEFASTESTWAYTOMIGRATEYOURDATABASETO%XADATA&ORALLPHYSICALMIGRATIONSTRATEGIES EXCEPT


#(!04%2 -)'2!4).'4/%8!$!4!

4RANSPORTABLE4ABLESPACES443 THENEW%XADATADATABASESTARTSOUTASASINGLE INSTANCEDATABASE


0OST MIGRATIONSTEPSARENEEDEDTOREGISTERTHEDATABASEANDALLITSINSTANCESWITH#LUSTER2EADY3ERVICES
'RID)NFRASTRUCTURE "ECAUSEPHYSICALMIGRATIONCREATESANEXACTCOPYOFTHESOURCEDATABASE THELISTOF
RESTRICTIONSISVERYSHORT
v 4HESOURCE$ATABASEVERSIONMUSTBE
4HISASSUMESTHATYOUWILLBEMIGRATINGTO%XADATA6OR8 THEOLD%XADATA6
SUPPORTS/RACLEASWELL
/NEOPTIONISTOUPGRADETHEPRODUCTIONDATABASETOVERSIONBEFORECOPYINGIT
TO%XADATA5PGRADINGISUSUALLYAQUICKPROCESSANDISNOTDEPENDENTONTHESIZE
OFTHEDATABASETABLES BUTRATHERONTHENUMBEROFOBJECTSINTHEDATABASE4HE
POST UPGRADERECOMPILATIONOF0,31,PACKAGESANDVIEWSMAYTAKEAWHILE
HOWEVER
v 4HESOURCEPLATFORMMUSTBECERTIFIEDFORRUNNING/RACLE/%, 2(%,
3,%3OROTHERCERTIFIED,INUXVERSIONS 
v 4HESOURCEPLATFORMMUSTBELITTLE ENDIAN!3-REBALANCEANDCROSS PLATFORM
TRANSPORTABLEDATABASEONLY 7HENUSINGAHYBRIDSOLUTIONCREATINGANEW
DATABASEON%XADATAANDUSINGCROSS PLATFORMTRANSPORTABLETABLESPACES THE
SOURCEDATABASECANBEONDIFFERENTPLATFORMSWITHDIFFERENTENDIANNESS
SUPPORTEDPLATFORMSARELISTEDINecaP]b_^acPQ[TN_[PcU^a\VIEW
4HEREARETHREESTRATEGIESFORPERFORMINGAPHYSICALMIGRATIONBACKUPANDRESTORE PHYSICAL
STANDBY AND!3-REBALANCE)NTHISSECTIONWELLDISCUSSTHESESTRATEGIES HOWTHEYWORK ANDWHATTHEY
AREBESTSUITEDFOR

Backup and Restore


4HEBACKUPANDRESTORESTRATEGYUSES/RACLES2ECOVERY-ANAGER2-!. TOCREATEAFULLBACKUPOFTHE
SOURCEDATABASEANDTHENRESTOREITTOTHE%XADATAPLATFORM5NLESSYOUPLANTOSHUTDOWNTHEDATABASE
DURINGTHISPROCESS THESOURCEDATABASEMUSTBERUNNINGIN!RCHIVELOGMODE4HEBACKUPANDRESTORE
PROCESSCANBEDONEINONEPASSUSINGAFULLBACKUP4HISISTHEBESTWAYTOMOVESMALLERDATABASESTO
%XADATASINCESMALLERDATABASESTAKEMUCHLESSTIME,ARGERDATABASESMAYTAKEHOURSTOBACKUPAND
RESTORE&ORTHESEDATABASESTHEPROCESSCANBEDONEINTWOPASSESBYTAKINGAFULLBACKUPFOLLOWEDBYAN
INCREMENTALBACKUP

&ULL"ACKUPAND2ESTORE
2-!.ISUSEDTOCREATEAFULLBACKUPOFTHEDATABASETOBEMIGRATED4HEBACKUPFILESARESTAGEDINAFILE
SYSTEMORTAPELIBRARYACCESSIBLETO%XADATA4HEBACKUPISTHENRESTOREDTOTHE%XADATAPLATFORM)FTHE
SOURCEDATABASEISONABIG ENDIANPLATFORM THEDATAFILESCANBECONVERTEDDURINGBACKUPORRESTORE
PROCESSUSING2-!.SR^]eTacSPcPQPbTCOMMAND4HEBASICSTEPSARE
1. 0ERFORMPRE MIGRATIONTASKS
a. #REATEANENTRYINTHEc]b]P\Tb^aPFILEFORYOURDATABASEON%XADATA
OPTIONAL 
b. #OPYTHEPASSWORDFILEANDPARAMETERFILEX]Xc^aPORSPFILE TO%XADATA


#(!04%2 -)'2!4).'4/%8!$!4!

2. 2ESTRICTUSERANDAPPLICATIONACCESSTOTHEDATABASE
3. 4AKEAFULLDATABASEBACKUPOPTIONALLYCONVERTTOLITTLE ENDIANPLATFORM 
4. #OPYTHEFILESTO%XADATANOTREQUIREDIFBACKUPRESIDESONASHAREDFILE
SYSTEMORTAPE 
5. /N%XADATA STARTUPTHEDATABASEINNOMOUNTMODE
6. 2ESTORETHECONTROLFILEOPTIONALLYCONVERTTO,INUXX BITPLATFORM 
7. -OUNTTHEDATABASE
8. 2ESTORETHEDATABASEOPTIONALLYCONVERTTO,INUXX BITPLATFORM 
9. 2ECOVERTHEDATABASE.OTETHATYOUCANNOTrecoverADATABASEWITHARCHIVE
ANDREDOLOGSFROMTHESOURCEDATABASE IFTHESOURCEDATABASEISONADIFFERENT
PLATFORMTHANTHETARGETDATABASE4HISMEANSTHATYOUCANTREDUCETHE
MIGRATIONDOWNTIMEBYRESTORINGANDROLLINGFORWARDANOLDPRODUCTION
BACKUPIFTHESOURCEDATABASEISRUNNINGONADIFFERENTPLATFORMTHANTHE
TARGET)NSUCHACASETHEWRITABLESOURCEDATABASEFILESSHOULDBE
RESTOREDCOPIEDONLYWHENTHEYAREINTHEIRFINALSTATETHATIS THESOURCE
DATABASEISALREADYSHUTDOWN 2EAD ONLYTABLESPACEFILESCANSTILLBE
COPIEDRESTOREDINADVANCE
10. 0ERFORMPOST MIGRATIONTASKS
a. #ONVERTTHEDATABASETO2!#ANDCREATESERVICENAMES
b. 2ECONFIGURECLIENTc]b]P\Tb^aPFILES CONFIGURATIONFILESFORCONNECTINGTO
THE%XADATADATABASE
11. -AKETHEDATABASEAVAILABLETOUSERSANDAPPLICATIONS
!SYOUCANSEE THISISAFAIRLYSTRAIGHTFORWARDPROCESS!FTERFOLLOWINGTHESESTEPSYOUHAVEANEXACT
COPYOFYOURPRODUCTIONDATABASERUNNINGON%XADATA4HEREAREAFEWTHINGSTOKEEPINMIND THOUGH)F
YOURSOURCEDATABASEUSESFILESYSTEMSFORDATABASESTORAGE ORIFYOUAREUSING!3-BUTTHEDISKGROUP
NAMESAREDIFFERENTON%XADATA YOUMAYREDIRECTTHERESTOREDFILESTOTHENEWDISKGROUPNAMESBY
CHANGINGTHESQNRaTPcTNUX[TNSTbcANDSQNaTR^eTahNUX[TNSTbcPARAMETERSINTHEX]Xc^aPFILEBEFORE
STARTINGTHERESTOREPROCESS4ABLE SHOWSHOWTHESEPARAMETERSCANBEUSEDTOREMAPDISKGROUP
NAMESFROMTHESOURCEDATABASETO%XADATA

Table 13-5. Remap Disk Groups

Init.ora Parameters Source Database Exadata Database


SQNRaTPcTNUX[TNSTbc30C0N58;4B 30C0

SQNaTR^eTahNUX[TNSTbcA42>E4AHN58;4B A42>

)FYOURDATABASEUSESMULTIPLE!3-DISKGROUPSTOSTOREYOURDATABASEFILES USETHE2-!.
SQNUX[TN]P\TNR^]eTacCOMMANDTOREMAPTHEFILENAMESTO!3-DISKGROUPS&OREXAMPLE


#(!04%2 -)'2!4).'4/%8!$!4!

SQNUX[TN]P\TNR^]eTac,K
30C0N58;4BTgSQSPcPUX[TbhbcT\&"&&!(&!"%((30C0
SQNUX[TN]P\TNR^]eTac,K
30C0N58;4B TgSQSPcPUX[TbhbPdg&#!&!(&!"& 30C0

)NCREMENTAL"ACKUP
)FTHEDATABASEYOUNEEDTOMIGRATEISLARGEANDTHETIMETOMIGRATEISLIMITEDYOUMIGHTCONSIDERUSING
THEINCREMENTALBACKUPANDRESTORESTRATEGYTOREDUCEDOWNTIMEFORTHEFINALSWITCHTO%XADATA!LAS THE
INCREMENTALMETHODdoes notSUPPORTENDIANFORMATCONVERSION(EREARETHEBASICSTEPS
1. 0ERFORMPRE MIGRATIONTASKS
a. #REATEANENTRYINTHEc]b]P\Tb^aPFILEFORYOURDATABASEON%XADATA
OPTIONAL 
b. #OPYTHEPASSWORDFILEANDPARAMETERFILEX]Xc^aPORSPFILE TO%XADATA
2. -AKEALEVELBACKUPOFTHEDATABASE
3. #OPYTHEBACKUPFILESTO%XADATANOTREQUIREDIFBACKUPRESIDESONASHARED
FILESYSTEMORTAPE 
4. /N%XADATA STARTUPTHEDATABASEINNOMOUNTMODE
5. 2ESTORETHECONTROLFILE
6. -OUNTTHEDATABASE
7. 2ESTORETHEDATABASE
8. 2ESTRICTUSERANDAPPLICATIONACCESSTOTHEDATABASE
9. -AKEANINCREMENTALLEVELBACKUPOFTHEDATABASE
10. #OPYTHEINCREMENTALBACKUPFILESTO%XADATA
11. 2ECOVERTHEDATABASEAPPLYINGINCREMENTALBACKUPANDARCHIVEDREDOLOGS 
12. 0ERFORMPOST MIGRATIONTASKS
a. #ONVERTTHEDATABASETO2!#ANDCREATESERVICENAMES
b. 2ECONFIGURECLIENTc]b]P\Tb^aPFILES
13. -AKETHEDATABASEAVAILABLETOUSERSANDAPPLICATIONS
9OUMAYNOTICETHATTHESTEPSFORTHEINCREMENTALBACKUPMETHODAREALMOSTIDENTICALTOTHEFULL
BACKUPMETHOD4HEIMPORTANTDIFFERENCEISTHEDOWNTIMEREQUIRED4HEBULKOFTHETIMEFORMIGRATING
THEDATABASEISINTHEFULLBACKUPITSELF4HISCOULDTAKEHOURSTOCOMPLETE ANDWITHTHEFULLBACKUP
METHODTHATISALLDATABASEDOWNTIME4HEINCREMENTALBACKUPMETHODUSESALEVELBACKUPINSTEADOF
AFULLBACKUP)NACTUALITYTHELEVELBACKUPISTHESAMEASTHEFULLBACKUPEXCEPTTHATITHASSPECIAL
PROPERTIESTHATALLOWITTOBEUSEDASABASELINETOWHICHINCREMENTALBACKUPSCANBEAPPLIED3OUSING
THEINCREMENTALMETHOD THEDATABASEREMAINSONLINEFORUSERSDURINGTHELONGESTPARTOFTHEMIGRATION
"LOCKCHANGETRACKINGMUSTBEACTIVATEDONTHESOURCEDATABASEbeforeTHEINCREMENTALLEVELIS
TAKEN7HENBLOCKCHANGETRACKINGISTURNEDON /RACLEKEEPSTRACKOFALLTHEBLOCKSTHATHAVECHANGED


#(!04%2 -)'2!4).'4/%8!$!4!

SINCETHELASTLEVELBACKUPBYFLIPPINGABITINASMALLBITMAPFILE4HISMEANSTHATWHENYOUTAKEAN
INCREMENTALLEVELBACKUP /RACLEDOESNTHAVETOSCANEVERYBLOCKINTHEDATABASETOSEEWHICHONES
HAVECHANGED)VESEENTHISREDUCEANINCREMENTALBACKUPOFA4DATAWAREHOUSEFROMHOURSTOJUST
OVERMINUTES4OSEEIFBLOCKCHANGETRACKINGISACTIVEEXECUTETHEFOLLOWINGQUERYIN31,
0LUS
B@;-B4;42CbcPcdb5A><eQ[^RZNRWP]VTNcaPRZX]V*

BC0CDB

38B01;43
9OUDONOTHAVETOSHUTDOWNTHEDATABASETOACTIVATEBLOCKCHANGETRACKING)TCANBEDONEATANY
TIME4OTURNONBLOCKCHANGETRACKING EXECUTETHEFOLLOWINGCOMMAND
B@;-0;C4A30C010B44=01;41;>2:270=64CA02:8=6*
3PcPQPbTP[cTaTS
"YDEFAULTTHEBLOCKCHANGETRACKINGFILEISCREATEDINTHESQNRaTPcTNUX[TNSTbcLOCATION)FTHIS
PARAMETERISNOTSET YOUWILLNEEDTOSETITORSPECIFYTHEFILENAMEFORTHEBLOCKCHANGETRACKINGFILE LIKE
THIS
0;C4A30C010B44=01;41;>2:270=64CA02:8=6
DB8=658;4d P__^aPR[T_a^SdRc !SQW^\TN SQbC4BCNQRcRcjA4DB4l*
0OST MIGRATIONTASKSARENECESSARYTOCONVERTYOURSINGLE INSTANCE%XADATADATABASETOAMULTI
INSTANCE2!#DATABASE#ONVERTINGASINGLE INSTANCEDATABASETO2!#WILLBECOVEREDATTHEENDOFTHE
h0HYSICAL-IGRATIONvSECTIONOFTHISCHAPTER/NCETHEDATABASEISRECOVEREDANDRUNNINGON%XADATA
YOUSHOULDMAKEAFULLDATABASEBACKUP!SSUMINGTHEDATABASEISRUNNINGIN!RCHIVELOGMODE YOUCAN
DOTHISAFTERTHEDATABASEISBACKONLINEANDSERVICINGENDUSERSANDAPPLICATIONS

When to Use Backup and Restore


%XECUTINGASIMPLEDATABASEBACKUPANDRECOVERYUSING2-!.ISSOMETHINGEVERY$"!SHOULDBEABLE
TODOINTHEIRSLEEP4HISMAKESTHE"ACKUPAND2ESTOREAVERYATTRACTIVESTRATEGY)TISBESTSUITEDFOR
/,40DATABASESTHATDONTREQUIREPARTITIONINGAND(##COMPRESSION)TISALSOSUITABLEFOR$7
DATABASESTHATALREADYRUNONALITTLE ENDIAN  BITPLATFORM POST MIGRATIONSTEPSNOTWITHSTANDING

What to Watch Out for when Considering the Backup and Restore Strategy
)NCREMENTALBACKUPANDRESTOREDOESNOTSUPPORTPLATFORMCONVERSION)FTHISISAREQUIREMENT YOU
MIGHTBEBETTEROFFUSINGTHE443MIGRATIONSTRATEGYORREVISITINGSOMEOFTHELOGICALMIGRATIONSTRATEGIES
WEVEDISCUSSEDINTHISCHAPTER/BJECTSWILLNEEDTOBEREBUILTAFTERMIGRATIONTOTAKEADVANTAGEOF
%XADATASTORAGEFEATURESSUCHAS(##

4RANSPORTABLE4ABLESPACESAND8443
4RANSPORTABLETABLESPACES443 CANBEUSEDTOMIGRATESUBSETSOFTHESOURCEDATABASETO%XADATA4ODO
THISYOUWILLNEEDARUNNINGDATABASEON%XADATATOHOSTTHESESUBSETSOFYOURDATABASE7EOFTEN
DESCRIBE443ASASORTOFh0RUNEAND'RAFTvPROCEDURE4HISMETHODALLOWSASETOFTABLESPACESTOBE
COPIEDFROMASOURCEDATABASE ANDINSTALLEDINTOALIVETARGETDATABASE4HE443PROCESSISFAIRLYSIMPLE
BUTTHEREAREAFEWTHINGSYOUWILLNEEDTOBEAWAREOFBEFOREBEGINNING


#(!04%2 -)'2!4).'4/%8!$!4!

2ESTRICTIONS
v 4ABLESPACESMUSTBEPUTINREAD ONLYMODEDURINGTHEPROCESS
v #HARACTERSETSWILL IDEALLY BETHESAMEFORTHESOURCEANDTARGETDATABASES4HERE
AREEXCEPTIONSTOTHISRULE3EETHE/RACLEDOCUMENTATIONIFYOUPLANTOCHANGE
CHARACTERSETSDURINGMIGRATION
v /BJECTSWITHUNDERLYINGDEPENDENCIESLIKEMATERIALIZEDVIEWSANDTABLEPARTITIONS
ARENOTTRANSPORTABLEUNLESSTHEYARECONTAINEDINTHESAMESET!TABLESPACESETIS
AWAYOFMOVINGAGROUPOFRELATEDTABLESPACESTOGETHERINONEOPERATION
v "EFORETRANSPORTINGENCRYPTEDTABLESPACESYOUMUSTFIRSTCOPYTHE/RACLEWALLETTO
THETARGETSYSTEMANDENABLEITFORTHETARGETDATABASE!$ATABASECANONLYHAVE
ONE/RACLEWALLET)FTHEDATABASEYOUAREMIGRATINGTOALREADYHASAWALLETYOUWILL
NEEDTOUSE$ATA0UMPTOEXPORTANDIMPORTTABLEDATA
v 4ABLESPACESTHATDONOTUSEBLOCKLEVELENCRYPTIONBUTHAVETABLESTHATUSE
COLUMNENCRYPTIONCANNOTBETRANSPORTEDWITH443)NTHISCASE$ATA0UMPIS
PROBABLYTHEBESTALTERNATIVE
v 4ABLESPACESTHATCONTAIN8-,DATATYPESARESUPPORTEDBY443ASOFG2 BUT
YOUWILLHAVETOUSE$ATA0UMPTOEXPORTTHEMETADATA4HEREAREOTHER
RESTRICTIONSANDCAVEATSTOTRANSPORTING8-,DATA2EFERTOTHEOracle XML DB
Developer’s GuideFORACOMPLETELISTING4OLISTTABLESPACESWITH8-,DATATYPES
RUNTHEFOLLOWINGQUERY
B@;-bT[TRcSXbcX]Rc_cPQ[Tb_PRTN]P\T
Ua^\SQPNcPQ[Tb_PRTb_
SQPNg\[NcPQ[Tbg
SQPNdbTabd
P[[NP[[NcPQ[Tbc
fWTaTccPQ[TN]P\T,gcPQ[TN]P\T
P]SccPQ[Tb_PRTN]P\T,_cPQ[Tb_PRTN]P\T
P]Sg^f]Ta,ddbTa]P\T*
v /PAQUETYPESSUCHAS2!7AND"&),%ARESUPPORTEDBY443BUTARENOTCONVERTED
CROSS PLATFORM4HESTRUCTUREOFTHESETYPESISONLYKNOWNTOTHEAPPLICATIONAND
ANYDIFFERENCESINENDIANFORMATMUSTBEHANDLEDBYTHEAPPLICATION4YPESAND
OBJECTSARESUBJECTTOTHISLIMITATIONWHETHERTHEIRUSEOFOPAQUETYPESISDIRECTOR
INDIRECT
v $ATABASEVERSIONDIFFERENCESARESUPPORTEDASLONGASTHETARGETDATABASEISOFTHE
SAMEORHIGHERVERSIONTHANTHESOURCEDATABASE
#ROSS0LATFORM4RANSPORTABLE4ABLESPACES8443 SUPPORTSCONVERSIONBETWEENMOSTBUTNOTALL
PLATFORMS4ODETERMINEWHETHERYOURPLATFORMISSUPPORTED RUNTHEFOLLOWINGQUERY


#(!04%2 -)'2!4).'4/%8!$!4!

BHB)4G31 -B4;42C5A><ECA0=B?>AC01;4N?;0C5>A<>A34A1H?;0C5>A<N=0<4*

?;0C5>A<N83?;0C5>A<N=0<44=380=N5>A<0C

%08G1PbTSBhbcT\b%#QXc1XV
 %0__[T<PR>B1XV
! 0__[T<PR>Bg'%%#;Xcc[T
 (7?80>_T]E<B;Xcc[T
 $7?>_T]E<B;Xcc[T
$7?Cad%#D=8G;Xcc[T
"7?DG%#QXc1XV
#7?DG80%#QXc1XV
 '81<?^fTa1PbTS;X]dg1XV
(81<iBTaXTb1PbTS;X]dg1XV
 ;X]dg80"!QXc;Xcc[T
 ;X]dg80%#QXc;Xcc[T
 ";X]dgg'%%#QXc;Xcc[T
&<XRa^b^UcFX]S^fb80"!QXc;Xcc[T
'<XRa^b^UcFX]S^fb80%#QXc;Xcc[T
 !<XRa^b^UcFX]S^fbg'%%#QXc;Xcc[T
 &B^[PaXb>_TaPcX]VBhbcT\g'%;Xcc[T
!B^[PaXb>_TaPcX]VBhbcT\g'%%#;Xcc[T
 B^[PaXbJc\L>4"!QXc1XV
!B^[PaXbJc\L>4%#QXc1XV
%XADATAISLITTLE ENDIAN SOIFTHESOURCEDATABASEISALSOLITTLE ENDIAN TABLESPACESMAYBE
TRANSPORTEDASIFTHEPLATFORMWERETHESAME)FTHESOURCEPLATFORMISBIG ENDIAN THENANADDITIONAL
STEPISREQUIRED4OCONVERTATABLESPACEFROMONEPLATFORMTOANOTHER USETHE2-!.2>=E4AC
C01;4B?024OR2>=E4AC30C058;4COMMAND
9OUMAYCONVERTTHEENDIANFORMATOFFILESDURINGTHEBACKUPUSINGTHEFOLLOWINGCOMMAND
A<0=-2>=E4ACC01;4B?024_Pha^[[NSPcP_Pha^[[N\eXTfb
C>?;0C5>A<;X]dgg'%%#QXc
5>A<0Cd bWPaTSNUX[TbD*
)NTHISEXAMPLE2-!.CONVERTSTHEDATAFILESTOANENDIANFORMATCOMPATIBLEWITH%XADATA4HE
CONVERTEDDATAFILESAREUNIQUELYNAMEDAUTOMATICALLY5 ANDSAVEDINTHEd bWPaTSNUX[Tb
DIRECTORY4HISCONVERSIONCANBEDONEONTHESOURCESYSTEMORTHETARGET%XADATA 
4HEFOLLOWINGCOMMANDCONVERTSTHEENDIANFORMATDURINGTHERESTOREOPERATIONON%XADATA
A<0=-2>=E4AC30C058;4_Pha^[[NSPcPSQU_Pha^[[N\eXTfbSQU
5A><?;0C5>A<B^[PaXbJc\L>4%#QXc
31N58;4N=0<4N2>=E4AC
d bWPaTSNUX[Tb_Pha^[[NSPcPSQU30C0
d bWPaTSNUX[Tb_Pha^[[N\eXTfbSQU30C0*
!TABLESPACECANBETRANSPORTEDINDIVIDUALLYORASPARTOFATRANSPORTSET4RANSPORTSETSAREMORE
COMMONBECAUSE MOREOFTENTHANNOT OBJECTDEPENDENCIESEXISTACROSSTABLESPACES&OREXAMPLE
THEREMAYBETABLESINONETABLESPACEANDDEPENDENTMATERIALIZEDVIEWSORINDEXESINANOTHER)NORDER
TOTRANSPORTATABLESPACE YOUMUSTFIRSTPUTITINREAD ONLYMODE4ABLESPACEMETADATAISTHENEXPORTED
USING$ATA0UMPWITHTHEcaP]b_^acPQ[TNcPQ[Tb_PRTbPARAMETER9OUSHOULDALSOSPECIFYTHE
CA0=B?>ACN5D;;N2742:PARAMETERTOENSURESTRICTCONTAINMENTOFTHETABLESPACESBEINGTRANSPORTED4HIS
ENSURESTHATNODEPENDENTOBJECTSLIKEINDEXES EXISTOUTSIDEOFTHETRANSPORTSET2-!.ISTHENUSEDTO


#(!04%2 -)'2!4).'4/%8!$!4!

TAKEABACKUPOFTHETABLESPACESINTHETRANSPORTSET#ONVERSIONBETWEENENDIANFORMATSMAYBEDONE
DURINGTHE2-!.BACKUPORDURINGTHERESTOREONTHETARGETSYSTEM(EREARETHESTEPSFORTRANSPORTING
TABLESPACESTO%XADATA
1. )DENTIFYTABLESPACEOBJECTDEPENDENCIES
2. 3ETTABLESPACESTOREAD ONLYMODE
3. %XPORTMETADATAFORTHETRANSPORTSETUSING$ATA0UMP
4. 4AKEAN2-!.BACKUPOFTHETABLESPACESINTHETRANSPORTSET
5. #OPYTHEEXPORTFILESALONGWITHTHEDATAFILEBACKUPSTO%XADATA
6. 2ESTORETHEDATAFILESFROMTHE2-!.BACKUPTOYOUR%XADATADATABASE)FENDIAN
CONVERSIONISNEEDED USETHE2>=E4AC30C058;4COMMANDTORESTOREANDCONVERTTHE
DATAFILESSIMULTANEOUSLY
7. -AKETHETABLESPACESREADWRITEAGAIN
8. 5SING$ATA0UMP IMPORTTHETABLESPACEMETADATAINTOTHE%XADATADATABASEUSING
THEcaP]b_^acNSPcPUX[TbPARAMETER9OUCANOPTIONALLYREMAPTHESCHEMAOFTHE
TABLESPACECONTENTSUSINGTHEaT\P_NbRWT\PPARAMETER

When to Use Transportable Tablespaces


443AND8443AREUSEFULFORMIGRATINGPORTIONSOFTHESOURCEDATABASEUSINGTHESPEEDOF2-!.)FPARTS
OFYOURDATABASEAREREADYTOMOVETO%XADATABUTOTHERSARENOT 443MAYBEAGOODFIT

What to Watch Out for with the Transportable Tablespace Strategy


#HECKYOUR/RACLEDOCUMENTATIONFORSPECIFICRESTRICTIONSORCAVEATSTHATMAYAPPLYTOYOURDATABASE
7ATCHOUTFORTABLESPACEANDSCHEMANAMECOLLISIONSONTHETARGETDATABASE4ABLESPACESMUSTBEPUT
INREAD ONLYMODEFORTHEMOVE SOTHISWILLINCURDOWNTIME9OUCANRUNAN2-!.BACKUPOFTHE
TABLESPACESWHILETHEYAREINREADWRITEMODETOSEEHOWLONGTHISOPERATIONWILLTAKEBEFOREDECIDING
WHETHER443ISANAPPROPRIATEMETHODORNOTFORYOURMIGRATION

0HYSICAL3TANDBY
)NTHEPHYSICALSTANDBYSTRATEGY THETARGETDATABASEISINSTANTIATEDFROMAFULLBACKUPOFTHESOURCE
DATABASE4HEBACKUPISRESTOREDTO%XADATAINTHESAMEWAYYOUWOULDFORTHEh"ACKUPAND2ESTOREv
STRATEGY/NCETHEDATABASEISRESTOREDTO%XADATA ITISSTARTEDINMOUNTMODEANDKEPTINACONTINUAL
STATEOFRECOVERY!SCHANGESOCCURINTHESOURCEDATABASE ARCHIVEDREDOLOGSAREGENERATEDAND
TRANSMITTEDTOTHE3TANDBYDATABASEWHERETHEYAREAPPLIED2EDO!PPLY 5NLIKETHEh"ACKUPAND
2ESTOREvSTRATEGYTHISDATABASEISKEPTINRECOVERYMODEFORAPERIODOFTIME"ECAUSEARCHIVEDREDOLOGS
ARECONSTANTLYBEINGAPPLIEDTOTHE3TANDBYDATABASE CONVERSIONFROMBIG ENDIANTOLITTLE ENDIAN
FORMATISNOTSUPPORTED3TANDBYDATABASESHAVEBEENAROUNDSINCEVERSIONOF/RACLE4HECAPABILITYIS
INHERENTINTHEDATABASEARCHITECTURE/FCOURSE BACKTHENYOUHADTOWRITESCRIPTSTOMONITORTHE
ARCHIVELOGDESTINATIONONTHESOURCESYSTEMANDTHENCOPYTHEMUSUALLYVIA&40 TOTHE3TANDBY
SYSTEMWHEREANOTHERSCRIPTHANDLEDAPPLYINGTHEMTOTHE3TANDBYDATABASE)NVERSIONI /RACLE


#(!04%2 -)'2!4).'4/%8!$!4!

INTRODUCEDANEWPRODUCTCALLED$ATA'UARDTOMANAGEANDAUTOMATEMANYOFTHOSETEDIOUSTASKSOF
MANAGINGANDMONITORINGTHE3TANDBYENVIRONMENT4ODAY$ATA'UARDPROVIDESTHEFOLLOWINGSERVICES
v 2EDO4RANSPORT3ERVICES
v (ANDLESTHETRANSMISSIONOFARCHIVEDREDOLOGSTOTHETARGETSYSTEM
v 2ESOLVESGAPSINARCHIVEREDOLOGSDUETONETWORKFAILURE
v $ETECTANDRESOLVEMISSINGORCORRUPTARCHIVEDREDOLOGSBYRETRANSMITTING
REPLACEMENTLOGS
v !PPLY3ERVICES
v !UTOMATICALLYAPPLIESARCHIVEDREDOLOGSTOTHE3TANDBYDATABASE
v !LLOWSREAD ONLYACCESSTOTHE3TANDBYDATABASEDURINGREDOAPPLY
v 0ROVIDESROLETRANSITIONMANAGEMENT4HEROLEOFTHESOURCEAND3TANDBY
DATABASESMAYBESWITCHEDTEMPORARILYORPERMANENTLY
v 3WITCHOVER4EMPORARILYSWITCHESTHEROLESOFTHESOURCEAND3TANDBY
DATABASES5SEFULFORFAILINGBACKAMIGRATION
v &AILOVER0ERMANENTCHANGEINROLES5SEFULFORFINALIZINGTHEMIGRATIONTO
%XADATA4HEOLDSOURCEDATABASEBECOMESTHESTANDBYANDISKEPTINSYNC
WITH%XADATAUSING2EDO!PPLY
v $ATA'UARD"ROKER
v 3IMPLIFIESTHECONFIGURATIONANDINSTANTIATIONOFTHE3TANDBYDATABASE
v #ENTRALIZEDCONSOLEFORMONITORINGANDMANAGINGTHE3TANDBYDATABASE
ENVIRONMENT
v 3IMPLIFIESSWITCHOVERFAILOVEROFTHE3TANDBYDATABASE
$ATA'UARDPROVIDESMODESOFREPLICATIONTOTHE3TANDBYDATABASE
Maximum Availability:4RANSACTIONSINTHESOURCEDATABASEDONTCOMMITUNTIL
ALLREDONECESSARYTORECOVERTHE3TANDBYAREWRITTENTOTHEONLINEREDOLOGAND
TOTHESTANDBYREDOLOG
Maximum Performance:4RANSACTIONSDONTCOMMITUNTILTHEYAREWRITTENTO
THESOURCEONLINEREDOLOGS
Maximum Protection:%NSURESZERODATALOSSATTHECOSTOFPERFORMANCEONTHE
SOURCEDATABASE
+EEPINMINDTHATALTHOUGH$ATA'UARDISANEXCELLENTTOOLFORDATABASEMIGRATION THATISNOTITS
ONLYPURPOSE$ATA'UARDSFORTEISPROTECTINGDATABASESFROMMEDIACORRUPTION CATASTROPHICMEDIA
FAILURE ANDSITEFAILURE)TISANINTEGRALCOMPONENTIN/RACLES-AXIMUM!VAILABILITY!RCHITECTURE3OITS
NOSURPRISETHATSOMEOFTHEREPLICATIONMODESMENTIONEDABOVEMAKENOSENSEINTHECONTEXTOF
DATABASEMIGRATION-AXIMUM0ERFORMANCEISTHEREPLICATIONMODEMOSTAPPROPRIATEFORMIGRATING
DATABASES BECAUSEITHASNOIMPACTONTHEPERFORMANCEOFTHESOURCEDATABASE)N-AXIMUM


#(!04%2 -)'2!4).'4/%8!$!4!

0ERFORMANCEMODE THESOURCEDATABASECONTINUESTOFUNCTIONASITALWAYSHAS4RANSACTIONSARENOT
DELAYEDBYNETWORKISSUESORDOWNSTREAMREPLICATIONPROBLEMS)TSALSOWORTHMENTIONINGTHAT$ATA
'UARDFULLYSUPPORTSEITHERASINGLE INSTANCESTANDBYORAN/RACLE2!#STANDBY!NDASOFG2 REDO
CANBEAPPLIEDWHILETHE3TANDBYDATABASEISOPENINREAD ONLYMODE4HEREISALSOSTRONGINTEGRATION
WITH%NTERPRISE-ANAGER'RID#ONTROL

When to use Physical Standby


4HEPHYSICALSTANDBYDATABASEDOESNOTALLOWANYCHANGESTOTHEDATABASEOTHERTHANDATAFILENAME
CHANGES "ECAUSEOFTHIS ITISBESTSUITEDFORDATABASEMIGRATIONSWHERENOCHANGESTOTHETARGET
DATABASEAREREQUIRED)FCHANGESNEEDTOBEMADETHEYWILLHAVETOBEDONEPOST MIGRATION'ENERALLY
SPEAKING THISISLESSOFANISSUEWITH/,40DATABASES BECAUSECHANGESLIKEMIGRATINGTOLARGETABLE
EXTENTSIZES IMPLEMENTINGPARTITIONING ANDIMPLEMENTING(##ARENOTASBENEFICIALASTHEYAREFOR
LARGER$7DATABASES)FGETTINGTO%XADATAASQUICKLYANDSAFELYASPOSSIBLEISYOURGOAL THENPHYSICAL
STANDBYMAYBEAGOODFIT7ITH%XADATASPERFORMANCEANDSCALABILITY POST MIGRATIONTASKSMAYTAKE
FARLESSTIMETOIMPLEMENTTHANYOUMIGHTEXPECT

What to Watch Out for when Considering the Physical Standby Strategy
4HEREARENTMANYTWISTSORTURNSWITHTHEPHYSICALSTANDBYSTRATEGY9OUSHOULDKEEPANEYEONNETWORK
STABILITYANDPERFORMANCE7HILEITISPOSSIBLETOUSE/RACLESCROSS PLATFORMPHYSICALSTANDBYFEATUREFOR
LOW DOWNTIMEMIGRATIONSBETWEENSOMEPLATFORMS YOUHAVENOOPPORTUNITYTODOSUCHMIGRATIONS
ACROSSPLATFORMSWITHDIFFERENTBYTEORDERENDIANORIENTATION 4HEREAREALSOSOME/RACLEVERSION
SPECIFICLIMITATIONS READMOREFROM-Y/RACLE3UPPORTNOTE“Data Guard Support for
Heterogeneous Primary and Physical Standbys in Same Data Guard Configuration”)FALOW DOWNTIME
MIGRATIONBETWEENINCOMPATIBLEPLATFORMSISREQUIRED THENYOUSHOULDCONSIDERTHE,OGICAL3TANDBY
3TREAMS OR'OLDEN'ATESTRATEGIES

!3-2EBALANCE
4HISWASADIFFICULTTOPICTOCOVER BECAUSEOFTHELACKOFDOCUMENTATIONAVAILABLE)TISALSOFARANDAWAY
THEMOSTRESTRICTIVE ANDPOSSIBLYTHESLOWEST METHODOFMIGRATINGTO%XADATA3OWHYDOESITMERIT
INCLUSIONINTHISCHAPTER)TISONEOFTHEMOSTINTERESTINGTOPICSINTHISCHAPTER4HE!3-2EBALANCE
STRATEGYUTILIZES!3-SBUILT INREBALANCINGFEATURETOLITERALLYSHIFT BLOCK BY BLOCK OFFOFCURRENTSTORAGE
ANDONTO%XADATASHIGHPERFORMANCESTORAGECELLHARDWAREWITHZERODOWNTIMETOTHEDATABASE(OWIS
THISPOSSIBLE"EFOREWEGETTOTHATLETSTAKEALOOKATTHERESTRICTIONSFORTHISMIGRATIONSTRATEGY
v 4HEPLATFORMMUSTBE/%,BIT2(%,RELEASELIMITEDSUPPORT 
v 4HEDATABASEVERSIONMUSTBELATESTPATCHRELEASEOFG2ORHIGHERLATESTG2
ISBEST 
v 4HEREMUSTBECURRENTDRIVERSFOR/RACLE2$3/PEN&ABRICS%NTERPRISE
$ISTRIBUTION/&%$ 
v )TMUSTBECONNECTEDTOTHE%XADATA)NFINI"ANDSWITCH
/RACLERECOMMENDSTHEFOLLOWINGKERNELNETWORKPARAMETERSFOR2$3SUPPORT
v ]TcR^aTa\T\NSTUPd[c


#(!04%2 -)'2!4).'4/%8!$!4!

v ]TcR^aTf\T\NSTUPd[c
v ]TcR^aTa\T\N\Pg
v ]TcR^aTf\T\N\Pg
v ]TcX_e#X_N[^RP[N_^acNaP]VT
3OHOWDOESITWORK"ASICALLY ONCEALLPLATFORMHARDWAREANDSOFTWAREREQUIREMENTSAREMET THE
FOLLOWINGSTEPSALLOWYOURCURRENTPRODUCTIONSYSTEMTOJOINTHE%XADATASTORAGENETWORKANDGAIN
ACCESSTOTHESTORAGECELLS
1. !FAMILIARPRE MIGRATIONTASKISTOCONFIGURETHEX]Xc^aP PASSWORDANDORATAB
FILESON%XADATATOALLOWYOUTOSTARTUPYOURDATABASEON%XADATA
2. #ONFIGURETHE)"NETWORKDEVICE GIVINGITAN)0ADDRESSONTHE%XADATASTORAGE
NETWORK
3. #REATETHERT[[X]Xc^aPFILEWITHONELINECONTAININGTHE)0ADDRESSAND
NETWORKMASKFORSERVERONTHESTORAGENETWORK
-RPcTcR^aPR[TRT[[]Tcf^aZR^]UXVRT[[X]Xc^aP
X_PSSaTbb , (! %' ! !#
4. #REATEART[[X_^aPFILECONTAININGTHEADDRESSESFOREACHOFTHESTORAGECELLS
-RPcRT[[X_^aP
RT[[, (! %' !"
RT[[, (! %' !#
RT[[, (! %' !$
5. "RINGTHE)NFINI"ANDDEVICEONLINE
XUR^]UXVXQd_

XQ;X]ZT]RP_)8]UX]X1P]S7FPSSa
')))#')54)'))))))))))))))
X]TcPSSa) (! %' ! 1RPbc) (! %' !!$$<PbZ)!$$!$$!$$
X]Tc%PSSa)UT'))!! )!') "T)TQ#&%#BR^_T);X]Z
+[X]Tb^\XccTS-
6. !TTHISPOINTIFEVERYTHINGISWORKINGYOUSHOULDBEABLETOSEETHE%XADATA
DISKSBYRUNNINGTHECOMMANDFROMTHEORACLEUSERACCOUNTKFODDISKALL
JT]ZSQ )^aPR[T)4G31 LW^\T^aPR[T
-ZU^SSXbZ,P[[
JT]ZSQ )^aPR[T)4G31 LW^\T^aPR[T
-ZU^SSXbZ,P[[

3XbZBXiT?PcWDbTa6a^d_
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
 ) " "%<Q^ (! %' !"30C0N23NNRT[[ +d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
!()("#$%<Q^ (! %' !"A42>N23NNRT[[ +d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
# )#%( "%<Q^ (! %' !"BC064N23NNRT[[ +d]Z]^f]-+d]Z]^f]-


#(!04%2 -)'2!4).'4/%8!$!4!

+[X]Tb^\XccTS-
$")""%<Q^ (! %' !"BHBC4<N23NNRT[[ +d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
%$) " "%<Q^ (! %' !#30C0N23NNRT[[!+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
(")("#$%<Q^ (! %' !#A42>N23NNRT[[!+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
 $)#%( "%<Q^ (! %' !#BC064N23NNRT[[!+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
 &)""%<Q^ (! %' !#BHBC4<N23NNRT[[!+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
 !() " "%<Q^ (! %' !$30C0N23NNRT[["+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
 $&)("#$%<Q^ (! %' !$A42>N23NNRT[["+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
 %()#%( "%<Q^ (! %' !$BC064N23NNRT[["+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-
 ' )""%<Q^ (! %' !$BHBC4<N23NNRT[["+d]Z]^f]-+d]Z]^f]-
+[X]Tb^\XccTS-

>A02;4NB83>A02;4N7><4
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

0B< d P__ !VaXS
0B<!d P__ !VaXS
7. /NCECONNECTIVITYISESTABLISHEDBETWEENTHESERVERANDTHESTORAGECELLS THE
!3-INSTANCEONTHEDATABASESERVERSHOULDBEABLETOADD%XADATAGRIDDISKS
TOITSCURRENT!3-DISKGROUPDISKGROUPSUSINGTHEP[cTaSXbZVa^d_PSSSXbZ
qA410;0=24?>F4A$]^fPXcCOMMAND7HENTHEGRIDDISKSAREADDEDTOTHE
CURRENTDISKGROUPS !3-WILLBEGINREBALANCINGDATAONTOTHENEWDISKSATA
RATEDETERMINEDBYTHE_^fTa]PARAMETEROFTHEPSSSXbZCOMMAND!POWER
RANGEOFnREPRESENTSTHENUMBEROFREBALANCEPROCESSESTHATWILL
PARTICIPATEINTHEOPERATION.OWAITCAUSESTHECOMMANDTORETURNYOUTOTHE
PROMPTRATHERTHANHANGINGUNTILTHEOPERATIONISCOMPLETE
8. 9OUCANSEETHECURRENTSTATUSOFTHEREBALANCEOPERATIONBYQUERYINGTHE
ePb\N^_TaPcX^]VIEWFROM31,
0LUSCONNECTEDTOTHE!3-INSTANCE 
9. !FTERTHEREBALANCEISCOMPLETE THEOLDDISKSCANBEREMOVEDFROMTHEDISK
GROUPSUSINGTHEP[cTaSXbZVa^d_Sa^_SXbZq_^fTa$]^fPXcCOMMAND
!NOTHERDISKGROUPREBALANCEWILLBEGINMOVINGTHEREMAININGDATAOFFOFTHE
OLDDISKSANDONTOTHE%XADATASTORAGEGRIDDISKS
10. /NCEALLDATAHASBEENMIGRATEDONTO%XADATASTORAGE THEDATABASEISSHUT
DOWNANDRESTARTEDON%XADATA"EFORERESTARTINGTHEDATABASE USETHIS
OPPORTUNITYTOUPGRADETHEDISKGROUPDISKGROUPSFROMVERSIONTOIF
NECESSARY
11. 0OST MIGRATIONTASKSMUSTBEPERFORMEDTOADDTHEDATABASETOTHE#LUSTER
2EADY3ERVICESCONFIGURATION


#(!04%2 -)'2!4).'4/%8!$!4!

When to Use ASM Rebalance


!3-2EBALANCEISANEXCELLENTWAYOFLEVERAGING!3-SBUILT INFEATURESTOMIGRATEYOURDATABASEWITH
NEARZERODOWNTIME)TISNOTTHEFASTESTWAYTOMIGRATETO%XADATA ANDTHEREAREALOTOFVERYSTRICT
CONFIGURATIONREQUIREMENTS BUTONCETHESYSTEMISCONFIGUREDTHEMIGRATIONISFAIRLYAUTOMATED)TIS
PROBABLYTHEMOSTRELIABLEANDERRORFREEMETHODFORMIGRATINGYOURDATABASETO%XADATA

What to Watch Out for when Using the ASM Rebalance Strategy
4HISSTRATEGYISNOTWELLUSEDORWELLDOCUMENTED!NDITISNOTFORTHEFAINTOFHEARTANDCERTAINLYNOTFOR
THEINEXPERIENCEDSYSTEMADMINISTRATOR )TREQUIRESSTRONGSYSTEMADMINISTRATIONSKILLSANDSOLID,INUX
SYSTEMSEXPERIENCE3OMEOFTHEPRELIMINARYSTEPS SUCHASINSTALLINGANDCONFIGURINGTHE)NFINI"AND
CARDANDPROPER2$3/&%$DRIVERS CANBEDISRUPTIVETOPRODUCTIONUPTIMEREQUIREMENTS4HISMETHOD
DOESNOTCREATEACOPYOFYOURDATABASE)TMIGRATESYOURCURRENTDATABASEATTHESTORAGELEVEL!SSUCH
STORAGELAYOUTCHANGESLIKEEXTENTSIZING PARTITIONING AND(##COMPRESSIONMUSTBEDONEPOST
MIGRATION!DOWNSIDETOTHE!3-REBALANCEMETHODISTHAT!3-!LLOCATION5NITS!5S CANNOTBE
CHANGEDAFTERTHEDISKGROUPISCREATED%XADATAISMOREEFFICIENTATSCANNING-"!5S SOIFYOURDISK
GROUPSWERECONFIGUREDWITH-"!5S YOUWOULDEVENTUALLYWANTTOCREATENEWDISKGROUPSIN%XADATA
WITH-"!5SIZESANDMIGRATEYOURDATABASETOTHEM

0OST -IGRATION4ASKS
"ECAUSE!3-REBALANCEMAKESNOCHANGESTOTHEDATABASE TASKSLIKERESIZINGEXTENTS PARTITIONINGLARGE
TABLES ANDCOMPRESSINGTABLESWILLALLHAVETOBEDONEPOST MIGRATION4HISCANBEASUBSTANTIALTASKTHAT
TAKESANYWHEREFROMSEVERALDAYSTOSEVERALWEEKSTOCOMPLETE&ORALLPHYSICALMIGRATIONSTRATEGIES
EXCEPT443 YOUWILLNEEDTOPERFORMSOMEPOST MIGRATIONSTEPSTOADDTHEDATABASEINTOTHE#LUSTER
2EADY3ERVICESCONFIGURATION4HEREISNOTHING%XADATA SPECIFICTOTHISPROCESSOTHERTHANCONNECTINGTO
THESTORAGECELLS ITISTHESAMEASFORANYG2DATABASE4HEPROCESSISWELLDOCUMENTEDAND
EXAMPLESAREEASYTOFIND SOWEWONTGOINTOTHEDETAILSHERE BUTTHEBASICSTEPSAREASFOLLOWS
1. 3ETTHEFOLLOWINGINSTANCEPARAMETERSINTHESPFILE
v R[dbcTaNSPcPQPbT,cadT
v R[dbcTaNSPcPQPbTNX]bcP]RTb,!
v =4FN?A>3 X]bcP]RTN]P\T,=4FN?A>3 
v =4FN?A>3!X]bcP]RTN]P\T,=4FN?A>3!
v =4FN?A>3 X]bcP]RTN]d\QTa, 
v =4FN?A>3!X]bcP]RTN]d\QTa,!
v =4FN?A>3 cWaTPS, 
v =4FN?A>3!cWaTPS,!
v =4FN?A>3 d]S^NcPQ[Tb_PRT,d]S^NcQb 
v =4FN?A>3!d]S^NcPQ[Tb_PRT,d]S^NcQb!


#(!04%2 -)'2!4).'4/%8!$!4!

2. )NSTALLTHE2!#SYSTEMOBJECTSBYRUNNINGTHERPcR[dbcb`[SCRIPTASTHESYS
USER
3. 2EGISTERTHENEWDATABASEWITH#LUSTER2EADY3ERVICES#23 
a. 2EGISTERTHEDATABASE
b. 2EGISTERTHEINSTANCES
c. #REATE3ERVICE.AMESFORTHEDATABASE
4. #REATEANADDITIONALREDOTHREADFOREACHINSTANCE.OTETHATTHREADIS
ALREADYACTIVEFORTHEFIRSTINSTANCE
5. #REATEAN5NDOTABLESPACEFOREACHDATABASEINSTANCE.OTETHATONEALREADY
EXISTSFORTHEFIRSTINSTANCE

7RAP5P0HYSICAL-IGRATION3ECTION
0HYSICALMIGRATIONMAYPROVETOBEANEASYMIGRATIONOPTIONIFYOURAPPLICATIONSCHEMAISCOMPLEX
ENOUGHTHATYOUDONTWANTTOTAKEANYLOGICALPATH!LSO PHYSICALMIGRATIONCANPOTENTIALLYBEDONE
WITHVERYLOWDOWNTIME BYRESTORINGAPRODUCTIONCOPYTOTHE%XADATADATABASEASAphysicalSTANDBY
DATABASEANDAPPLYINGPRODUCTIONARCHIVELOGSUNTILITSTIMETOSWITCHOVERANDMAKESTANDBYTHENEW
PRODUCTIONDATABASE(OWEVERTHISAPPROACHCANNOTBEUSEDBETWEENPLATFORMSWITHDIFFERENT
ENDIANNESSANDTHEREAREAFEWMORE/RACLEVERSIONSPECIFICRESTRICTIONS

Dealing with Old init.ora Parameters


7HENMIGRATINGFROMANOLDERVERSIONOF/RACLE YOUMIGHTBETEMPTEDTOKEEPALLTHEOLD
UNDOCUMENTED X]Xc^aPPARAMETERSFORhTUNINGvORhSTABILITYv4HEFACTISTHAT/RACLEHASVERYGOOD
DEFAULTVALUESFORITSPARAMETERSSINCEG ESPECIALLYSOINWHICHLIKELYRUNSONYOUR%XADATA
CLUSTER7HATEVERPROBLEMSWERESOLVEDBYSETTINGTHESEUNDOCUMENTEDPARAMETERSYEARSAGO ARE
PROBABLYFIXEDINTHEDATABASECODEALREADY!LSO MOVINGTO%XADATABRINGSAMUCHBIGGERCHANGETHAN
ANYPARAMETERADJUSTMENTCANINTRODUCE SOTHESTABILITYPOINTISALSOMOOT!SSUCH ITSRECOMMENDED
NOTTOCARRYOVERANYUNDOCUMENTEDPARAMETERSFROMTHEOLDDATABASES UNLESSYOURAPPLICATIONLIKE
/RACLE3IEBEL 3!0 DOCUMENTATIONCLEARLYSTATESITASAREQUIREMENT
!LSO THEREARESOMEDOCUMENTEDPARAMETERSWHICHSHOULDBEUNSETWHENMIGRATINGTO/RACLE
TOALLOW/RACLETOPICKAPPROPRIATEVALUESAUTOMATICALLY
SQNUX[TN\d[cXQ[^RZNaTPSNR^d]c)4HISPARAMETERSHOULDBEUNSET ASSTARTINGFROM
/RACLETHEDATABASECANPICKTHEAPPROPRIATEVALUESFORITAUTOMATICALLY)N
FACT THISWAYTHEREACTUALLYTWODIFFERENTMULTIBLOCKREADCOUNTPARAMETERSUSED
IN/RACLE ONEFORCOSTINGANDONEFOREXECUTION4HISARRANGEMENTGENERALLY
WORKSBETTERTHANLEAVINGTHEPARAMETERSETTOSOMEARBITRARYVALUEWHICHAFFECTS
BOTHTHECOSTINGANDTHEEXECUTION
v _PaP[[T[NTgTRdcX^]N\TbbPVTNbXiT)IFYOUHAVETUNEDTHISPARAMETERINPASTTO
REDUCE081REFLATCHCONTENTIONORPARALLELMESSAGINGOVERHEAD THENYOUCAN
UNSETIT ASTHEDEFAULTVALUEFORTHISPARAMETERISK"STARTINGFROM/RACLE


#(!04%2 -)'2!4).'4/%8!$!4!

Planning VLDB Migration Downtime


7HENYOUAREESTIMATINGTHEDOWNTIMEORDATAMIGRATIONTIME YOUSHOULDONLYRELYONACTUAL
MEASUREMENTSINYOURENVIRONMENT WITHYOURDATA YOURNETWORKCONNECTION DATABASESETTINGSAND
COMPRESSIONOPTIONS7HILEITISPOSSIBLETOLOADRAWDATATOAFULLRACKAT4"HOUR%XADATA6 OREVEN
4"HOUR%XADATA8  YOUPROBABLYWONTGETSUCHLOADINGSPEEDSWHENTHETARGETTABLESARE
COMPRESSEDWITH0A278E4OR@D4AH7867.OMATTERWHICHNUMBERSYOUFINDFROMTHISBOOKOROFFICIAL
SPECS YOUWILLHAVETOTESTEVERYTHINGOUTYOURSELF ENDTOEND4HEREARESOMETEMPORARYWORKAROUNDS
FORIMPROVINGLOADINGRATES FOREXAMPLE IFYOUHAVEENOUGHDISKSPACE YOUCANFIRSTLOADTONON
COMPRESSEDOR4722@D4AH;>F COMPRESSEDTABLESDURINGTHEDOWNTIMEWINDOWANDONCEIN
PRODUCTIONRECOMPRESSINDIVIDUALPARTITIONSWITHHIGHERCOMPRESSIONRATES

Summary
)NTHISLENGTHYCHAPTERWELOOKEDINTOTHEWIDERANGEOFTOOLSAVAILABLEFORMIGRATINGYOURDATATO
%XADATA9OUSHOULDCHOOSETHESIMPLESTAPPROACHYOUCANASTHISREDUCESRISKANDCANALSOSAVEYOUR
OWNTIME7ERECOMMENDYOUEVALUATE$ATA0UMPFIRST ASITCANTRANSFERTHEWHOLEDATABASEOR
SCHEMA!NDITCANDOTHEJOBFASTANDISEVENFLEXIBLEWHENYOUWANTTOADJUSTTHEOBJECT$$,METADATA
INTHEPROCESS/FTEN HOWEVER THISAPPROACHISNOTFASTENOUGHORREQUIRESTOOMUCHTEMPORARYDISK
SPACE)TALLDEPENDSONHOWMUCHDATAYOUHAVETOTRANSFERANDHOWMUCHDOWNTIMEYOUAREALLOWED
7HENMOVING6,$"STHATARETENSOREVENHUNDREDSOFTERABYTESINSIZE YOUMAYHAVETOGETCREATIVE
ANDUSELESSSTRAIGHTFORWARDAPPROACHESLIKEDATABASELINKS COPYINGREAD ONLYDATAINADVANCE OR
PERHAPSDOINGACOMPLETELYINCREMENTALMIGRATIONUSINGONEOFTHEREPLICATIONAPPROACHES
%VERYENTERPRISESDATABASEENVIRONMENTSANDBUSINESSREQUIREMENTSAREDIFFERENT BUTYOUCANUSE
THEMETHODSEXPLAINEDINTHISCHAPTERASBUILDINGBLOCKS9OUMAYNEEDTOCOMBINEMULTIPLETECHNIQUES
IFTHEMIGRATEDDATABASEISVERYLARGEANDTHEALLOWEDDOWNTIMEISSMALL.OMATTERWHICHTECHNIQUES
YOUUSE THEMOSTIMPORTANTTHINGTOREMEMBERISTOTESTEVERYTHING THEWHOLEMIGRATIONPROCESSFROM
ENDTOEND9OUWILLLIKELYFINDANDFIXMANYPROBLEMSINADVANCETHANKSTOSYSTEMATICTESTING'OOD
LUCK


C H A P T E R 14



Storage Layout

)N/RACLEG2 /RACLEINTRODUCED!UTOMATIC3TORAGE-ANAGEMENT!3- ANDCHANGEDTHEWAYWE


THINKOFMANAGINGDATABASESTORAGE%XADATAISTIGHTLYINTEGRATEDWITH!3-ANDPROVIDESTHEUNDERLYING
DISKSTHATHAVETRADITIONALLYBEENPRESENTEDTO!3-BYTHEOPERATINGSYSTEM,OOKINGATALLTHEVARIOUS
INTRICACIESOFCELLSTORAGECANBEALITTLEDAUNTINGATFIRST4HEREARESEVERALLAYERSOFABSTRACTIONBETWEEN
PHYSICALDISKSANDTHE!3-DISKGROUPSMANY$"!SAREFAMILIARWITH)FYOUVENEVERWORKEDWITH
/RACLES!3-PRODUCTTHEREWILLBEALOTOFNEWTERMSANDCONCEPTSTOUNDERSTANDTHEREASWELL)N
#HAPTERWEDISCUSSEDTHEUNDERLYINGLAYERSOF%XADATASTORAGEFROMTHEPHYSICALDISKSUPTHROUGHTHE
CELLDISKLAYER4HISCHAPTERWILLPICKUPWHERE#HAPTERLEFTOFF ANDDISCUSSHOWCELLDISKSAREUSEDTO
CREATEGRIDDISKSFOR!3-STORAGE7ELLBRIEFLYDISCUSSTHEUNDERLYINGDISKARCHITECTUREOFTHESTORAGECELL
ANDHOW,INUXPRESENTSPHYSICALDISKSTOTHEAPPLICATIONLAYER&ROMTHERE WELLTAKEALOOKATTHE
OPTIONSFORCARVINGUPANDPRESENTING%XADATAGRIDDISKSTOTHEDATABASETIER4HEAPPROACH/RACLE
RECOMMENDSISTOCREATEAFEWLARGEhPOOLSvOFDISKSACROSSALLSTORAGECELLS7HILETHISAPPROACH
GENERALLYWORKSWELLFROMAPERFORMANCESTANDPOINT THEREAREREASONSTOCONSIDERALTERNATIVESTRATEGIES
3OMETIMES ISOLATINGASETOFSTORAGECELLSTOFORMASEPARATESTORAGEGRIDISDESIRABLE4HISPROVIDES
SEPARATIONFROMMORECRITICALSYSTEMSWITHINTHE%XADATAENCLOSURESOTHATPATCHESMAYBEINSTALLEDAND
TESTEDBEFORETHEYAREIMPLEMENTEDINPRODUCTION!LONGTHEWAYWELLTAKEALOOKATHOW!3-PROVIDES
FAULTRESILIENCYANDSTORAGEVIRTUALIZATIONTODATABASES,ASTLY WELLTAKEALOOKATHOWSTORAGESECURITYIS
IMPLEMENTEDON%XADATA4HESTORAGECELLISAHIGHLYPERFORMANT HIGHLYCOMPLEX ANDHIGHLY
CONFIGURABLEBLENDOFHARDWAREANDSOFTWARE4HISCHAPTERWILLTAKEACLOSELOOKATHOWALLTHEVARIOUS
PIECESWORKTOGETHERTOPROVIDEFLEXIBLE HIGH PERFORMANCESTORAGETO/RACLEDATABASES

Exadata Disk Architecture


7HEN,INUXBOOTSUPITRUNSASCANTOIDENTIFYDISKSATTACHEDTOTHESERVER7HENADISKISFOUND THE/3
DETERMINESTHEDEVICEDRIVERNEEDEDANDCREATESABLOCKDEVICECALLEDA,5.FORAPPLICATIONACCESS
7HILEITISPOSSIBLEFORAPPLICATIONSTOREADANDWRITEDIRECTLYTOTHESEBLOCKDEVICES ITISNOTACOMMON
PRACTICE$OINGSOSUBJECTSTHEAPPLICATIONTOCHANGESTHATARECOMPLICATEDTODEALWITH&OREXAMPLE
BECAUSEDEVICENAMESAREDYNAMICALLYGENERATEDONBOOTUP ADDINGORREPLACINGADISKCANCAUSEALLOF
THEDISKDEVICENAMESTOCHANGE!3-ANDDATABASESNEEDFILEPERMISSIONSTOBESETTHATWILLALLOW
READWRITEACCESSTOTHESEDEVICESASWELL)NEARLIERRELEASESOF!3-THISWASMANAGEDBYTHESYSTEM
ADMINISTRATORTHROUGHTHEUSEOFNATIVE,INUXCOMMANDSLIKEaPfANDdSTe%XADATASHIELDSSYSTEM
ADMINISTRATORSAND$"!SFROMTHESECOMPLEXITIESTHROUGHVARIOUSLAYERSOFABSTRACTION#ELLDISKS
PROVIDETHEFIRSTABSTRACTIONLAYERFOR,5.S#ELLDISKSAREUSEDBYRT[[baeTOMANAGE)/RESOURCESAT
THESTORAGECELL'RIDDISKSARETHENEXTLAYEROFABSTRACTIONANDARETHEDISKDEVICESPRESENTEDTOTHE
DATABASESERVERSAS!3-$ISKS&IGURE SHOWSHOWCELLDISKSANDGRIDDISKSFITINTOTHEOVERALLSTORAGE
ARCHITECTUREOFAN%XADATASTORAGECELL


#(!04%2 34/2!'%,!9/54

Cell System Cell System


Linux O/S
Area Area

Grid Disk 1
Grid Disk 2
Physical Grid Disk 3
LUN Cell Disk
Disk Grid Disk n

Cell Disk
Figure 14-1. The relationship between physical disks and grid disks

7ITHTHEINTRODUCTIONOF!3- /RACLEPROVIDEDAWAYTOCOMBINEMANYPHYSICALDISKSINTOASINGLE
STORAGEVOLUMECALLEDAdisk group$ISKGROUPSARETHE!3-REPLACEMENTFORTRADITIONALFILESYSTEMSAND
AREUSEDTOIMPLEMENT/RACLES3!-%3TRIPEAND-IRROR%VERYTHING METHODOLOGYFOROPTIMIZINGDISK
PERFORMANCE!STHENAMEIMPLIES THEGOALOF3!-%ISTOSPREAD)/EVENLYACROSSALLPHYSICALDISKSIN
THESTORAGEARRAY6IRTUALIZINGSTORAGEINTHISWAYALLOWSMULTIPLEDATABASESTOSHARETHESAMEPHYSICAL
DISKS)TALSOALLOWSPHYSICALDISKSTOBEADDEDORREMOVEDWITHOUTINTERRUPTINGDATABASEOPERATIONS)FA
DISKMUSTBEREMOVED !3-AUTOMATICALLYMIGRATESITSDATATOTHEOTHERDISKSINTHEDISKGROUPBEFOREIT
ISDROPPED7HENADISKISADDEDTOADISKGROUP !3-AUTOMATICALLYREBALANCESDATAFROMOTHERDISKS
ONTOTHENEWDISK)NAVERYBASIC!3-CONFIGURATION ,5.SAREPRESENTEDTO!3-AS!3-DISKS!3-
DISKSARETHENUSEDTOCREATEDISKGROUPS WHICHINTURNAREUSEDTOSTOREDATABASEFILESSUCHASDATAFILES
CONTROLFILES ANDONLINEREDOLOGS4HE,INUXOPERATINGSYSTEMPRESENTS,5.STO!3-ASNATIVEBLOCK
DEVICESSUCHASSTebSP %XADATAVIRTUALIZESPHYSICALSTORAGETHROUGHTHEUSEOFGRIDDISKSAND!3-
DISKGROUPS'RIDDISKSAREUSEDFORCARVINGUPCELLDISKSSIMILARTOTHEWAYPARTITIONSAREUSEDTOCARVEUP
PHYSICALDISKDRIVES&IGURE SHOWSTHERELATIONSHIPBETWEENCELLDISKS GRIDDISKS AND!3-DISK
GROUPS

ASM Disk Group

Grid Disk 1
Grid Disk 2
Grid Disk 3
Grid Disk n

Cell Disk 1

Grid Disks 1-n


Figure 14-2. ASM disk group with its underlying grid disks, and cell disks


#(!04%2 34/2!'%,!9/54

&AILURE'ROUPS
"EFOREWETALKINMOREDETAILABOUTGRIDDISKS LETSTAKEABRIEFDETOURANDTALKABOUTHOWDISK
REDUNDANCYISHANDLEDINTHE!3-ARCHITECTURE!3-USESREDUNDANTSETSOF!3-DISKSCALLEDfailure
groupsTOPROVIDEMIRRORING4RADITIONAL2!)$MIRRORINGMAINTAINSABLOCK FOR BLOCKDUPLICATEOFTHE
ORIGINALDISK!3-FAILUREGROUPSPROVIDEREDUNDANCYBYASSIGNING!3-DISKSTOFAILUREGROUPSAND
GUARANTEEINGTHATTHEORIGINALANDMIRRORCOPYOFABLOCKDONOTRESIDEWITHINTHESAMEFAILUREGROUP)T
ISCRITICALLYIMPORTANTTOSEPARATEPHYSICALDISKSINTOSEPARATEFAILUREGROUPS%XADATADOESTHISBY
ASSIGNINGTHEGRIDDISKSFROMEACHSTORAGECELLTOASEPARATEFAILUREGROUPS&OREXAMPLE THEFOLLOWING
LISTINGSHOWSTHEFAILGROUPSANDGRIDDISKSFORSTORAGECELLS !STHENAMESIMPLY THESEFAILGROUPS
CORRESPONDTOSTORAGECELLSn4HESEFAILGROUPSWERECREATEDANDNAMEDAUTOMATICALLYBY!3-WHEN
THEGRIDDISKSWERECREATED
BHB)0B<!-bT[TRcUPX[Va^d_]P\TUa^\ePb\NSXbZ^aSTaQh !

508;6A>D?=0<4

24;; 30C0N36N23NN24;; 
24;; 30C0N3623N N24;; 
24;; 30C0N3623N!N24;; 
24;; 30C0N3623N"N24;; 

24;;!30C0N3623NN24;;!
24;;!30C0N3623N N24;;!
24;;!30C0N3623N!N24;;!
24;;!30C0N3623N"N24;;!

24;;"30C0N3623NN24;;"
24;;"30C0N3623N N24;;"
24;;"30C0N3623N!N24;;"
24;;"30C0N3623N"N24;;"
&IGURE SHOWSTHERELATIONSHIPBETWEENTHE30C0N36DISKGROUPANDTHEFAILUREGROUPS 24;;
24;;! AND24;;".OTETHATTHISDOESNOTINDICATEWHICHLEVELOFREDUNDANCYISBEINGUSED ONLYTHAT
THE30C0N36DISKGROUPHASITSDATAALLOCATEDACROSSTHREEFAILUREGROUPS


#(!04%2 34/2!'%,!9/54

DATA_DG

CELL01
CELL03

CELL02

Figure 14-3. ASM failure groups CELL01 – CELL03

4HEREARETHREETYPESOFREDUNDANCYIN!3-%XTERNAL .ORMAL AND(IGH


External Redundancy.OREDUNDANCYISPROVIDEDBY!3-)TISASSUMEDTHAT
THESTORAGEARRAY USUALLYA3!. ISPROVIDINGADEQUATEREDUNDANCYINMOST
CASES2!)$ 2!)$ OR2!)$4HISHASBECOMETHEMOSTCOMMONMETHOD
WHERELARGESTORAGEAREANETWORKSAREUSEDFOR!3-STORAGE)NTHE%XADATA
STORAGEGRID !3-PROVIDESTHEONLYMECHANISMFORMIRRORING)F%XTERNAL
2EDUNDANCYWEREUSED THELOSSOFASINGLEDISKDRIVEWOULDMEANA
CATASTROPHICLOSSOFALL!3-DISKGROUPSUSINGTHATDISK)TALSOMEANSTHATEVEN
THETEMPORARYLOSSOFASTORAGECELLREBOOT CRASH ORTHELIKE WOULDMAKEALL
DISKGROUPSUSINGSTORAGEONTHEFAILEDCELLUNAVAILABLEFORTHEDURATIONOFTHE
OUTAGE
Normal Redundancy.ORMAL2EDUNDANCYMAINTAINSTWOCOPIESOFDATABLOCKS
INSEPARATEFAILUREGROUPS$ATABASESWILLALWAYSATTEMPTTOREADFROMTHE
PRIMARYCOPYOFADATABLOCKFIRST3ECONDARYCOPIESAREONLYREADWHENTHE
PRIMARYBLOCKSAREUNAVAILABLE!TLEASTTWOFAILUREGROUPSAREREQUIREDFOR
.ORMAL2EDUNDANCY BUTMANYMORETHANTHATMAYBEUSED&OREXAMPLE AN
%XADATAFULLRACKCONFIGURATIONHASSTORAGECELLS ANDEACHSTORAGECELL
CONSTITUTESAFAILUREGROUP7HENDATAISWRITTENTOTHEDATABASE THEFAILURE
GROUPUSEDFORTHEPRIMARYCOPYOFABLOCKROTATESFROMFAILUREGROUPTOFAILURE
GROUPINAROUND ROBINFASHION4HISENSURESTHATDISKSINALLFAILUREGROUPS
PARTICIPATEINREADOPERATIONS
High Redundancy(IGH2EDUNDANCYISSIMILARTO.ORMAL2EDUNDANCYEXCEPT
THATTHREECOPIESOFDATABLOCKSAREMAINTAINEDINSEPARATEFAILUREGROUPS


#(!04%2 34/2!'%,!9/54

'RID$ISKS
'RIDDISKSARECREATEDWITHINCELLDISKS WHICHYOUMAYRECALLAREMADEUPOFPHYSICALDISKSAND&LASH
#ACHEMODULES)NASIMPLECONFIGURATIONONEGRIDDISKCANBECREATEDPERCELLDISK-ORECOMPLEX
CONFIGURATIONSHAVEMULTIPLEGRIDDISKSPERCELLDISK4HE#ELL#,)COMMAND [XbcVaXSSXbZDISPLAYSTHE
VARIOUSCHARACTERISTICSOFGRIDDISKS&OREXAMPLE THEFOLLOWINGOUTPUTSHOWSTHERELATIONSHIPBETWEEN
GRIDDISKSANDCELLDISKS THETYPEOFDEVICEONWHICHTHEYARECREATED ANDTHEIRSIZE
JT]ZRT[")a^^cLa^^c
-RT[[R[X
2T[[2;8)AT[TPbT ! " ?a^SdRcX^]^]BPc>Rc!" &)!")"!23C! 

2^_haXVWcR!&!(>aPR[T0[[aXVWcbaTbTaeTS
2T[[4UUXRXT]RhAPcX^)!<

2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TRT[[SXbZSXbZch_TbXiT
30C0N23NNRT[["23NNRT[["7PaS3XbZ !'!' !$6
30C0N23N NRT[["23N NRT[["7PaS3XbZ !'!' !$6
q
5;0B7N53NNRT[["53NNRT[["5[PbW3XbZ#&' !$6
5;0B7N53N NRT[["53N NRT[["5[PbW3XbZ#&' !$6
q
!3-DOESNTKNOWANYTHINGABOUTPHYSICALDISKSORCELLDISKS'RIDDISKSAREWHATTHESTORAGECELL
PRESENTSTOTHEDATABASESERVERSAS!3-DISKS TOBEUSEDFOR#LUSTERWAREANDDATABASESTORAGE!3-
USESGRIDDISKSTOCREATEDISKGROUPSINTHESAMEWAYCONVENTIONALBLOCKDEVICESAREUSEDONANON
%XADATAPLATFORM4OILLUSTRATETHIS THEFOLLOWINGQUERYSHOWSWHAT!3-DISKSLOOKLIKEONANON
%XADATASYSTEM
BHB)0B< -bT[TRc_PcWc^cP[N\QUPX[Va^d_
Ua^\ePb\NSXbZ
^aSTaQhUPX[Va^d_Va^d_N]d\QTa_PcW*

?0C7C>C0;N<1508;6A>D?

STebSS  ###30C0 
STebST  ###30C0!
q
STebSY "' %A42> 
STebSZ "' %A42>!
q
4HESAMEQUERYON%XADATAREPORTSGRIDDISKSTHATHAVEBEENCREATEDATTHESTORAGECELL
BHB)0B< -bT[TRc_PcWc^cP[N\QUPX[Va^d_
Ua^\ePb\NSXbZ
^aSTaQhUPX[Va^d_Va^d_N]d\QTa_PcW*

?0C7C>C0;N<1508;6A>D?

^ (! %' !"30C0N23NNRT[[  " "%24;; 
^ (! %' !"30C0N23N NRT[[  " "%24;; 
^ (! %' !"30C0N23N!NRT[[  " "%24;; 


#(!04%2 34/2!'%,!9/54

q
^ (! %' !"A42>N23NNRT[[ ("#$%24;; 
^ (! %' !"A42>N23N NRT[[ ("#$%24;; 
^ (! %' !"A42>N23N!NRT[[  !"!%#24;; 
q
^ (! %' !#30C0N23NNRT[[! " "%24;;!
^ (! %' !#30C0N23N NRT[[! " "%24;;!
^ (! %' !#30C0N23N!NRT[[! " "%24;;!
q
^ (! %' !#A42>N23NNRT[[!("#$%24;;!
^ (! %' !#A42>N23N NRT[[!("#$%24;;!
^ (! %' !#A42>N23N!NRT[[! !"!%#24;;!
q
^ (! %' !$30C0N23NNRT[[" " "%24;;"
^ (! %' !$30C0N23N NRT[[" " "%24;;"
^ (! %' !$30C0N23N!NRT[[" " "%24;;"
q
^ (! %' !$A42>N23NNRT[["("#$%24;;"
^ (! %' !$A42>N23N NRT[["("#$%24;;"
^ (! %' !$A42>N23N!NRT[[" !"!%#24;;"
q
4YINGITALLTOGETHER &IGURE SHOWSHOWTHELAYERSOFSTORAGEFITTOGETHER FROMTHESTORAGECELLTO
THE!3-DISKGROUP.OTE THATTHE,INUX/3PARTITIONSONTHEFIRSTTWOCELLDISKSINEACHSTORAGECELLARE
IDENTIFIEDBYADOTTEDLINE7ELLTALKALITTLEMOREABOUTTHE/3PARTITIONSLATERINTHECHAPTER ANDIN
MUCHMOREDETAILIN#HAPTER


#(!04%2 34/2!'%,!9/54

!3-$ISK'ROUPS

DATA_DG RECO_DG SYSTEM_DG

CELL01 CELL03 CELL01 CELL03 CELL01 CELL03

CELL02 CELL02 CELL02

Linux O/S 'RID$ISKS

SYSTEM_DG

Storage Cell 1 DATA_DG


Failure Group: CELL01
RECO_DG
Cell Disk 1 Cell Disk 2 Cell Disk 3 Cell Disk 4 Cell Disk 10 Cell Disk 11 Cell Disk 12

SYSTEM_DG
DATA_DG
Storage Cell 2
Failure Group: CELL02 RECO_DG

Cell Disk 1 Cell Disk 2 Cell Disk 3 Cell Disk 4 Cell Disk 10 Cell Disk 11 Cell Disk 12

SYSTEM_DG
DATA_DG
Storage Cell 3
Failure Group: CELL03 RECO_DG

Cell Disk 1 Cell Disk 2 Cell Disk 3 Cell Disk 4 Cell Disk 10 Cell Disk 11 Cell Disk 12

Figure 14-4. Storage virtualization on Exadata

3TORAGE!LLOCATION
$ISKDRIVESSTOREDATAINCONCENTRICBANDSCALLEDtracks"ECAUSETHEOUTERTRACKSOFADISKHAVEMORE
SURFACEAREA THEYAREABLETOSTOREMOREDATATHANTHEINNERTRACKS!SARESULT DATATRANSFERRATESARE
HIGHERFORTHEOUTERTRACKSANDDECLINESLIGHTLYASYOUMOVETOWARDTHEINNERMOSTTRACK&IGURE 
SHOWSHOWTRACKSARELAIDOUTACROSSTHEDISKSURFACEFROMFASTESTTOSLOWEST


#(!04%2 34/2!'%,!9/54

Fastest Track

Slowest Track
Figure 14-5. Disk tracks

%XADATAPROVIDESTWOPOLICIESFORALLOCATINGGRIDDISKSTORAGEACROSSTHESURFACEOFDISKDRIVES4HE
FIRSTMETHODISTHEDEFAULTBEHAVIORFORALLOCATINGSPACEONCELLDISKS)THASNOOFFICIALNAME SOFOR
PURPOSESOFTHISDISCUSSION)LLREFERTOITASTHEdefault policy4HEOTHERALLOCATIONPOLICY/RACLECALLS
interleaving4HESETWOALLOCATIONPOLICIESAREDETERMINEDWHENTHECELLDISKSARECREATED)NTERLEAVING
MUSTBEEXPLICITLYENABLEDUSINGTHEX]cTa[TPeX]VPARAMETEROFTHERaTPcTRT[[SXbZCOMMAND&ORA
COMPLETEDISCUSSIONONCREATINGCELLDISKSREFERTOCHAPTER

Fastest Available Tracks First


4HEDEFAULTPOLICYSIMPLYALLOCATESSPACESTARTINGWITHTHEFASTESTAVAILABLETRACKSFIRST MOVINGINWARDAS
SPACEISCONSUMED5SINGTHISPOLICY THEFIRSTGRIDDISKCREATEDONEACHCELLDISKWILLBEGIVENTHEFASTEST
STORAGE WHILETHELASTGRIDDISKCREATEDWILLBERELEGATEDTOTHESLOWER INNERTRACKSOFTHEDISKSURFACE
7HENPLANNINGYOURSTORAGEGRID REMEMBERTHATGRIDDISKSARETHEBUILDINGBLOCKSFOR!3-DISKGROUPS
4HESEDISKGROUPSWILLINTURNBEUSEDTOSTORETABLES INDEXES ONLINEREDOLOGS ARCHIVEDREDOLOGS AND
SOON4OMAXIMIZEDATABASEPERFORMANCE FREQUENTLYACCESSEDOBJECTSSUCHASTABLES INDEXES AND
ONLINEREDOLOGS SHOULDBESTOREDINTHEHIGHESTPRIORITYGRIDDISKS,OWPRIORITYGRIDDISKSSHOULDBE
USEDFORLESSPERFORMANCESENSITIVEOBJECTSSUCHASDATABASEBACKUPS ARCHIVEDREDOLOGS ANDFLASHBACK
LOGS&IGURE SHOWSHOWGRIDDISKSAREALLOCATEDUSINGTHEDEFAULTALLOCATIONPOLICY


#(!04%2 34/2!'%,!9/54

3rd Grid Disk


st (STAGE_DG Disk Group) 2nd Grid Disk
1 Grid Disk (RECO_DG Disk Group)
(DATA_DG Disk group)


Figure 14-6. The default allocation policy

4ABLE SHOWSTHEPERFORMANCEEFFECTONTHE!3-DISKGROUPSFROMTHEFIRSTTOTHELASTGRIDDISK
CREATEDWHENUSINGTHEDEFAULTALLOCATIONPOLICY9OUWONTFINDTHETERMh)/0ERFORMANCE2ATINGvIN
THE/RACLEDOCUMENTATION)TSATERM)MCOININGHERETODESCRIBETHERELATIVEPERFORMANCECAPABILITIES
OFEACHDISKGROUPDUETOITSLOCATIONONTHESURFACEOFTHEPHYSICALDISKDRIVE

Table 14-1. I/O Performance – Default Allocation Policy

ASM Disk Group I/O Performance Rating


30C0N36 

A42>N36 

BC064N36 

&OURTHDISKGROUP 

BHBC4<N36 

Interleaving
4HEOTHERPOLICY INTERLEAVING ATTEMPTSTOEVENOUTPERFORMANCEOFTHEFASTERANDSLOWERTRACKSBY
ALLOCATINGSPACEINANALTERNATINGFASHIONBETWEENTHESLOWERANDFASTERTRACKSOFTHEDISKS4HISISDONE
BYSPLITTINGEACHCELLDISKINTOTWOREGIONS ANOUTERREGIONANDANINNERREGION'RIDDISKSARESLICESOF
CELLDISKSTHATWILLBEUSEDTOCREATE!3-DISKGROUPS&OREXAMPLE THEFOLLOWINGCOMMANDCREATES
GRIDDISKSONEPERPHYSICALDISKSEE&IGURE  ON#ELLTOBEUSEDFORTHE30C0N36DISKGROUP


#(!04%2 34/2!'%,!9/54

2T[[2;8-2A40C46A8338B:0;;70A338B:?A458G,30C0N36bXiT,&##%' "6
4HESEGRIDDISKSWEREUSEDTOCREATETHEFOLLOWING$!4!?$'DISKGROUP.OTICEHOWEACHGRIDDISK
WASCREATEDONASEPARATECELLDISK
BHB)0B<!-bT[TRcSV]P\TSXbZVa^d_
bdQbcaS]P\T% !RT[[NSXbZ
S]P\TVaXSNSXbZ
Ua^\ePb\NSXbZVa^d_SV
ePb\NSXbZS
fWTaTSVVa^d_N]d\QTa,SVa^d_N]d\QTa
P]SSV]P\T,30C0
P]SUPX[Va^d_,24;;"
^aSTaQh !*

38B:6A>D?24;;N38B:6A83N38B:

30C0N3623NN24;;"30C0N36N23NN24;;"
30C0N3623N N24;;"30C0N36N23N N24;;"
30C0N3623N!N24;;"30C0N36N23N!N24;;"
30C0N3623N"N24;;"30C0N36N23N"N24;;"
q
30C0N3623N N24;;"30C0N36N23N N24;;"
30C0N3623N N24;;"30C0N36N23N N24;;"
5SINGINTERLEAVINGINTHISEXAMPLE 30C0N36N23NN24;;"THEFIRSTGRIDDISK ISALLOCATEDTOTHEOUTER
MOSTTRACKSOFTHEOUTERFASTEST REGIONOFTHE23NN24;;"CELLDISK4HENEXTGRIDDISK
30C0N36N23N N24;;" ISCREATEDONTHEOUTERMOSTTRACKSOFTHESLOWER INNERREGIONOFCELLDISK
23N N24;;"4HISPATTERNCONTINUESUNTILALLGRIDDISKSAREALLOCATED7HENTHENEXTSETOFGRIDDISKS
ISCREATEDFORTHEA42>N36DISKGROUP THEYSTARTWITHTHEINNERREGIONOFCELLDISKANDALTERNATEFROM
INNERTOOUTERREGIONUNTILALLGRIDDISKSARECREATED&IGURE SHOWSHOWTHEINTERLEAVINGPOLICY
WOULDLOOKIFTWOGRIDDISKGROUPSWERECREATED
Second Disk Group
(RECO_DG)
Cell Disk 1
Outer Region
Cell Disk 2 (faster)

Cell Disk 3
Inner Region
(slower)

First Disk Group


(DATA_DG)

Figure 14-7. The interleaving allocation policy


#(!04%2 34/2!'%,!9/54

4ABLE SHOWSTHEPERFORMANCEEFFECTONTHE!3-DISKGROUPSFROMTHEFIRSTTOTHELASTGRIDDISK
CREATEDWHENTHEINTERLEAVINGALLOCATIONPOLICYISUSED

Table 14-2. I/O Performance – Interleaving Policy

ASM Disk Group I/O Performance Rating


30C0N36 

A42>N36 

BHBC4<N36 

&OURTHDISKGROUP 

&IFTHDISKGROUP 

!SYOUCANSEE THEMAINDIFFERENCEBETWEENTHEDEFAULTPOLICYANDTHEINTERLEAVINGPOLICYISTHAT
DEFAULTPROVIDESFINER GRAINEDCONTROLOVER!3-DISKS7ITHTHEDEFAULTPOLICYYOUHAVETHEABILITYTO
CHOOSEWHICHSETOFGRIDDISKSWILLBEGIVENTHEABSOLUTEFASTESTPOSITIONONTHEDISK4HEINTERLEAVING
POLICYHASTHEEFFECTOFEVENINGOUTTHEPERFORMANCEOFGRIDDISKS)NPRACTICE THISGIVESTHEFIRSTTWOSETS
OFGRIDDISKSFOR30C0N36ANDA42>N36 THESAMEPERFORMANCECHARACTERISTICS4HISMAYBEUSEFULIFTHE
PERFORMANCEDEMANDSOFTHEFIRSTTWODISKGROUPSAREEQUAL)NOUREXPERIENCETHISISRARELYTHECASE
5SUALLYTHEREISACLEARWINNERWHENITCOMESTOTHEPERFORMANCEDEMANDSOFADATABASEENVIRONMENT
4ABLES INDEXES ONLINEREDOLOGSTHE30C0N36DISKGROUP HAVEMUCHHIGHERPERFORMANCEREQUIREMENTS
THANDATABASEBACKUPS ARCHIVEDREDOLOGS ANDFLASHBACKLOGS WHICHAREUSUALLYSTOREDINTHEA42>DISK
GROUP5NLESSTHEREARESPECIFICREASONSFORUSINGINTERLEAVING WERECOMMENDUSINGTHEDEFAULTPOLICY

Creating Grid Disks


"EFOREWERUNTHROUGHAFEWEXAMPLESOFHOWTOCREATEGRIDDISKS LETSTAKEAQUICKLOOKATSOMEOFTHEIR
KEYATTRIBUTES
v -ULTIPLEGRIDDISKSMAYBECREATEDONASINGLECELLDISK BUTAGRIDDISKMAYNOTSPAN
MULTIPLECELLDISKS
v 3TORAGEFORGRIDDISKSISALLOCATEDIN-!LLOCATION5NITS!5S ANDISROUNDEDDOWN
IFTHESIZEREQUESTEDISNOTAMULTIPLEOFTHE!5SIZE
v 'RIDDISKSMAYBECREATEDONEATATIMEORINGROUPSWITHACOMMONNAMEPREFIX
v 'RIDDISKNAMESMUSTBEUNIQUEWITHINASTORAGECELLANDSHOULDBEUNIQUEACROSSALL
STORAGECELLS
v 'RIDDISKNAMESSHOULDINCLUDETHENAMEOFTHECELLDISKONWHICHTHEYRESIDE
/NCEAGRIDDISKISCREATED ITSNAMEISVISIBLEFROM!3-INTHEE0B<N38B:VIEW)NOTHERWORDS GRID
DISKS!3-DISKS)TISVERYIMPORTANTTONAMEGRIDDISKSINSUCHAWAYTHATTHEYCANEASILYBEASSOCIATED
WITHTHEPHYSICALDISKTOWHICHTHEYBELONGINTHEEVENTOFDISKFAILURE4OFACILITATETHIS GRIDDISKNAMES
SHOULDINCLUDEBOTHOFTHEFOLLOWING


#(!04%2 34/2!'%,!9/54

v 4HENAMEOFTHE!3-DISKGROUPFORWHICHITWILLBEUSED
v 4HECELLDISKNAMEWHICHINCLUDESTHENAMEOFTHESTORAGECELL
&IGURE SHOWSTHEPROPERLYFORMATTEDNAMEFORAGRIDDISKBELONGINGTOTHEC4BCN36DISKGROUP
CREATEDONCELLDISK23NNRT[["

TEST_DG_CD_00_cell03

Disk Group Cell Disk


Figure 14-8. Grid disk naming

#REATING'RID$ISKS
4HE#ELL#,)COMMANDRaTPcTVaXSSXbZISUSEDTOCREATEGRIDDISKS)TMAYBEUSEDTOCREATEINDIVIDUAL
GRIDDISKSONEATATIMEORINGROUPS)FGRIDDISKSARECREATEDONEATATIME ITISUPTOYOUTOPROVIDETHE
COMPLETEGRIDDISKNAME4HEFOLLOWINGEXAMPLECREATESONEPROPERLYNAMED-"GRIDDISKONCELL
DISK23NNRT[[")FWEHADOMITTEDTHEbXiT, <PARAMETER THERESULTINGGRIDDISKWOULDHAVE
CONSUMEDALLFREESPACEONTHECELLDISK
2T[[2;8-RaTPcTVaXSSXbZC4BCN36N23NNRT[["~
RT[[SXbZ,23NNRT[["bXiT, <

6aXS3XbZC4BCN36N23NNRT[["bdRRTbbUd[[hRaTPcTS

2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TRT[[SXbZbXiT~
fWTaT]P\T,C4BCN36N23NNRT[["

C4BCN36N23NNRT[["23NNRT[["(%<
4HEREAREDRIVESPERSTORAGECELL ANDTHENUMBEROFSTORAGECELLSVARIESFROM FORAQUARTERRACK
TO FORAFULLRACK4HATMEANSYOUWILLBECREATINGAMINIMUMOFGRIDDISKSFORAQUARTERRACK AND
UPTOGRIDDISKSFORAFULLRACK&ORTUNATELY #ELL#,)PROVIDESAWAYTOCREATEALLTHEGRIDDISKSNEEDED
FORAGIVEN!3-DISKGROUPINONECOMMAND&OREXAMPLE THEFOLLOWINGCOMMANDCREATESALLTHEGRID
DISKSFORTHE!3-DISKGROUPC4BCN36
2T[[2;8-RaTPcTVaXSSXbZP[[WPaSSXbZ_aTUXg,C4BCbXiT, <

6aXS3XbZC4BCN23NNRT[["bdRRTbbUd[[hRaTPcTS
6aXS3XbZC4BCN23N NRT[["bdRRTbbUd[[hRaTPcTS
q
6aXS3XbZC4BCN23N NRT[["bdRRTbbUd[[hRaTPcTS
6aXS3XbZC4BCN23N NRT[["bdRRTbbUd[[hRaTPcTS
7HENTHISVARIANTOFTHERaTPcTVaXSSXbZCOMMANDISUSED #ELL#,)AUTOMATICALLYCREATESONEGRID
DISKONEACHCELLDISK NAMINGTHEMWITHTHEPREFIXYOUPROVIDEDINTHEFOLLOWINGMANNER
{prefix}N{celldisk_name}
4HEOPTIONALbXiTPARAMETERSPECIFIESTHESIZEOFEACHINDIVIDUALGRIDDISK)FNOSIZEISPROVIDED THE
RESULTINGGRIDDISKSWILLCONSUMEALLREMAININGFREESPACEOFTHEIRRESPECTIVECELLDISK4HEP[[WPaSSXbZ


#(!04%2 34/2!'%,!9/54

PARAMETERINSTRUCTS#ELL#,)TOUSEONLYDISK BASEDCELLDISKS*USTINCASEYOUAREWONDERING &LASH


#ACHEMODULESAREALSOPRESENTEDASCELLDISKSOFTYPE5[PbW3XbZ ANDMAYBEUSEDFORCREATINGGRID
DISKSASWELL7ELLDISCUSSFLASHDISKSLATERONINTHISCHAPTER4HEFOLLOWINGCOMMANDSHOWSTHEGRID
DISKSCREATED
2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TRT[[3XbZSXbZCh_TbXiT
fWTaT]P\T[XZTC4BCN

C4BCN23NNRT[["53NNRT[["7PaS3XbZ(%<
C4BCN23N NRT[["53N NRT[["7PaS3XbZ(%<
q
C4BCN23N NRT[["53N NRT[["7PaS3XbZ(%<
C4BCN23N NRT[["53N NRT[["7PaS3XbZ(%<

'RID$ISK3IZING
!SWEDISCUSSEDEARLIER GRIDDISKSAREEQUIVALENTTO!3-DISKS4HEYARELITERALLYTHEBUILDINGBLOCKSOF
THE!3-DISKGROUPSYOUWILLCREATE4HEBHBC4<N36DISKGROUPISCREATEDWHEN%XADATAISINSTALLEDONA
SITE)TISPRIMARILYUSEDTOSTORETHE/#2ANDVOTINGFILESUSEDBY/RACLECLUSTERWARE'RID
)NFRASTRUCTURE (OWEVER THEREISNOREASONBHBC4<N36CANNOTBEUSEDTOSTOREOTHEROBJECTSSUCHAS
TABLESPACESFORTHE$ATABASE&ILE3YSTEM$"&3 )NADDITIONTOTHEBHBC4<N36 OR315BN36 DISKGROUP
%XADATAISALSODELIVEREDWITH30C0ANDA42>DISKGROUPSTOBEUSEDFORDATABASEFILESAND&AST2ECOVERY
!REAS"UTTHESEDISKGROUPSMAYACTUALLYBECREATEDWITHWHATEVERNAMESMAKETHEMOSTSENSEFORYOUR
ENVIRONMENT&ORCONSISTENCY THISCHAPTERUSESTHENAMESBHBC4<N36 30C0N36ANDA42>N36)FYOUARE
CONSIDERINGSOMETHINGOTHERTHANTHEhFACTORYDEFAULTSvFORYOURDISKGROUPCONFIGURATION REMEMBER
THATAMAINREASONFORUSINGMULTIPLE!3-DISKGROUPSON%XADATAISTOPRIORITIZE)/PERFORMANCE4HE
FIRSTGRIDDISKSYOUCREATEWILLBETHEFASTEST RESULTINGINHIGHERPERFORMANCEFORTHEASSOCIATED!3-DISK
GROUP

■.OTE7HEN%XADATA6ROLLEDOUT BHBC4<N36WASTHEDISKGROUPUSEDTOSTORE/#2ANDVOTINGFILESFORTHE
/RACLECLUSTERWARE7HEN%XADATA8WASINTRODUCED THISDISKGROUPWASRENAMEDTO315BN36 PRESUMABLY
BECAUSETHEREWASQUITEABITOFUSABLESPACELEFTOVERTHATMADEFORANICELOCATIONFORAMODERATELYSIZED$"&3
FILESYSTEM!LSO THEOTHERDEFAULTDISKGROUPNAMESCHANGEDSOMEWHATWHEN8CAMEOUT4HE%XADATA
$ATABASE-ACHINENAMEWASADDEDASAPOSTFIXTOTHE30C0ANDA42>DISKGROUPNAMES&OREXAMPLE THE
MACHINENAMEFORONEOFOURLABSYSTEMSIS4=:3O30C0BECAME30C0N4=: ANDA42>BECAMEA42>N4=:

"YTHEWAY /RACLERECOMMENDSYOUCREATEASEPARATEDATABASEFOR$"&3BECAUSEITREQUIRES
INSTANCEPARAMETERSETTINGSTHATWOULDNOTBEOPTIMALFORTYPICALAPPLICATIONDATABASES
3OMEOFTHEMOSTCOMMON!3-DISKGROUPSARE
BHBC4<N36:4HISDISKGROUPISTHELOCATIONFORCLUSTERWARES/#2ANDVOTINGFILES
)TMAYALSOBEUSEDFOROTHERFILESWITHSIMILARPERFORMANCEREQUIREMENTS&OR
/#2ANDVOTINGFILES NORMALREDUNDANCYISTHEMINIMUMREQUIREMENT
.ORMALREDUNDANCYWILLCREATEVOTINGFILES AND/#2FILES4HEVOTINGFILES
MUSTBESTOREDISSEPARATE!3-FAILUREGROUPS2ECALLTHATON%XADATA EACH


#(!04%2 34/2!'%,!9/54

STORAGECELLCONSTITUTESAFAILUREGROUP4HISMEANSTHATONLYNORMAL
REDUNDANCYMAYBEUSEDFORAN%XADATAQUARTERRACKCONFIGURATIONSTORAGE
CELLSFAILUREGROUPS /NLYINHALFRACKANDFULLRACKCONFIGURATIONSOR
STORAGECELLSFAILUREGROUPS ARETHEREASUFFICIENTNUMBEROFFAILUREGROUPSTO
STORETHEREQUIREDNUMBEROFVOTINGAND/#2FILESREQUIREDBYHIGH
REDUNDANCY4ABLE SUMMARIZESTHESTORAGEREQUIREMENTSFOR/#2AND
VOTINGFILESATVARIOUSLEVELSOFREDUNDANCY.OTETHAT%XTERNAL2EDUNDANCYIS
NOTSUPPORTEDON%XADATA7EVEINCLUDEDITINTHETABLEFORREFERENCEONLY
30C0N36:4HISDISKGROUPISUSEDFORSTORINGFILESASSOCIATEDWITHTHE
SQNRaTPcTNUX[TNSTbcDATABASEPARAMETER4HESEINCLUDEDATAFILES ONLINEREDO
LOGS CONTROLFILES ANDSPFILES
A42>N36:4HISDISKGROUPISWHATUSEDTOBECALLED&LASH2ECOVERY!REA&2! 
3OMETIMEAFTERG2/RACLERENAMEDITTOTHEh&AST2ECOVERY!REAvRUMORHAS
ITTHATTHEOVERUSEOFh&LASHvWASCAUSINGCONFUSIONAMONGTHEMARKETINGTEAM
3OTOCLARIFY THISDISKGROUPWILLBEUSEDTOSTOREEVERYTHINGCORRESPONDINGTO
THESQNaTR^eTahNUX[TNSTbcDATABASEPARAMETER)TINCLUDESONLINEDATABASE
BACKUPSANDCOPIES MIRRORCOPIESOFTHEONLINEREDOLOGFILES MIRRORCOPIESOF
THECONTROLFILE ARCHIVEDREDOLOGS FLASHBACKLOGS AND$ATA0UMPEXPORTS

Table 14-3. OCR & Voting File Storage Requirements

Redundancy Min # of Disks OCR Voting Total


%XTERNAL  -" -" -"

.ORMAL  -" -" '"

(IGH  -" '" '"



2ECALLTHAT%XADATASTORAGECELLSAREACTUALLYFINELYTUNED,INUXSERVERSWITHINTERNALDISKDRIVES
/RACLECOULDHAVEDEDICATEDTWOOFTHESEINTERNALDISKSTORUNTHEOPERATINGSYSTEM BUTDOINGSOWOULD
HAVEWASTEDALOTOFSPACE)NSTEAD THEYCARVEDOFFSEVERALSMALLPARTITIONSONTHEFIRSTTWODISKSINTHE
ENCLOSURE4HESEPARTITIONS ABOUT'"EACH CREATEASLIGHTIMBALANCEINTHESIZEOFTHECELLDISKS4HIS
IMBALANCEISSOSMALLITDOESNTAFFECTPERFORMANCE BUTITISSOMETHINGTHATYOUWILLHAVETOWORKWITH
WHENPLANNINGYOURGRIDDISKALLOCATIONSTRATEGY&IGURE ILLUSTRATESTHISIMBALANCE




#(!04%2 34/2!'%,!9/54

Linux Partitions

Cell Disk 3 Cell Disk 11 Cell Disk 12


Cell Disk 1 Cell Disk 2


Figure 14-9. Cell disk layout

4HISRESERVEDSPACECANBESEENBYRUNNINGUSXbZONONEOFTHESTORAGECELLS4HESTebSP"
PARTITIONINTHELISTINGISTHELOCATIONOFTHECELLDISK!LLOTHERPARTITIONSAREUSEDBYTHE,INUXOPERATING
SYSTEM
JT]ZRT[")a^^cLa^^c
-USXbZ[dSTebSP
q
3TeXRT1^^cBcPac4]S1[^RZb8SBhbcT\
STebSP %"!#(&# !#$%US;X]dgaPXSPdc^STcTRc
STebSP!!#(&$!$&"('"!'";X]dg
/dev/sda3 257040 3843486989 1921614975 83 Linux
STebSP#"'#"#'%(("(#!(" #"#" !UF($4gcS;10
STebSP$"'#"#'&$""'%##$ ' # #'!"' US;X]dgaPXSPdc^STcTRc
STebSP%"'%##$ '&'"''$# %%"( #'!"' US;X]dgaPXSPdc^STcTRc
STebSP&"''$# %&""''(%(%#!(%#$ US;X]dgaPXSPdc^STcTRc
STebSP'"''(%(%%'"'("'!$%(!(%#$ US;X]dgaPXSPdc^STcTRc
STebSP("'("'!%"""'(&(($$"#!(%#$ US;X]dgaPXSPdc^STcTRc
STebSP "'(&(($$('"'((#!$" (& #'% US;X]dgaPXSPdc^STcTRc
STebSP "'((#!$"'""(#!(" #!#""' %US;X]dgaPXSPdc^STcTRc
9OUCANSEETHESMALLERCELLDISKSINTHEbXiTATTRIBUTEWHENYOURUNTHE[XbcRT[[SXbZCOMMAND
2T[[2;8-[XbcRT[[SXbZPccaXQdcTb]P\TSTeXRT?PacXcX^]bXiT~
fWTaTSXbZCh_T,7PaS3XbZ

CD_00_cell03 /dev/sda3 1832.59375G
CD_01_cell03 /dev/sdb3 1832.59375G
23N!NRT[["STebSR '% &" !$6
23N"NRT[["STebSS '% &" !$6
23N#NRT[["STebST '% &" !$6
23N$NRT[["STebSU '% &" !$6
23N%NRT[["STebSV '% &" !$6
23N&NRT[["STebSW '% &" !$6
23N'NRT[["STebSX '% &" !$6
23N(NRT[["STebSY '% &" !$6
23N NRT[["STebSZ '% &" !$6
23N NRT[["STebS[ '% &" !$6
,ETSTAKEALOOKATAFAIRLYTYPICALCONFIGURATIONTOILLUSTRATEHOWGRIDDISKSAREALLOCATEDINTHE
STORAGECELL)NTHISEXAMPLEWELLCREATEGRIDDISKSTOSUPPORTTHREE!3-DISKGROUPSBHBC4<N36ISFAIRLY
LARGEANDWILLBEUSEDFOR$"&3CLUSTEREDFILESYSTEMSTORAGE INADDITIONTOTHE/#2AND6OTINGFILES


#(!04%2 34/2!'%,!9/54

v 30C0N36
v A42>N36
v BHBC4<N36
4HISSTORAGECELLISCONFIGUREDWITH3!4!DISKS SOTHETOTALSPACEPERSTORAGECELLISTERABYTES
4ABLE SHOWSWHATTHEALLOCATIONWOULDLOOKLIKE)NALLCASESTHEPHYSICALDISKSIZEIS 
4HESUMOFTHEDISKSIZESISTHEN 

Table 14-4. I/O Grid Disk Space Allocation (all sizes expressed in gigabytes)

Cell Disk OS DATA_DG SYSTEM_DG RECO_DG Total Grid Disk Space


23NNRT[["      

23N NRT[["      

23N!NRT[["      

23N"NRT[["      

23N#NRT[["      

23N$NRT[["      

23N%NRT[["      

23N&NRT[["      

23N'NRT[["      

23N(NRT[["      

23N NRT[["      

23N NRT[["      

Total Per Cell 58.22 8,936.4 4,468.087500 8,877.73125 22,282.218750



#REATINGACONFIGURATIONLIKETHISISFAIRLYSIMPLE4HEFOLLOWINGCOMMANDSCREATEGRIDDISKS
ACCORDINGTOTHEALLOCATIONIN4ABLE 
2T[[2;8-RaTPcTVaXSSXbZP[[_aTUXg,30C0N36bXiT,&##&6

2T[[2;8-RaTPcTVaXSSXbZP[[_aTUXg,BHBC4<N36bXiT,"&!"#%!$6
2T[[2;8-RaTPcTVaXSSXbZP[[_aTUXg,A42>N36


#(!04%2 34/2!'%,!9/54

.OTICETHATNOSIZEWASSPECIFIEDFORTHEA42>N36GRIDDISKS7HENSIZEISNOTSPECIFIED #ELL#,)
AUTOMATICALLYCALCULATESTHESIZEFOREACHGRIDDISKSOTHEYCONSUMETHEREMAININGFREESPACEONTHECELL
DISK&OREXAMPLE
2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TbXiT
30C0N36N23NNRT[["&##&6
30C0N36N23N NRT[["&##&6
q
A42>N36N23NNRT[[""&!"#%!$6
A42>N36N23N NRT[[""&!"#%!$6
q
BHBC4<N36N23NNRT[["& $$$6
BHBC4<N36N23N NRT[["& $$$6
BHBC4<N36N23N!NRT[["&##%%!$6
BHBC4<N36N23N"NRT[["&##%%!$6
q

#REATING&LASH$ISK "ASED'RID$ISKS
%XADATAUSESOFFLOADINGFEATURESLIKE3MART3CANTOPROVIDESTRIKINGLYFAST)/FORDIRECTPATHREADS
TYPICALLYFOUNDIN$33DATABASES4HESEFEATURESAREONLYACTIVATEDFORVERYSPECIFICDATAACCESSPATHSIN
THEDATABASE4OSPEEDUP)/PERFORMANCEFORRANDOMREADS %XADATA6INTRODUCEDSOLID STATESTORAGE
CALLEDFlash Cache%ACHSTORAGECELLCOMESCONFIGUREDWITHFOUR'&LASH#ACHECARDS'USABLE TO
AUGMENT)/PERFORMANCEFORFREQUENTLYACCESSEDDATA7HENCONFIGUREDAS%XADATA3MART&LASH#ACHE
THESEDEVICESACTLIKEALARGE DATABASE AWAREDISKCACHEFORTHESTORAGECELL7EDISCUSSEDTHISINDETAIL
IN#HAPTER/PTIONALLY SOMESPACEFROMTHE&LASH#ACHEMAYBECARVEDOUTANDUSEDLIKEHIGH SPEED
SOLID STATEDISKS&LASH#ACHEISCONFIGUREDASACELLDISKOFTYPE5[PbW3XbZ ANDJUSTASGRIDDISKSARE
CREATEDON7PaS3XbZCELLDISKS THEYMAYALSOBECREATEDON5[PbW3XbZCELLDISKS7HEN&LASH$ISKSARE
USEDFORDATABASESTORAGE ITSPRIMARILYTOIMPROVEPERFORMANCEFORHIGHLYWRITE INTENSIVEWORKLOADS
WHENDISK BASEDSTORAGECANNOTKEEPUP&LASH$ISKCELLDISKSMAYBESEENUSINGTHE#ELL#,)[Xbc
RT[[SXbZCOMMAND ASINTHEFOLLOWINGEXAMPLE
2T[[2;8-[XbcRT[[SXbZPccaXQdcTb]P\TSXbZCh_TbXiT
23NNRT[["7PaS3XbZ '"!$("&$6
23N NRT[["7PaS3XbZ '"!$("&$6
q
53NNRT[["5[PbW3XbZ!!'&$6
53N NRT[["5[PbW3XbZ!!'&$6
q
53N $NRT[["5[PbW3XbZ!!'&$6
&LASH$ISKTYPECELLDISKSARENAMEDWITHAPREFIXOF&$ANDASXbZCh_EOF5[PbW3XbZ)TISNOT
RECOMMENDEDTOUSEALLOFYOUR&LASH#ACHEFORGRIDDISKS7HENCREATINGTHE&LASH#ACHE USETHEbXiT
PARAMETERTOHOLDBACKSOMESPACETOBEUSEDFORGRIDDISKS4HEFOLLOWINGCOMMANDCREATESA&LASH
#ACHEOF'" RESERVING'"'"¾ FORGRIDDISKS
2T[[2;8-RaTPcTU[PbWRPRWTP[[bXiT,"V
5[PbWRPRWTRT[["N5;0B720274bdRRTbbUd[[hRaTPcTS
.OTETHATTHERaTPcTU[PbWRPRWTCOMMANDUSESTHEbXiTPARAMETERDIFFERENTLYTHANTHERaTPcT
VaXSSXbZCOMMAND7HENCREATINGTHEFLASHCACHE THEbXiTPARAMETERDETERMINESTHETOTALSIZEOFTHE
CACHE


#(!04%2 34/2!'%,!9/54

2T[[2;8-[XbcU[PbWRPRWTSTcPX[
]P\T)RT[["N5;0B720274
RT[[3XbZ)53N NRT[["53N"NRT[["53N&NRT[["q
q
bXiT)"6
bcPcdb)]^a\P[

2T[[2;8-[XbcRT[[SXbZPccaXQdcTb]P\TbXiTUaTTb_PRT~
fWTaTSXbZch_T,5[PbW3XbZ
53NNRT[["!!'&$6#&' !$6
53N NRT[["!!'&$6#&' !$6
q
53N $NRT[["!!'&$6#&' !$6
.OWWECANCREATEGRIDDISKSUSINGTHEREMAININGFREESPACEONTHE&LASH$ISKS USINGTHE
FAMILIARRaTPcTVaXSSXbZCOMMAND4HISTIMEWELLSPECIFYU[PbWSXbZFORTHECELLDISKSTOUSE
2T[[2;8-RaTPcTVaXSSXbZP[[U[PbWSXbZ_aTUXg,A0<38B:
6aXS3XbZA0<38B:N53NNRT[["bdRRTbbUd[[hRaTPcTS
q
6aXS3XbZA0<38B:N53N #NRT[["bdRRTbbUd[[hRaTPcTS
6aXS3XbZA0<38B:N53N $NRT[["bdRRTbbUd[[hRaTPcTS

2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TSXbZCh_TbXiT~
fWTaTSXbZch_T,5[PbW3XbZ

A0<38B:N53NNRT[["5[PbW3XbZ#&' !$6
A0<38B:N53N NRT[["5[PbW3XbZ#&' !$6
q
A0<38B:N53N $NRT[["5[PbW3XbZ#&' !$6
/NCETHEGRIDDISKSHAVEBEENCREATEDTHEYMAYBEUSEDTOCREATE!3-DISKGROUPSUSEDTOSTORE
DATABASEOBJECTSJUSTASYOUWOULDANYOTHERDISK BASEDDISKGROUP4HEBEAUTYOF&LASH#ACHE
CONFIGURATIONISTHATALLTHISMAYBEDONEWHILETHESYSTEMISONLINEANDSERVICING)/REQUESTS!LLOFTHE
COMMANDSWEVEJUSTUSEDTODROPANDRECONFIGURETHE&LASH#ACHEWEREDONEWITHOUTTHENEEDTO
DISABLEORSHUTDOWNDATABASESORCELLSERVICES

Storage Strategies
%ACH%XADATASTORAGECELLISANINTELLIGENTMINI 3!. OPERATINGSOMEWHATINDEPENDENTLYOFTHEOTHER
CELLSINTHERACK.OWTHISMAYBESTRETCHINGTHEDEFINITIONOF3!.ALITTLE BUTWITHTHE#ELL3ERVER
SOFTWAREINTELLIGENTLYCONTROLLING)/ACCESSWEBELIEVEITISAPPROPRIATE3TORAGECELLSMAYBECONFIGURED
INSUCHAWAYTHATALL#ELLSINTHERACKPROVIDESTORAGEFORALLDATABASESINTHERACK4HISPROVIDES
MAXIMUM)/PERFORMANCEANDDATATRANSFERRATESFOREACHDATABASEINTHESYSTEM3TORAGECELLSMAY
ALSOBECONFIGUREDTOSERVICESPECIFICDATABASESERVERSUSINGTHERT[[X_^aPFILE)NADDITION CELLSECURITY
MAYBEUSEDTORESTRICTACCESSTOSPECIFICDATABASESOR!3-INSTANCESTHROUGHUSEOFSTORAGEREALMS)N
THISSECTION)LLDISCUSSSTRATEGIESFORSEPARATINGCELLSINTOGROUPSTHATSERVICECERTAINDATABASESERVERSOR
2!#CLUSTERS4OBORROWAFAMILIARTERMFROMTHE3!.WORLD THISISWHEREWEWILLTALKABOUThZONINGvA
SETOFSTORAGECELLSTOSERVICEDEVELOPMENT TEST ANDPRODUCTIONENVIRONMENTS


#(!04%2 34/2!'%,!9/54

#ONFIGURATION/PTIONS
%XADATAREPRESENTSASUBSTANTIALINVESTMENTFORMOSTCOMPANIES&ORONEREASONORANOTHER WEFIND
THATMANYCOMPANIESWANTTOBUYAFULLORHALFRACKFORCONSOLIDATINGSEVERALDATABASEENVIRONMENTS
%XADATASARCHITECTUREMAKESITAVERYGOODCONSOLIDATIONPLATFORM4HESEARESOMEOFTHEMOST
COMMONCONFIGURATIONSWEVESEEN
v !FULLRACKSERVICINGDEVELOPMENT TEST ANDPRODUCTION
v !FULLRACKSERVICINGSEVERAL INDEPENDENTPRODUCTIONENVIRONMENTS
v !HALFRACKSERVICINGDEVELOPMENTANDTEST
v )SOLATINGASCRATCHENVIRONMENTFOR$"!TESTINGANDDEPLOYINGSOFTWAREPATCHES
&OREACHOFTHESECONFIGURATIONS ISOLATING)/TOSPECIFICDATABASESERVERSMAYBEAKEY
CONSIDERATION&OREXAMPLE YOURCOMPANYMAYBEHOSTINGDATABASEENVIRONMENTSFOREXTERNALCLIENTS
THATREQUIRESEPARATIONFROMOTHERDATABASESYSTEMS/RYOURCOMPANYMAYHAVELEGALREQUIREMENTSTO
SEPARATESERVERACCESSTODATA!NOTHERREASONFORSEGMENTINGSTORAGEATTHECELLLEVELMAYBETOPROVIDE
ANENVIRONMENTFOR$"!TRAINING ORTESTINGSOFTWAREPATCHES4HEREARETWOWAYSTOISOLATE%XADATA
STORAGECELLS BYNETWORKACCESSANDBYSTORAGEREALM

)SOLATING3TORAGE#ELL!CCESS
2ECALLTHAT!3-GAINSACCESSTOGRIDDISKSTHROUGHTHE)NFINIBANDNETWORK4HISISCONFIGUREDBYADDING
THE)0ADDRESSOFSTORAGECELLSINTHERT[[X_^aPFILE&OREXAMPLE INAFULLRACKCONFIGURATION ALL
STORAGECELLSARELISTEDASFOLLOWS
JT]ZSQ!)^aPR[T)4G31!LW^\T^aPR[T
-RPcTcR^aPR[TRT[[]Tcf^aZR^]UXVRT[[X_^aP
RT[[, (! %' !(
RT[[, (! %' ! 
RT[[, (! %' ! 
RT[[, (! %' ! !
RT[[, (! %' ! "
RT[[, (! %' ! #
RT[[, (! %' ! $
RT[[, (! %' ! %
RT[[, (! %' ! &
RT[[, (! %' ! '
RT[[, (! %' ! (
RT[[, (! %' !!
RT[[, (! %' !! 
RT[[, (! %' !!!
7HEN!3-STARTSUPITINTERROGATESTHESTORAGECELLSONEACHOFTHESE)0ADDRESSESFORGRIDDISKSIT
CANUSEFORCONFIGURING!3-DISKGROUPS7ECANEASILYSEGREGATESTORAGECELLSTOSERVICESPECIFIC
DATABASESERVERSBYREMOVINGTHE)0ADDRESSOFCELLSTHATSHOULDNOTBEUSED/BVIOUSLYTHISISNOT
ENFORCEDBYANYKINDOFSECURITYBUTITISANEFFECTIVE SIMPLEWAYOFPAIRINGUPDATABASESERVERSWITHTHE
STORAGECELLSTHEYSHOULDUSEFORSTORAGE4ABLE ILLUSTRATESACONFIGURATIONTHATSPLITSAFULLRACKINTO
TWODATABASE ANDSTORAGEGRIDS0RODUCTIONISCONFIGUREDWITHSIXDATABASESERVERSANDSTORAGECELLS
WHILE4ESTISCONFIGUREDFORTWODATABASESERVERSANDTHREESTORAGECELLS


#(!04%2 34/2!'%,!9/54

Table 14-5. A Storage Network Configuration

Production Database Servers, 1-6 Production Storage Cells, 1-11


TcR^aPR[TRT[[]Tcf^aZR^]UXVRT[[X_^aP

RT[[, (! %' !( S\ RT[  (! %' !(

RT[[, (! %' !  S\ RT[! (! %' ! 

RT[[, (! %' !  S\ RT[" (! %' ! 

RT[[, (! %' ! ! S\ RT[# (! %' ! !

RT[[, (! %' ! " S\ RT[$ (! %' ! "

RT[[, (! %' ! # S\ RT[% (! %' ! #

RT[[, (! %' ! $ S\ RT[& (! %' ! $

RT[[, (! %' ! % S\ RT[' (! %' ! %

RT[[, (! %' ! & S\ RT[( (! %' ! &

RT[[, (! %' ! ' S\ RT[  (! %' ! '

RT[[, (! %' ! ( S\ RT[  (! %' ! (

Test Database Servers, 7-8 Test Storage Cells, 12-14


TcR^aPR[TRT[[]Tcf^aZR^]UXVRT[[X_^aP

RT[[, (! %' !! S\ RT[ ! (! %' !!

RT[[, (! %' !!  S\ RT[ " (! %' !! 

RT[[, (! %' !!! S\ RT[ # (! %' !!!

$ATABASESERVERSANDSTORAGECELLSCANBEPAIREDINANYCOMBINATIONTHATBESTSUITSYOURSPECIFIC
NEEDS2EMEMBERTHATTHEMINIMUMREQUIREMENTSFOR/RACLE2!#ON%XADATAREQUIRESTWODATABASE
SERVERSANDTHREESTORAGECELLS WHICHISBASICALLYAQUARTERRACKCONFIGURATION4ABLE SHOWSTHE
STORAGEANDPERFORMANCECAPABILITIESOF%XADATASTORAGECELLSINQUARTERRACK HALFRACK ANDFULLRACK
CONFIGURATIONS
)FSOMEOFYOURENVIRONMENTSDONOTREQUIRE/RACLE2!# THEREISNOREASONTHEYCANNOTBE
CONFIGUREDWITHSTANDALONENON 2!# DATABASESERVERS)FTHISISDONE THENAMINIMUMOFONESTORAGE
CELLMAYBEUSEDTOPROVIDEDATABASESTORAGEFOREACHDATABASESERVER)NFACTASINGLESTORAGECELLMAY
EVENBESHAREDBYMULTIPLESTANDALONEDATABASESERVERS/NCEAGAIN %XADATAISAHIGHLYCONFIGURABLE


#(!04%2 34/2!'%,!9/54

SYSTEM"UTJUSTBECAUSEYOUCANDOSOMETHING DOESNTMEANYOUSHOULD3TORAGECELLSARETHE
WORKHORSEOF%XADATA%ACHCELLSUPPORTSAFINITEDATATRANSFERRATE-"03 ANDNUMBEROF)/SPER
SECOND)/03 2EDUCINGTHESTORAGECELLFOOTPRINTOFYOURDATABASEENVIRONMENTDIRECTLYIMPACTSTHE
PERFORMANCEYOURDATABASECANYIELD

Table 14-6. Performance Capabities of Exadata Storage Cells

MBPS & IOPS by Device Type Quarter Rack Half Rack Full Rack
$ISK4RANSFER"ANDWIDTH 3!3 '"S '"S '"S
3!4! '"S '"S '"S

&LASH$ISK4RANSFER"ANDWIDTH '"S '"S '"S

$ISK)/03 3!3      


3!4!      

&LASH$ISK)/03       

■.OTE%XADATA6OFFEREDTWOCHOICESFORDISKDRIVESINTHESTORAGECELLS 3!4! AND3!37ITH%XADATA8 THE


3!4!OPTIONHASBEENREPLACEDWITH(IGH#APACITY3!3DRIVESTHATHAVESTORAGEANDPERFORMANCECHARACTERISTICS
VERYSIMILARTOTHOSEOFTHE3!4!DRIVESTHEYREPLACED3ONOW WITH8 YOURSTORAGEOPTIONSARE(IGH#APACITY
AND(IGH0ERFORMANCE3!3DRIVES

Cell Security
)NADDITIONTOISOLATINGSTORAGECELLSBYTHEIRNETWORKADDRESS %XADATAALSOPROVIDESAWAYTOSECURE
ACCESSTOSPECIFICGRIDDISKSWITHINTHESTORAGECELL!NACCESSCONTROLLIST!#, ISMAINTAINEDATTHE
STORAGECELL ANDGRIDDISKSAREDEFINEDASBEINGACCESSIBLETOSPECIFIC!3-CLUSTERSAND OPTIONALLY
DATABASESWITHINTHE!3-CLUSTER)FYOUVEALREADYLOGGEDSOMETIMEWORKINGONYOUR%XADATASYSTEM
CHANCESAREYOUHAVENTNOTICEDANYSUCHACCESSRESTRICTIONS4HATISBECAUSEBYDEFAULT CELLSECURITYIS
OPEN ALLOWINGALL!3-CLUSTERSANDDATABASESINTHESYSTEMACCESSTOALLGRIDDISKS#ELLSECURITYCONTROLS
ACCESSTOGRIDDISKSATTWOLEVELS BY!3-CLUSTERANDBYDATABASE
ASM-Scoped Security: !3- SCOPEDSECURITYRESTRICTSACCESSTOGRIDDISKSBY
!3-CLUSTER4HISISTHEFIRSTLAYEROFCELLSECURITY)TALLOWSALLDATABASESINTHE
!3-CLUSTERTOHAVEACCESSTOALLGRIDDISKSMANAGEDBYTHE!3-INSTANCE&OR
EXAMPLE AN%XADATAFULLRACKCONFIGURATIONCANBESPLITSOTHATFOURDATABASE
SERVERSANDSEVENSTORAGECELLSCANBEUSEDBY#USTOMER ! ANDTHEOTHERFOUR
DATABASESERVERSANDSEVENSTORAGECELLSCANBEUSEDBY#USTOMER "
Database-Scoped Security: /NCE!3- SCOPEDSECURITYISCONFIGURED ACCESSTO
GRIDDISKSMAYBEFURTHERCONTROLLEDATTHEDATABASELEVELUSINGDATABASE
SCOPEDSECURITY$ATABASE SCOPEDSECURITYISMOSTAPPROPRIATEWHENDATABASES
WITHINTHE!3-CLUSTERSHOULDHAVEACCESSTOASUBSETOFTHEGRIDDISKSMANAGED


#(!04%2 34/2!'%,!9/54

BYTHE!3-INSTANCE)NTHEEARLIEREXAMPLE#USTOMER !SENVIRONMENTCOULD
USEDATABASE SCOPEDSECURITYTOSEPARATEDATABASEENVIRONMENTSFROMONE
ANOTHERWITHINITSHALFRACKCONFIGURATION

#ELL3ECURITY4ERMINOLOGY
"EFOREWEGETTOOFARALONG LETSTAKEALOOKATSOMEOFTHENEWTERMINOLOGYSPECIFICTO%XADATASCELL
SECURITY
Storage Realm'RIDDISKSTHATSHAREACOMMONSECURITYDOMAINAREREFERREDTO
ASAstorage realm
Security Key!SECURITYKEYISUSEDTOAUTHENTICATE!3-ANDDATABASECLIENTSTO
THESTORAGEREALM)TISALSOUSEDFORSECURINGMESSAGESSENTBETWEENTHESTORAGE
CELLSANDTHE!3-ANDDATABASECLIENTS4HESECURITYKEYISCREATEDUSINGTHE
#ELL#,)COMMANDRaTPcTZTh4HEKEYISTHENASSIGNEDTOGRIDDISKSUSINGTHE
#ELL#,)PbbXV]ZThCOMMAND
cellkey.ora:4HERT[[ZTh^aPFILEISSTOREDONTHEDATABASESERVERS/NE
RT[[ZTh^aPFILEISCREATEDFOR!3- SCOPEDSECURITYANDANOTHERRT[[ZTh^aP
FILEISCREATEDFOREACHDATABASEREQUIRINGDATABASE SCOPEDSECURITY4HE
RT[[ZTh^aPFILESAREUSEDTOIDENTIFYSECURITYKEYS THESTORAGEREALM ANDTHE
UNIQUENAMEOFTHE!3-CLUSTERORDATABASE
4ABLE SHOWSTHEDEFINITIONSFORTHEFIELDSINTHERT[[ZTh^aPFILE

Table 14-7. The Contents of the Cellkey.ora File

Field Description
ZTh 4HISISTHESECURITYKEYGENERATEDATTHESTORAGECELLWITHTHERaTPcTZThCOMMAND4HISKEY
ISUSEDTOAUTHENTICATETHE!3-CLUSTERANDDATABASETOTHESTORAGEREALM
&OR!3- SCOPEDSECURITY THISVALUEMUSTMATCHTHEKEYASSIGNEDTOTHE!3-CLUSTERUSING
THEPbbXV]ZThCOMMAND
&ORDATABASE SCOPEDSECURITYTHISVALUEMUSTMATCHTHESECURITYKEYASSIGNEDTOTHE
DATABASEUSINGTHEPbbXV]ZThCOMMAND

Pb\ 4HISISTHEUNIQUENAMEOFTHE!3-CLUSTERFOUNDINTHE31ND=8@D4N=0<4PARAMETEROFTHE
!3-INSTANCE)TISUSEDTOASSOCIATETHE!3-CLUSTERWITHTHEPePX[PQ[TC^ATTRIBUTEOFTHE
GRIDDISKSINTHESTORAGEREALM'RIDDISKSAREASSIGNEDTHISVALUEUSINGTHE#ELL#,)RaTPcT
VaXSSXbZANDP[cTaVaXSSXbZCOMMANDS

aTP[\ 4HISFIELDISOPTIONAL)FUSED THEVALUEMUSTMATCHTHERTP[\=P\TATTRIBUTEASSIGNEDTOTHE


STORAGECELLSUSINGTHE#ELL#,)COMMANDP[cTaRT[[aTP[\=P\T


#(!04%2 34/2!'%,!9/54

#ELL3ECURITY"EST0RACTICES
&OLLOWING/RACLESBESTPRACTICESISANIMPORTANTPARTOFCONFIGURINGCELLSECURITY)TWILLHELPYOUAVOID
THOSEODDSITUATIONSWHERETHINGSSEEMTOWORKSOMEOFTHETIMEORONLYONCERTAINSTORAGECELLS
&OLLOWINGTHESEBESTPRACTICESWILLSAVEYOUALOTOFTIMEANDFRUSTRATION
v )FDATABASE SCOPEDSECURITYISUSED BESURETOUSEITFORALLDATABASESINTHE!3-
CLUSTER
v -AKESURETHE!3-RT[[ZTh^aPFILEISTHESAMEONALLSERVERSFORAN!3-CLUSTER
4HISINCLUDESCONTENTS OWNERSHIP ANDPERMISSIONS
v *USTASYOUDIDFORTHE!3-RT[[ZTh^aPFILE MAKESURECONTENTS OWNERSHIP AND
PERMISSIONSAREIDENTICALACROSSALLSERVERSFORTHEDATABASERT[[ZTh^aPFILE
v %NSURETHECELLSIDESECURITYSETTINGSARETHESAMEFORALLGRIDDISKSBELONGINGTOTHE
SAME!3-DISKGROUP
v )TISVERYIMPORTANTTHATTHERT[[ZTh^aPFILESANDCELLCOMMANDSAREEXECUTED
CONSISTENTLYACROSSALLSERVERSANDCELLS5SETHESR[XUTILITYTODISTRIBUTETHE
RT[[ZTh^aPFILEANDREDUCETHELIKELIHOODOFHUMANERROR

#ONFIGURING!3- 3COPED3ECURITY
7ITH!3- SCOPEDSECURITY THE!3-CLUSTERISAUTHENTICATEDTOTHESTORAGECELLBYITS31ND=8@D4N=0<4AND
ASECURITYKEY4HESECURITYKEYISCREATEDATTHESTORAGECELLANDSTOREDINTHERT[[ZTh^aPFILEONTHE
DATABASESERVER!NACCESSCONTROLLIST!#, ISDEFINEDONTHESTORAGECELLTHATISUSEDTOVERIFYTHE
SECURITYKEYITRECEIVESFROM!3-4HEPePX[PQ[TC^ATTRIBUTEONEACHGRIDDISKDICTATESWHICH!3-
CLUSTERSAREPERMITTEDACCESS
.OWLETSTAKEALOOKATTHESTEPSFORCONFIGURING!3- SCOPEDSECURITY
 3HUTDOWNALLDATABASESAND!3-INSTANCESINTHE!3-CLUSTER
 #REATETHESECURITYKEYUSINGTHE#ELL#,)RaTPcTZThCOMMAND
2T[[2;8-RaTPcTZTh
"%#'T!P"& %(($Q&((R##U!UTP(
4HISSIMPLYGENERATESTHEKEY WHICHISNOTAUTOMATICALLYSTOREDANYWHERE
4HERaTPcTZThCOMMANDONLYNEEDSTOBERUNONCEANDCANBEDONEONANY
STORAGECELL4HISSECURITYKEYWILLBEASSIGNEDTOTHE!3-CLUSTERINTHEZTh
FIELDOFTHERT[[ZTh^aPFILE
 .EXT CREATEART[[ZTh^aPFILEANDINSTALLITINTHETcR^aPR[TRT[[]Tcf^aZ
R^]UXVDIRECTORYFOREACHDATABASESERVERONWHICHTHIS!3-CLUSTERIS
CONFIGURED3ETTHEOWNERSHIPOFTHEFILETOTHEUSERANDGROUPSPECIFIEDDURING
THE!3-SOFTWAREINSTALLATION0ERMISSIONSSHOULDALLOWITTOBEREADBYTHE
USERANDGROUPOWNEROFTHEFILE&OREXAMPLE
ZTh,"%#'T!P"& %(($Q&((R##U!UTP(
Pb\,0B<
aTP[\,Rdbc^\TaN0NaTP[\

-RW^f]^aPR[T)SQPRT[[ZTh^aP


#(!04%2 34/2!'%,!9/54

-RW\^S%#RT[[ZTh^aP
.OTETHATIFAREALMISDEFINEDINTHISFILEITMUSTMATCHTHEREALMNAME
ASSIGNEDTOTHESTORAGECELLSUSINGTHEP[cTaRT[[aTP[\,COMMAND
 &INDTHE31ND=8@D4N=0<4FORYOUR!3-CLUSTERUSINGTHEbW^f_PaP\TcTa
COMMANDFROMONEOFTHE!3-INSTANCES
BHB)0B< -bW^f_PaP\TcTaSQNd]X`dTN]P\T

=0<4CH?4E0;D4

SQNd]X`dTN]P\TbcaX]V0B<

 5SETHE#ELL#,)PbbXV]ZThCOMMANDTOASSIGNTHESECURITYKEYTOTHE!3-
CLUSTERBEINGCONFIGURED4HISMUSTBEDONEONEACHSTORAGECELLTOWHICHYOU
WANTTHE!3-CLUSTERTOHAVEACCESS
2T[[2;8-0BB86=:4H
5>A0B<,%%T !PSQ((%'$"$'QU'!!$'$'&U$$
 5SINGTHE#ELL#,)RaTPcTVaXSSXbZCOMMAND SETTHEPePX[PQ[TC^ATTRIBUTEFOR
EACHGRIDDISKTOWHICHYOUWANTTHIS!3-CLUSTERTOHAVEACCESS4HISCANBE
DONEFORALLGRIDDISKSONTHECELLASFOLLOWS
2T[[2;8-RaTPcTVaXSSXbZP[[_aTUXg,30C0N36
bXiT, !'!' !$6PePX[PQ[TC^,0B<
 &OREXISTINGGRIDDISKS USETHEP[cTaVaXSSXbZCOMMANDTOSETUPSECURITY
2T[[2;8-P[cTaVaXSSXbZP[[_aTUXg,30C0N36
PePX[PQ[TC^,0B<
 !SUBSETOFGRIDDISKSMAYALSOBEASSIGNED ASFOLLOWS
2T[[2;8-P[cTaVaXSSXbZ30C0N23NNRT[["
30C0N23N NRT[["
30C0N23N!NRT[["
q
PePX[PQ[TC^,0B<
4HISCOMPLETESTHECONFIGURATIONOF!3- SCOPEDCELLSECURITY4HE!3-CLUSTERANDALLDATABASES
CANNOWBERESTARTED7HEN!3-STARTSUPITWILLCHECKFORTHERT[[ZTh^aPFILEANDPASSTHEKEYTOTHE
STORAGECELLSINORDERTOGAINACCESSTOTHEGRIDDISKS

#ONFIGURING$ATABASE 3COPED3ECURITY
$ATABASE SCOPEDSECURITYLOCKSDOWNDATABASEACCESSTOSPECIFICGRIDDISKSWITHINAN!3-CLUSTER)TIS
USEFULFORCONTROLLINGACCESSTOGRIDDISKSWHENMULTIPLEDATABASESSHARETHESAME!3-CLUSTER"EFORE
DATABASE SCOPEDSECURITYMAYBEIMPLEMENTED !3- SCOPEDSECURITYMUSTBECONFIGUREDANDVERIFIED
7HENUSINGDATABASE SCOPEDSECURITY THEREWILLBEONERT[[ZTh^aPFILEPERDATABASE PERDATABASE
SERVER ANDONE!#,ENTRYONTHESTORAGECELLFOREACHDATABASE4HEFOLLOWINGSTEPSMAYBEUSEDTO
IMPLEMENTSIMPLEDATABASE SCOPEDSECURITYFORTWODATABASES CALLED(2(UMAN2ESOURCES AND0!9
0AYROLL 


#(!04%2 34/2!'%,!9/54

1. 3HUTDOWNALLDATABASESAND!3-INSTANCESINTHE!3-CLUSTER
2. #REATETHESECURITYKEYUSINGTHE#ELL#,)RaTPcTZThCOMMAND
2T[[2;8-RaTPcTZTh
&$#'P&S PQUUPSUTU($P$" '$PQPT('

2T[[2;8-RaTPcTZTh
'T& $QSQS%PS(UP$"S# &"%P$""Q(Q 
4HERaTPcTZThCOMMANDMUSTBERUNONCEFOREACHDATABASEINTHE!3-
CLUSTER)TCANBERUNFROMANYSTORAGECELL/NESECURITYKEYWILLBEASSIGNEDTO
EACHDATABASEWITHINTHE!3-CLUSTERINTHEZThFIELDOFTHEDATABASE
RT[[ZTh^aPFILE
3. &OREACHDATABASE CREATEACELLKEYORAFILEUSINGTHEKEYSCREATEDINSTEP
)NSTALLTHESECELLKEYORAFILESINTHE
>A02;4N7><4PS\X]jSQNd]X`dTN]P\Tl_UX[TDIRECTORIESFOREACHDATABASE
SERVERONWHICHDATABASE SCOPEDSECURITYWILLBECONFIGURED*USTASYOUDID
FOR!3- SCOPEDSECURITY SETTHEOWNERSHIPOFTHEFILETOTHEUSERANDGROUP
SPECIFIEDDURINGTHE!3-SOFTWAREINSTALLATION0ERMISSIONSSHOULDALLOWITTO
BEREADBYTHEUSERANDGROUPOWNEROFTHEFILE&OREXAMPLE
2T[[ZTh^aPUX[TU^acWT7ASPcPQPbT
ZTh,&$#'P&S PQUUPSUTU($P$" '$PQPT('
Pb\,0B<
aTP[\,Rdbc^\TaN0NaTP[\


-RW^f]^aPR[T)SQP>A02;4N7><4PS\X]7ART[[ZTh^aP
-RW\^S%#>A02;4N7><4PS\X]7ART[[ZTh^aP

2T[[ZTh^aPUX[TU^acWT?0HSPcPQPbT
ZTh,'T& $QSQS%PS(UP$"S# &"%P$""Q(Q 
Pb\,0B<
aTP[\,Rdbc^\TaN0NaTP[\


-RW^f]^aPR[T)SQP>A02;4N7><4PS\X]?0HRT[[ZTh^aP
-RW\^S%#>A02;4N7><4PS\X]?0HRT[[ZTh^aP
.OTETHATIFAREALMISDEFINEDINTHISFILE ITMUSTMATCHTHEREALMNAME
ASSIGNEDTOTHESTORAGECELLSUSINGTHEP[cTaRT[[aTP[\,COMMAND
4. 2ETRIEVETHE31ND=8@D4N=0<4FOREACHDATABASEBEINGCONFIGUREDUSINGTHEbW^f
_PaP\TcTaCOMMANDFROMEACHOFTHEDATABASES
BHB)7A-bW^f_PaP\TcTaSQNd]X`dTN]P\T

=0<4CH?4E0;D4

SQNd]X`dTN]P\TbcaX]V7A



#(!04%2 34/2!'%,!9/54

BHB)?0H-bW^f_PaP\TcTaSQNd]X`dTN]P\T

=0<4CH?4E0;D4

SQNd]X`dTN]P\TbcaX]V?0H
5. 5SETHE#ELL#,)PbbXV]ZThCOMMANDTOASSIGNTHESECURITYKEYSFOREACH
DATABASEBEINGCONFIGURED4HISMUSTBEDONEONEACHSTORAGECELLYOUWANT
THE(2AND0!9DATABASESTOHAVEACCESSTO4HEFOLLOWINGKEYSAREASSIGNEDTO
THE31ND=8@D4N=0<4OFTHE (2AND 0!9DATABASES
2T[[2;8-0BB86=:4H
5>A7A,&$#'P&S PQUUPSUTU($P$" '$PQPT('~
?0H,'T& $QSQS%PS(UP$"S# &"%P$""Q(Q ~

:ThU^a7AbdRRTbbUd[[hRaTPcTS
:ThU^a?0HbdRRTbbUd[[hRaTPcTS
6. 6ERIFYTHATTHEKEYSWEREASSIGNEDPROPERLY
2T[[2;8-[XbcZTh
7AS"#%&(!S%PSTP%& S'U""Q$#R"U ST%
?0HRPT &T'USRT&$ RR!TQ&"&$U$##"P'
7. 5SINGTHE#ELL#,)RaTPcTSXbZORP[cTaVaXSSXbZCOMMAND ASSIGNACCESSTO
THEGRIDDISKSTOEACHDATABASE.OTETHATTHE!3-UNIQUENAMEISINCLUDED
WITHTHEDATABASEUNIQUENAMEINTHISASSIGNMENT
2T[[2;8-RaTPcTVaXSSXbZ30C0N23NNRT[["
30C0N23N NRT[["
bXiT, !'!' !$6
PePX[PQ[TC^,0B<7A

2T[[2;8-RaTPcTVaXSSXbZ30C0N23N!NRT[["
30C0N23N"NRT[["
bXiT, !'!' !$6
PePX[PQ[TC^,0B<?0H
8. 4HEP[cTaVaXSSXbZCOMMANDMAYBEUSEDTOCHANGESECURITYASSIGNMENTSFOR
GRIDDISKS&OREXAMPLE
2T[[2;8-P[cTaVaXSSXbZ30C0N23N$NRT[["
30C0N23N%NRT[["
PePX[PQ[TC^,0B<7A

2T[[2;8-P[cTaVaXSSXbZ30C0N23N NRT[["
30C0N23N!NRT[["
PePX[PQ[TC^,0B<?0H
4HISCOMPLETESTHECONFIGURATIONOFDATABASE SCOPEDSECURITYFORTHE(2AND0!9DATABASES4HE
!3-CLUSTERANDDATABASESMAYNOWBERESTARTED4HEHUMANRESOURCESDATABASENOWHASACCESSTOTHE
30C0N23NNRT[["AND30C0N23N NRT[["GRIDDISKS WHILETHEPAYROLLDATABASEHASACCESSTOTHE
30C0N23N!NRT[["AND30C0N23N"NRT[["GRIDDISKS


#(!04%2 34/2!'%,!9/54

2EMOVING#ELL3ECURITY
/NCEIMPLEMENTED CELLSECURITYMAYBEMODIFIEDASNEEDEDBYUPDATINGTHE!#,LISTSONTHESTORAGE
CELLS ANDCHANGINGTHEAVAILABLE4OATTRIBUTEOFTHEGRIDDISKS2EMOVINGCELLSECURITYISAFAIRLY
STRAIGHTFORWARDPROCESSOFBACKINGOUTTHEDATABASESECURITYSETTINGSANDTHENREMOVINGTHE!3-
SECURITYSETTINGS
4HEFIRSTSTEPINREMOVINGCELLSECURITYISTOREMOVEDATABASE SCOPEDSECURITY4HEFOLLOWINGSTEPS
WILLREMOVEDATABASE SCOPEDSECURITYFROMTHESYSTEM
1. "EFOREDATABASESECURITYMAYBEREMOVED THEDATABASESAND!3-CLUSTER
MUSTBESHUTDOWN
2. 2EMOVETHEDATABASESFROMTHEAVAILABLE4OATTRIBUTEOFTHEGRIDDISKSUSINGTHE
#ELL#,)COMMANDP[cTaVaXSSXbZ4HISCOMMANDDOESNTSELECTIVELYREMOVE
DATABASESFROMTHELIST)TSIMPLYREDEFINESTHECOMPLETELIST.OTICETHATWE
WILLJUSTBEREMOVINGTHEDATABASESFROMTHELISTATTHISPOINT4HE!3-UNIQUE
NAMESHOULDREMAININTHELISTFORNOW4HISMUSTBEDONEFOREACHCELLYOU
WANTTOREMOVESECURITYFROM
2T[[2;8-P[cTaVaXSSXbZ30C0N23NNRT[["
30C0N23N NRT[["
PePX[PQ[TC^,0B<

2T[[2;8-P[cTaVaXSSXbZ30C0N23N!NRT[["
30C0N23N"NRT[["
PePX[PQ[TC^,0B<
/PTIONALLY ALLTHEDATABASESMAYBEREMOVEDFROMTHESECUREDGRIDDISKSWITHTHEFOLLOWING
COMMAND
2T[[2;8-P[cTaVaXSSXbZ30C0N23NNRT[["
30C0N23N NRT[["
30C0N23N!NRT[["
30C0N23N"NRT[["
PePX[PQ[TC^,0B<
!SSUMINGTHATTHESEDATABASESHAVENOTBEENCONFIGUREDFORCELLSECURITYONANYOTHERGRIDDISKSIN
THECELL THESECURITYKEYMAYBEREMOVEDFROMTHE!#,LISTONTHESTORAGECELLASFOLLOWS
2T[[2;8-PbbXV]ZThU^a7A,?0H,

:ThU^a7AbdRRTbbUd[[hSa^__TS
:ThU^a?0HbdRRTbbUd[[hSa^__TS
3. 2EMOVETHERT[[ZTh^aPFILELOCATEDINTHE
>A02;4N7><4PS\X]jSQNd]X`dTN]P\Tl_UX[TDIRECTORYFORTHEDATABASECLIENT
4. .OWTHERT[[ZTh^aPFILEFORTHE(2AND0!9DATABASESMAYBEREMOVEDFROM
THEDATABASESERVERS
-a\>A02;4N7><4PS\X]7ART[[ZTh^aP
-a\>A02;4N7><4PS\X]?0HRT[[ZTh^aP
5. 6ERIFYTHATTHE(2AND0!9DATABASESARENOTASSIGNEDTOANYGRIDDISKSWITH
THEFOLLOWING#ELL#,)COMMAND


#(!04%2 34/2!'%,!9/54

2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TPePX[PQ[TC^
/NCEDATABASE SCOPEDSECURITYHASBEENREMOVED YOUCANREMOVE!3- SCOPEDSECURITY4HISWILL
RETURNTHESYSTEMTOOPENSECURITYSTATUS4HEFOLLOWINGSTEPSREMOVE!3- SCOPEDSECURITY/NCETHISIS
DONE THEGRIDDISKSWILLBEAVAILABLETOALL!3-CLUSTERSANDDATABASESONTHESTORAGENETWORK
1. "EFORECONTINUINGWITHTHISPROCEDURE BESURETHATDATABASE SCOPEDSECURITYHAS
BEENCOMPLETELYREMOVED4HE[XbcZThCOMMANDSHOULDDISPLAYTHEKEY
ASSIGNMENTFORTHE!3-CLUSTERONLY.ODATABASESSHOULDBEASSIGNEDKEYSATTHIS
POINT4HE[XbcVaXSSXbZCOMMANDSHOULDSHOWALLTHENAMESOFTHEGRIDDISKS
ASSIGNMENTSFORTHE!3-CLUSTER 0B<
2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TPePX[PQ[TC^
2. .EXT REMOVETHE!3-UNIQUENAMEFROMTHEAVAILABLE4OATTRIBUTEONALLGRIDDISKS
2T[[2;8-[XbcVaXSSXbZPccaXQdcTb]P\TPePX[PQ[TC^
3. .OW REMOVETHE!3-SECURITYFROMTHE!#,BYRUNNINGTHEFOLLOWINGCOMMAND
2T[[2;8-P[cTaVaXSSXbZP[[PbbXV]C^,
4. 4HEFOLLOWINGCOMMANDREMOVESTHE!3-CLUSTERASSIGNMENTFORSELECTGRIDDISKS
2T[[2;8-P[cTaVaXSSXbZ30C0N23NNRT[["
30C0N23N NRT[["
30C0N23N!NRT[["
30C0N23N"NRT[["
PePX[PQ[TC^,
5. 4HE[XbcVaXSSXbZCOMMANDSHOULDSHOWNOASSIGNEDCLIENTS6ERIFYTHISBY
RUNNINGTHE[XbcVaXSSXbZCOMMAND
6. 4HE!3-CLUSTERKEYMAYNOWBESAFELYREMOVEDFROMTHESTORAGECELLUSINGTHE
#ELL#,)PbbXV]ZThCOMMAND
2T[[2;8-[XbcZThSTcPX[
]P\T)0B<
ZTh) (%S&('"P(P""URRPT!&%T!#T&P(U'(

2T[[2PbbXV]ZThU^a0B<,
:ThU^a0B<bdRRTbbUd[[hSa^__TS
7. 2EMOVETHECELLKEYORAFILEFROMTHEETCORACLECELLNETWORK CONFIGDIRECTORYONALL
DATABASESERVERSINTHE!3-CLUSTER
4HISCOMPLETESTHEREMOVALOF!3- SCOPEDSECURITY4HE!3-CLUSTERMAYNOWBERESTARTEDASWELL
ASALLTHEDATABASESITSERVICES


#(!04%2 34/2!'%,!9/54

Summary
5NDERSTANDINGALLTHEVARIOUSLAYERSOFTHE%XADATASTORAGEARCHITECTUREANDHOWTHEYFITTOGETHERISA
KEYCOMPONENTTOPROPERLYLAYINGOUTSTORAGEFORDATABASES5NDERSTANDINGTHERELATIONSHIPBETWEEN
PHYSICALDISKS ,5.S CELLDISKS GRIDDISKS AND!3-DISKGROUPSISABSOLUTELYNECESSARYIFYOUWANTTO
CARVEUPDISKSTORAGEFORMAXIMUMPERFORMANCE)NTHISCHAPTERWEVEDISCUSSEDWHATGRIDDISKSARE
WHATTHEYAREMADEUPOF ANDHOWTHEYFITINTOTHE!3-STORAGEGRID7EVETAKENALOOKATHOWTOCREATE
DISKGROUPSSOTHAT)/ISPRIORITIZEDFORPERFORMANCECRITICALDATAFILES#ARVINGUPSTORAGEDOESNTENDAT
THEDISK SOWEALSODISCUSSEDMETHODSFORPARTITIONINGSTORAGEBYCELLANDBYGRIDDISKWITHINTHECELL


C H A P T E R 15



Compute Node Layout

4HETERMnodeISAFAIRLYGENERICONETHATHASMANYDIFFERENTMEANINGSINTHE)4INDUSTRY&OREXAMPLE
NETWORKENGINEERSCALLANYADDRESSABLEDEVICEATTACHEDTOTHEIRNETWORKANODE5NIXADMINISTRATORS
COMMONLYUSETHETERMINTERCHANGEABLYWITHhostORserver/RACLE$"!SOFTENREFERTOADATABASESERVER
THATISAMEMBEROFAN2!#CLUSTERASANODE/RACLESDOCUMENTATIONUSESTHETERMcompute nodeWHEN
REFERRINGTOTHEDATABASESERVERTIEROFTHEPLATFORM4HISCHAPTERISABOUTTHEVARIOUSWAYSINWHICHYOU
CANCONFIGUREYOUR%XADATACOMPUTENODES WHETHERTHEYAREMEMBERSOFAN2!#CLUSTERNODES OR
NONCLUSTEREDDATABASESERVERS 
)TSACOMMONMISCONCEPTIONTHATAN%XADATARACKMUSTBECONFIGUREDASASINGLE/RACLE2!#
CLUSTER4HISCOULDNTBEFURTHERFROMTHETRUTH)NITSSIMPLESTFORM THE%XADATADATABASETIERCANBE
DESCRIBEDASACOLLECTIONOFINDEPENDENTDATABASESERVERSHARDWIREDINTOTHESAMESTORAGEANDTHESAME
MANAGEMENTNETWORKS%ACHOFTHESESERVERSCANBECONFIGUREDTORUNSTANDALONEDATABASESCOMPLETELY
INDEPENDENTOFTHEOTHERS(OWEVER THISISNOTCOMMONLYDONEFORACOUPLEOFREASONSˆSCALABILITYAND
HIGHAVAILABILITY/RACLE2!#HASHISTORICALLYBEENUSEDTOPROVIDENODEREDUNDANCYINTHEEVENTOFNODE
ORINSTANCEFAILURE BUT/RACLEMARKETINGHASMADEITCLEARALLALONGTHATTHEABILITYTOSCALE OUTHASBEEN
ANEQUALLYIMPORTANTGOAL4RADITIONALLY IFWENEEDEDTOINCREASEDATABASEPERFORMANCEANDCAPACITY
WEDIDSOBYUPGRADINGSERVERHARDWARE4HISMETHODBECAMESOCOMMONPLACETHATTHEINDUSTRYCOINED
THEPHRASEhHARDWAREREFRESHvTODESCRIBEIT4HISTERMCANMEANANYTHINGFROMADDING#05S MEMORY
OR)/BANDWIDTHTOACOMPLETEREPLACEMENTOFTHESERVERITSELF)NCREASINGPERFORMANCEANDCAPACITYIN
THISWAYISREFERREDTOASscale-up7ITH%XADATASABILITYTOPROVIDEEXTREME)/PERFORMANCETOTHE
DATABASESERVER BUSSPEEDISNOWTHELIMITINGFACTORFORSCALE UP3OWHATHAPPENSWHENYOUREACHTHE
LIMITSOFSINGLE SERVERCAPACITY4HEOBVIOUSANSWERISTOADDMORESERVERS4OCONTINUETOSCALEYOUR
APPLICATION YOUMUSTSCALE OUT USING/RACLE2!#.ONETHELESS UNDERSTANDINGTHATTHEDATABASE
SERVERSARENOTTIEDTOGETHERINSOMEPROPRIETARYFASHIONCLARIFIESTHEHIGHLYCONFIGURABLENATUREOF
%XADATA)N#HAPTERWEDISCUSSEDVARIOUSSTRATEGIESFORCONFIGURING%XADATASSTORAGESUBSYSTEMSTO
SERVICESPECIFICDATABASESERVERS)NTHISCHAPTERWELLTAKEALOOKATWAYSTHEDATABASETIERMAYBE
CONFIGUREDTOCREATECLUSTEREDANDNONCLUSTEREDDATABASEENVIRONMENTSTHATAREWELLSUITEDTOMEETTHE
NEEDSOFYOURBUSINESS

Provisioning Considerations
%XADATAISANEXTREMELYCONFIGURABLEPLATFORM$ETERMININGTHEBESTCONFIGURATIONFORYOURBUSINESSWILL
INVOLVEREVIEWINGTHEPERFORMANCEANDUPTIMEDEMANDSOFYOURAPPLICATIONSASWELLASENSURING
ADEQUATESEPARATIONFORDEVELOPMENT TEST ANDPRODUCTIONSYSTEMS(EREAREAFEWOFTHEKEY
CONSIDERATIONSFORDETERMININGTHEMOSTSUITABLECOMPUTENODELAYOUTTOSUPPORTYOURDATABASE
ENVIRONMENTS


#(!04%2 #/-054%./$%,!9/54

CPU Resources: 7HENDETERMININGTHEOPTIMALNODELAYOUTFORYOURDATABASES


KEEPINMINDTHAT%XADATAHANDLESTHE)/WORKLOADVERYDIFFERENTLYFROM
TRADITIONALDATABASEPLATFORMS/NNON %XADATAPLATFORMSTHEDATABASESERVER
ISRESPONSIBLEFORRETRIEVINGALLDATABLOCKSFROMSTORAGETOSATISFY)/REQUESTS
FROMTHEAPPLICATIONS%XADATAOFFLOADSALOTOFTHISWORKTOTHESTORAGECELLS
4HISCANSIGNIFICANTLYREDUCETHE#05REQUIREMENTSOFYOURDATABASESERVERS
&IGURINGOUTHOWMUCHLESS#05YOURDATABASESWILLREQUIREISADIFFICULTTASK
BECAUSEITDEPENDS INPART ONHOWMUCHYOURDATABASEISUTILIZINGPARALLEL
QUERYAND(##COMPRESSION ANDHOWSUITABLEYOURAPPLICATION31,ISTO
OFFLOADING3OMEOFTHE3MART3CANOPTIMIZATIONS SUCHASDECRYPTION
PREDICATEFILTERING AND(##DECOMPRESSION WILLREDUCE#05REQUIREMENTS
REGARDLESSOFTHETYPEOFAPPLICATION7ECOVEREDTHESETOPICSINDETAILIN
#HAPTERSn
3YSTEMSREQUIRINGTHOUSANDSOFDEDICATEDSERVERCONNECTIONSCANOVERWHELM
THERESOURCESOFASINGLEMACHINE3PREADINGTHESECONNECTIONSACROSSMULTIPLE
COMPUTENODESREDUCESTHEBURDENONTHESYSTEMSPROCESSSCHEDULERAND
ALLOWSTHE#05TOSPENDITSTIMEMOREEFFECTIVELYSERVICINGCLIENTREQUESTS,OAD
BALANCINGCONNECTIONSACROSSMULTIPLECOMPUTENODESALSOIMPROVESTHE
DATABASESCAPACITYFORHANDLINGCONCURRENTCONNECTIONREQUESTS
Memory Resources:3YSTEMSTHATREQUIRETHOUSANDSOFDEDICATEDSERVER
CONNECTIONSCANALSOPUTABURDENONMEMORYRESOURCES%ACHDEDICATED
SERVERCONNECTIONREQUIRESASLICEOFMEMORY WHETHERORNOTTHECONNECTIONIS
ACTIVELYBEINGUSED3PREADINGTHESECONNECTIONSACROSSMULTIPLE2!#NODES
ALLOWSTHEDATABASETOHANDLEMORECONCURRENTCONNECTIONSTHANASINGLE
COMPUTENODECANMANAGE
I/O Performance and Capacity:%ACHCOMPUTENODEANDSTORAGECELLIS
EQUIPPEDWITHONE'BPS1$2 DUAL PORT)NFINI"ANDCARDTHROUGHWHICH IN
PRACTICALITY EACHCOMPUTENODECANTRANSMITRECEIVEAMAXIMUMOF
GIGABYTESPERSECOND)FTHISISSUFFICIENTBANDWIDTH THENTHEDECISIONOF
MOVINGTOAMULTI NODE2!#CONFIGURATIONMAYBEMOREOFAN(!
CONSIDERATION)FYOUHAVE)/ HUNGRYAPPLICATIONSTHATREQUIREMORE
THROUGHPUTTHANONECOMPUTENODECANPROVIDE THEN2!#MAYBEUSEDTO
PROVIDEHIGHAVAILABILITYASWELLASADDITIONAL)/CAPACITY
Patching and Testing:!NOTHERKEYCONSIDERATIONINDESIGNINGASTABLEDATABASE
ENVIRONMENTISPROVIDINGASEPARATEAREAWHEREPATCHESANDNEWFEATURESCAN
BETESTEDBEFOREROLLINGTHEMINTOPRODUCTION&ORNON %XADATAPLATFORMS
PATCHINGANDUPGRADINGGENERALLYINVOLVES/3PATCHESAND/RACLE2$"-3
PATCHES%XADATAISAHIGHLYCOMPLEXDATABASEPLATFORM CONSISTINGOFSEVERAL
ADDITIONALHARDWAREANDSOFTWARELAYERSTHATMUSTBEPATCHEDPERIODICALLY
SUCHAS#ELL3ERVER 2T[[2;8 ),/-FIRMWARE )NFINI"ANDSWITCHFIRMWARE
)NFINI"ANDNETWORKCARDFIRMWARE AND/&%$DRIVERS!SSUCH ITISABSOLUTELY
CRUCIALTHATATESTENVIRONMENTBEISOLATEDFROMCRITICALSYSTEMSTOBEUSEDFOR
TESTINGPATCHES


#(!04%2 #/-054%./$%,!9/54

■+EVIN3AYS2EGARDING)/0ERFORMANCEAND#APACITY ITISESSENTIALTOUNDERSTANDTHATAPRODUCERSABILITYTO
SENDDATAISMETEREDBYTHEABILITYOFTHECONSUMERTOINGESTTHEDATA4HEREISINHERENTFLOW CONTROLINTHE
RELATIONSHIPBETWEENTHEDATABASEGRIDANDTHESTORAGEGRIDIN%XADATAARCHITECTURE$URINGA3MART3CAN EACH
CELLPRODUCER HASTHECAPACITYTOPRODUCEANOUTBOUNDFLOWOFDATAVIAI$"ATROUGHLY'"PSWITHTHE8
MODELS"UTTHEDATAHASTOGOSOMEWHERE3CALINGFROMTHISSINGLE CELLNUMBERISLIMITEDTOTHEAGGREGATEINGEST
BANDWIDTHOFTHEDATABASEGRIDTHECONSUMERS WHICHIS'"PSFORAFULLRACKCONFIGURATION4OPUTITANOTHER
WAY THE8MODELSCANSTREAMDATAUNIMPEDEDFROMHARDDISKTOTHEDATABASEGRIDATFULLADVERTISEDSCANRATE
'"PS (OWEVER WHENSCANNINGBOTHFLASHANDHARDDISKASSETSCONCURRENTLY THEFULLRACKSCANRATEINCREASES
TOAPPROXIMATELY'"PS7HEREDOESTHEEXCESSGO)TSCLEARTOSEETHATONLYABOUTOFTHAT'"PSCAN
FLOWINTOTHEDATABASEGRID4HENECESSARYPAYLOADREDUCTIONISTHERESPONSIBILITYOF3MART3CANFILTRATIONAND
PROJECTION)FTHEQUERIESARENOTSELECTIVEENOUGHTOREDUCETHEPAYLOAD THERESULTISTHROTTLEDSCANTHROUGHPUT
4HATLEADSTOARELATEDTOPICEFFECTIVESCANRATESANDDATAFLOW

&OR%(##TABLES THEEFFECTIVESCANRATEISEQUALTOTHEPHYSICALSCANRATEMULTIPLIEDBYTHECOMPRESSIONRATIO&OR
INSTANCE CONSIDERAN%(##TABLEWITHACOMPRESSIONRATIOOFTHATFITSWITHINTHECAPACITYOFAFULLRACK
%XADATA3MART&LASH#ACHEROUGHLY4" 3MART3CANWILLSCANTHISTABLEATROUGHLY'"PS BUTTHEEFFECTIVE
SCANRATEISABOUT'"PS7HILENOBODYWOULDARGUETHAT'"PSISAPHENOMENALSCANRATEWITHCURRENT
TECHNOLOGY THEIMPORTANTQUESTIONMUSTSTILLBEASKED(OWSELECTIVEAREYOURQUERIES#ONSIDERINGTHEAGGREGATE
INGESTBANDWIDTHOFAFULLRACK8MODEL ITSCLEARTHATTHE'"PSEFFECTIVESCANRATEHASTOBEFILTEREDDOWNBY
OVER'"¯'" )FTHEFILTRATIONISNOTAGGRESSIVEENOUGH THESCANRATETAILSOFFBECAUSETHE
CONSUMERTHROTTLESTHEPRODUCER(EREINLIESACONUNDRUMˆTHESELECTIVITYOFYOURQUERIESMUSTCOMPLEMENTTHE
COMPRESSIONFACTOROFYOUR%(##DATA4HEPROBLEM HOWEVER ISTHATQUERYSELECTIVITYISACONSTANT ANDYET
SOMETHINGMUSTGIVE4HATSOMETHINGISPHYSICAL)/#ONSIDER FOREXAMPLE AQUERYACCESSINGTABLESWITHA
COMBINEDFOOTPRINTOF4"SOASTOFITWITHINTHE%XADATA3MART&LASHCAPACITYOFAFULLRACK,ETSSAYFURTHERTHAT
THISQUERYCITESVERYFEWCOLUMNSANDISSOSELECTIVETHAT3MART3CANISABLETOWHITTLETHEPAYLOADDOWNBY
4HATWOULDBEVERYEFFECTIVEFILTRATIONAND ASSUCH SCANNINGFLASHANDHARDDISKATAFULLRACKRATEOF'"PS
WOULDRENDERANI$"PAYLOADOFABOUT'"PSˆARATETHATDOESNTEVENSATURATETWODATABASEHOSTSI$"INGEST
BANDWIDTH!T'"PSTHEHYPOTHETICALQUERYCOMPLETESINABOUTSECONDS#AN%(##REDUCETHEQUERYTIME
&ORTHESAKEOFEXAMPLE LETSSAYTHEDATAINTHEHYPOTHETICAL4"TABLECOMPRESSESTENFOLDWITH%(##DOWNTO
ROUGHLY'" !TA3MART3CANRATEOF'"PS THEQUERYSHOULDCOMPLETEINABOUTSECONDS HOWEVER THE
DATAANDQUERYARETHESAME SOTHEPAYLOADREDUCTIONREMAINSCONSTANTAT%(##DATAISDECOMPRESSEDIN
THESTORAGEGRIDAFTERFILTRATIONANDPROJECTION SOFORAGIVENQUERYTHESAMEDATAFLOWSOVERI$"WHETHER
NONCOMPRESSEDORCOMPRESSEDWITH%(##7ITHPAYLOADREDUCTIONBEINGCONSTANT CANOURHYPOTHETICALQUERY
IMPROVEINAMANNERCOMMENSURATEWITHTHECOMPRESSIONRATIOFOREXAMPLE THTHETIME .O BECAUSE
FILTERINGAWAY FROMTHEEFFECTIVESCANRATEOF'"PS RENDERSANI$"DEMANDOF'"PSˆABOUT


#(!04%2 #/-054%./$%,!9/54

MORETHANTHEAGGREGATEINGESTBANDWIDTHOFTHEDATABASEGRID4HESCANRATEISTHEREFORETHROTTLED4HEQUERY
SHOULDINDEEDRUNFASTERTHANNONCOMPRESSED BUTASWECANSEETHEREISMORETOITTHANSIMPLEMATH4HE
HYPOTHETICALQUERYCANNOTCOMPLETEINTHTHETIME)NSUCHACASETHEPHYSICALSCANRATEFORTHEFULLRACK
WOULDBETHROTTLEDBACKTOROUGHLY'"PS ANDSOTHEQUERYWOULDCOMPLETEINAPPROXIMATELYSECONDSˆ
THTHETIMEASINTHENONCOMPRESSEDCASE4HISEXAMPLEDOESNOTTAKEINTOCONSIDERATIONANYOTHERFACTORTHAT
MAYCAUSECONSUMERSTOTHROTTLEPRODUCERS SUCHASJOINPROCESSINGANDSORTING)TCONSIDERSONLYTHEAGGREGATE
I$"INGESTBANDWIDTHINTHEDATABASEGRID/THERFACTORS SUCHASDATABASEGRID#05 SATURATIONDUETOHEAVYJOIN
ANDSORTPROCESSING CANFURTHERTHROTTLETHEFLOWOFDATAOVERI$"4HEREISADIRECTCORRELATIONBETWEENTHE
SELECTIVITYOFAQUERY THEHOSTPROCESSORUTILIZATIONLEVEL ANDTHEPERFORMANCEIMPROVEMENTDELIVEREDBY%(##)
OFTENHAVETOREMINDPEOPLETHATTHECONCEPTOFCOMPRESSIONASAPERFORMANCEFEATUREISQUITENEW ANDOFTEN
MISREPRESENTED

Non-RAC Configuration
#OMPUTENODESMAYBECONFIGUREDINANUMBEROFWAYS)FYOURAPPLICATIONDOESNOTNEEDTHEHIGH
AVAILABILITYORSCALE OUTFEATURESOF/RACLE2!# THEN%XADATAPROVIDESANEXCELLENTPLATFORMFOR
DELIVERINGHIGHPERFORMANCEFORSTANDALONEDATABASESERVERS9OUCANMANAGE)/SERVICELEVELS
BETWEENINDEPENDENTDATABASESBYCONFIGURINGTHE)/2-3EE#HAPTERFORMOREINFORMATIONABOUT
)/2-)NANON 2!#CONFIGURATIONEACHCOMPUTENODEWILLHAVEITSOWN NON CLUSTERED !3-INSTANCE
THATPROVIDESSTORAGEFORALLDATABASESONTHATSERVER%VENTHOUGHYOURDATABASESERVERSMAYBE
INDEPENDENTOFONEANOTHERTHEYCANSTILLSHARE%XADATASTORAGECELLDISKS 4HISALLOWSEACHDATABASETO
MAKEUSEOFTHEFULL)/BANDWIDTHOFTHE%XADATASTORAGESUBSYSTEM.OTETHATINTHISCONFIGURATION
#LUSTERWAREISNOTINSTALLEDATALL*USTLIKEANYOTHERSTANDALONEDATABASESERVER MULTIPLEDATABASES
COEXISTQUITENICELYWITHINTHESAMEDISKGROUPS&OREXAMPLE LETSSAYYOUHAVETHREEDATABASESONYOUR
SERVER CALLEDB0;4B 7A AND?0HA>;;!LLTHREEDATABASESCANSHARETHESAMEDISKGROUPSFORSTORAGE4O
DOTHIS ALLTHREEDATABASESWOULDSETTHEIRINSTANCEPARAMETERSASFOLLOWS
SQNRaTPcTNUX[TNSTbc,30C0 N36
SQNaTR^eTahNUX[TNSTbc,A42> N36
)N&IGURE WESEEALLEIGHTCOMPUTENODESINAN%XADATAFULLRACKCONFIGURATIONRUNNING
STANDALONEDATABASES&OREXAMPLE $" .ODE USESTHE30C0 N36ANDA42> N36DISKGROUPS WHICHARE
SERVICEDBYTHELOCALNONCLUSTERED !3-INSTANCE%ACH!3-INSTANCEHASITSOWNSETOF!3-DISK
GROUPS WHICHCONSISTOFGRIDDISKSFROMALLSTORAGECELLS!TTHESTORAGECELL THESEINDEPENDENT!3-
INSTANCESCANNOTSHAREGRIDDISKS%ACH!3-INSTANCEWILLHAVEITSOWN PRIVATESETOFGRIDDISKS


#(!04%2 #/-054%./$%,!9/54

DB1

DB2

DB3

DB4

Database: DB1
ASM Diskgroups for DB1 DB5

DB6

DB7

DB8

Infiniband Switch

DATA_01_DG Disk Group RECO_01_DG Disk Group

DATA_02_DG Disk Group DATA_02_DG Disk Group

DATA_01_DG DATA_03_DG Disk Group DATA_03_DG Disk Group


Disk Group
DATA_04_DG Disk Group DATA_04_DG Disk Group

Each ASM disk group


DATA_05_DG Disk Group DATA_05_DG Disk Group
consists of 12 grid gisks
from each storage cell.
DATA_06_DG Disk Group DATA_06_DG Disk Group

DATA_07_DG Disk Group DATA_07_DG Disk Group

DATA_08_DG Disk Group DATA_08_DG Disk Group

14 Storage Cells, 168 Cell


disks, 16 ASM Disk Groups
Figure 15-1. Example of a non-RAC Exadata configuration


#(!04%2 #/-054%./$%,!9/54

2ECALLFROM#HAPTERTHATGRIDDISKSAREACTUALLYSLICESOFCELLDISKS4HESEGRIDDISKSAREINTURN
USEDTOCREATE!3-DISKGROUPS&OREXAMPLE EACHOFTHEFOLLOWINGCOMMANDSCREATESTWELVE'GRID
DISKSONSTORAGECELLONEPERCELLDISK 4HESEGRIDDISKSARETHENUSEDTOCREATETHE30C0 x30C0' AND
A42>xA42>'DISKGROUPS)FALLFOURTEENSTORAGECELLSOFAN%XADATAFULLRACKCONFIGURATIONAREUSED IT
WILLYIELDTERABYTESOFSTORAGEASSUMING4" HIGH CAPACITYDRIVES FOREACHDISKGROUP STORAGE
CELLS¾GRIDDISKSPERCELL ¾' 
2T[[2;8-2A40C46A8338B:0;;70A338B:?A458G,30C0 N36bXiT,!6

2T[[2;8-2A40C46A8338B:0;;70A338B:?A458G,30C0'N36bXiT,!6

2T[[2;8-2A40C46A8338B:0;;70A338B:?A458G,A42> N36bXiT,!6

2T[[2;8-2A40C46A8338B:0;;70A338B:?A458G,A42>'N36bXiT,!6
4ABLE ISASUMMARYOFASTORAGELAYOUTTHATSUPPORTSEIGHTSTANDALONEDATABASES EACHHAVINGA
4"30C0DISKGROUPANDA4"A42>DISKGROUP

Table 15-1. Grid Disks

Disk Group Grid Disk Total GB Storage Cell Cell Disk


30C0 30C0 N36N23N   n n

30C0!30C0!N36N23N   n n

30C0"30C0"N36N23N   n n

30C0#30C0#N36N23N   n n

30C0$30C0$N36N23N   n n

30C0%30C0%N36N23N   n n

30C0&30C0&N36N23N   n n

30C0'30C0'N36N23N   n n

A42> A42> N36N23N   n n

A42>!A42>!N36N23N   n n

A42>"A42>"N36N23N   n n

A42>#A42>#N36N23N   n n

A42>$A42>$N36N23N   n n

A42>%A42>%N36N23N   n n


#(!04%2 #/-054%./$%,!9/54

Disk Group Grid Disk Total GB Storage Cell Cell Disk


A42>&A42>&N36N23N   n n

A42>'A42>'N36N23N   n n



"YDEFAULTALL!3-INSTANCESWILLHAVEACCESSTOALLGRIDDISKS4HEFOLLOWING31,QUERYRUNFROMONE
OFTHE!3-INSTANCESILLUSTRATESTHIS.OTICEHOWGRIDDISKSFROMALLSTORAGECELLSAREFLAGGEDAS
CANDIDATES THATIS AVAILABLEFORUSE
BHB)0B< -bT[TRcbdQbca_PcW %]VcW_PcWVaXSSXbZK
UPX[Va^d_WTPSTaNbcPcdb
Ua^\ePb\NSXbZ
fWTaTbdQbca_PcW %]VcW_PcW[XZT30C0N36N
^abdQbca_PcW %]VcW_PcW[XZTA42>N36N
^aSTaQhUPX[Va^d_bdQbca_PcW %]VcW_PcW*

6A8338B:508;6A>D?74034ANBC0CDB

30C0 N23NNRT[[ 24;; 20=3830C4
30C0!N23NNRT[[ 24;; 20=3830C4
30C0"N23NNRT[[ 24;; 20=3830C4
30C0#N23NNRT[[ 24;; 20=3830C4
30C0$N23NNRT[[ 24;; 20=3830C4
30C0%N23NNRT[[ 24;; 20=3830C4
30C0&N23NNRT[[ 24;; 20=3830C4
30C0'N23NNRT[[ 24;; 20=3830C4

30C0 N23NNRT[[!24;;!20=3830C4
30C0!N23NNRT[[!24;;!20=3830C4
30C0"N23NNRT[[!24;;!20=3830C4

30C0&N23NNRT[["24;;"20=3830C4
30C0'N23NNRT[["24;;"20=3830C4

A42> N23NNRT[[ 24;; 20=3830C4
A42>!N23NNRT[[ 24;; 20=3830C4
A42>"N23NNRT[[ 24;; 20=3830C4
A42>#N23NNRT[[ 24;; 20=3830C4
A42>$N23NNRT[[ 24;; 20=3830C4
A42>%N23NNRT[[ 24;; 20=3830C4
A42>&N23NNRT[[ 24;; 20=3830C4
A42>'N23NNRT[[ 24;; 20=3830C4

A42> N23NNRT[[!24;;!20=3830C4
A42>!N23NNRT[[!24;;!20=3830C4
A42>"N23NNRT[[!24;;!20=3830C4

A42>&N23NNRT[["24;;"20=3830C4
A42>'N23NNRT[["24;;"20=3830C4


#(!04%2 #/-054%./$%,!9/54

7ITHTHISMANYGRIDDISKS  INTHISCASE VISIBLETOALL!3-INSTANCES ITSEASYTOSEEHOWTHEY


CANBEACCIDENTALLYMISALLOCATEDTOTHEWRONG!3-DISKGROUPS4OPROTECTYOURSELFFROMMISTAKESLIKE
THAT YOUMIGHTWANTTOCONSIDERUSINGCELLSECURITYTORESTRICTTHEACCESSOFEACH!3-INSTANCESOTHATIT
ONLYhSEESvITSOWNSETOFGRIDDISKS&ORDETAILEDSTEPSONHOWTOIMPLEMENTCELLSECURITY REFERTO
#HAPTER

RAC Clusters
.OWTHATWEVEDISCUSSEDHOWEACHCOMPUTENODEANDSTORAGECELLCANBECONFIGUREDINAFULLY
INDEPENDENTFASHION LETSTAKEALOOKATHOWTHEYCANBECLUSTEREDTOGETHERTOPROVIDEHIGHAVAILABILITY
ANDHORIZONTALSCALABILITYUSING2!#CLUSTERS"UTBEFOREWEDOTHAT WELLTAKEABRIEFDETOURAND
ESTABLISHWHATHIGHAVAILABILITYANDSCALABILITYARE
(IGHAVAILABILITY(! ISAFAIRLYWELLUNDERSTOODCONCEPT BUTITOFTENGETSCONFUSEDWITHFAULT
TOLERANCE)NATRULYFAULT TOLERANTSYSTEM EVERYCOMPONENTISREDUNDANT)FONECOMPONENTFAILS
ANOTHERCOMPONENTTAKESOVERWITHOUTANYINTERRUPTIONTOSERVICE(IGHAVAILABILITYALSOINVOLVES
COMPONENTREDUNDANCY BUTFAILURESMAYCAUSEABRIEFINTERRUPTIONTOSERVICEWHILETHESYSTEM
RECONFIGURESTOUSETHEREDUNDANTCOMPONENT7ORKINPROGRESSDURINGTHEINTERRUPTIONMUSTBE
RESUBMITTEDORCONTINUEDONTHEREDUNDANTCOMPONENT4HETIMEITTAKESTODETECTAFAILURE
RECONFIGURE ANDRESUMEWORKVARIESGREATLYIN(!SYSTEMS&OREXAMPLE ACTIVEPASSIVE5NIXCLUSTERS
HAVEBEENUSEDEXTENSIVELYTOPROVIDEGRACEFULFAILOVERINTHEEVENTOFASERVERCRASH.OW YOUMIGHT
CHUCKLETOYOURSELFWHENYOUSEETHEWORDShGRACEFULFAILOVERvANDhCRASHvUSEDINTHESAMESENTENCE
UNLESSYOUWORKINTHEAIRLINEINDUSTRY SOLETMEEXPLAIN'RACEFULFAILOVERINTHECONTEXTOF
ACTIVEPASSIVECLUSTERSMEANSTHATWHENASYSTEMFAILUREOCCURS ORACRITICALCOMPONENTFAILS THE
RESOURCESTHATMAKEUPTHEAPPLICATION DATABASE ANDINFRASTRUCTUREARESHUTDOWNONTHEPRIMARY
SYSTEMANDBROUGHTBACKONLINEONTHEREDUNDANTSYSTEMAUTOMATICALLYWITHASLITTLEDOWNTIMEAS
POSSIBLE4HEALTERNATIVE ANDSOMEWHATLESSGRACEFUL TYPEOFFAILOVERWOULDINVOLVEAPHONECALLTOYOUR
SUPPORTSTAFFATINTHEMORNING)NACTIVEPASSIVECLUSTERS THEDATABASEANDPOSSIBLYOTHER
APPLICATIONSONLYRUNONONENODEATATIME&AILOVERUSINGINTHISCONFIGURATIONCANTAKESEVERAL
MINUTESTOCOMPLETEDEPENDINGONWHATRESOURCESANDAPPLICATIONSMUSTBEMIGRATED/RACLE2!#USES
ANACTIVEACTIVECLUSTERARCHITECTURE&AILOVERONAN2!#SYSTEMCOMMONLYTAKESLESSTHANAMINUTETO
COMPLETE4RUEFAULTTOLERANCEISGENERALLYVERYDIFFICULTANDMUCHMOREEXPENSIVETOIMPLEMENTTHAN
HIGHAVAILABILITY4HETYPEOFSYSTEMANDIMPACTORCOST OFAFAILUREUSUALLYDICTATESWHICHISMORE
APPROPRIATE#RITICALSYSTEMSONANAIRLINER SPACESTATION ORALIFESUPPORTSYSTEMEASILYJUSTIFYAFAULT
TOLERANTARCHITECTURE"YCONTRAST AWEBAPPLICATIONSERVICINGTHECOMPANYSRETAILSTOREFRONTUSUALLY
CANNOTJUSTIFYTHECOSTANDCOMPLEXITYOFAFULLYFAULT TOLERANTARCHITECTURE%XADATAISAHIGH AVAILABILITY
ARCHITECTUREPROVIDINGFULLYREDUNDANTHARDWARECOMPONENTS7HEN/RACLE2!#ISUSED THIS
REDUNDANCYANDFASTFAILOVERISEXTENDEDTOTHEDATABASETIER
7HEN#05 MEMORY OR)/RESOURCELIMITSFORASINGLESERVERAREREACHED ADDITIONALSERVERSMUST
BEADDEDTOINCREASECAPACITY4HETERMhSCALABILITYvISOFTENUSEDSYNONYMOUSLYWITHPERFORMANCE
4HATIS INCREASINGCAPACITYEQUALSINCREASINGPERFORMANCE"UTTHECORRELATIONBETWEENCAPACITYAND
PERFORMANCEISNOTADIRECTONE4AKE FOREXAMPLE ASINGLE THREADED #05INTENSIVEPROGRAMTHATTAKES
MINUTESTOCOMPLETEONATWO #05SERVER!SSUMINGTHESERVERISNT#05 BOUND INSTALLINGTWOMORE
#05SISNOTGOINGTOMAKETHEPROCESSRUNANYFASTER)FITCANONLYRUNONONE#05ATATIME ITWILLONLY
EXECUTEASFASTASONE#05CANPROCESSIT0ERFORMANCEWILLONLYIMPROVEIFADDINGMORE#05SALLOWSA
PROCESSTOHAVEMOREUNINTERRUPTEDTIMEONTHEPROCESSOR.EITHERWILLITRUNANYFASTERIFWERUNITONA
FOUR NODECLUSTER!STHEOLDSAYINGGOES NINEPREGNANTWOMENCANNOTMAKEABABYINONEMONTH
(OWEVER SCALINGOUTTOFOURSERVERSCOULDMEANTHATWECANRUNFOURCOPIESOFOURPROGRAM
CONCURRENTLY ANDGETROUGHLYFOURTIMESTHEAMOUNTOFWORKDONEINTHESAMEMINUTES4OSUMITUP
SCALINGOUTADDSCAPACITYTOYOURSYSTEM7HETHERORNOTITIMPROVESPERFORMANCEDEPENDSONHOW
SCALABLEYOURAPPLICATIONIS ANDHOWHEAVILYLOADEDYOURCURRENTSYSTEMIS+EEPINMINDTHAT/RACLE


#(!04%2 #/-054%./$%,!9/54

2!#SCALESEXTREMELYWELLFORWELLWRITTENAPPLICATIONS#ONVERSELY POORLYWRITTENAPPLICATIONSTENDTO
SCALEPOORLY
%XADATACANBECONFIGUREDASMULTIPLE2!#CLUSTERSTOPROVIDEISOLATIONBETWEENENVIRONMENTS
4HISALLOWSTHECLUSTERSTOBEMANAGED PATCHED ANDADMINISTEREDINDEPENDENTLY!TTHEDATABASETIER
THISISDONEINTHESAMEWAYYOUWOULDCLUSTERANYORDINARYSETOFSERVERSUSING/RACLE#LUSTERWARE4O
CONFIGURESTORAGECELLSTOSERVICESPECIFICCOMPUTENODES THERT[[X_^aPFILEONEACHNODELISTSTHE
STORAGECELLSITWILLUSE&OREXAMPLE THEFOLLOWINGRT[[X_^aPFILELISTSSEVENOFTHEFOURTEENSTORAGECELLS
BYTHEIRNETWORKADDRESS
JT]ZSQ )^aPR[T)4G31 LW^\T^aPR[T
-RPcTcR^aPR[TRT[[]Tcf^aZR^]UXVRT[[X_^aP
RT[[, (! %' !(
RT[[, (! %' ! 
RT[[, (! %' ! 
RT[[, (! %' ! !
RT[[, (! %' ! "
RT[[, (! %' ! #
RT[[, (! %' ! $
7HEN!3-STARTSUP ITSEARCHESTHESTORAGECELLSONEACHOFTHESE)0ADDRESSESFORGRIDDISKSITCAN
USEFORCONFIGURING!3-DISKGROUPS!LTERNATIVELY #ELL3ECURITYCANBEUSEDTOLOCKDOWNACCESSSOTHAT
ONLYCERTAINSTORAGECELLSAREAVAILABLEFORCOMPUTENODESTOUSE4HERT[[X_^aPFILEANDCELLSECURITYARE
COVEREDINDETAILIN#HAPTER
4OILLUSTRATEWHATAMULTI 2!#%XADATACONFIGURATIONMIGHTLOOKLIKE LETSCONSIDERAN%XADATA6
FULLRACKCONFIGURATIONPARTITIONEDINTOTHREE/RACLE2!#CLUSTERS!FULLRACKGIVESUSEIGHTCOMPUTE
NODESANDFOURTEENSTORAGECELLSTOWORKWITH#ONSIDERAN%XADATAFULLRACKCONFIGUREDASFOLLOWS
v /NE0RODUCTION2!#CLUSTERWITHFOURCOMPUTENODESANDSEVENSTORAGECELLS
v /NE4EST2!#CLUSTERWITHTWOCOMPUTENODESANDTHREESTORAGECELLS
v /NE$EVELOPMENT2!#CLUSTERWITHTWOCOMPUTENODESANDFOURSTORAGECELLS
4ABLE SHOWSTHERESOURCEALLOCATIONOFTHESE2!#CLUSTERS EACHWITHITSOWNSTORAGEGRID!S
YOUREADTHISTABLE KEEPINMINDTHATHARDWAREISAMOVINGTARGET4HESEFIGURESAREFROMAN%XADATA6
)NTHISEXAMPLEWEUSEDTHEHIGH CAPACITY 4"3!4!DISKDRIVES

Table 15-2. Cluster Resources

Cluster Db Servers Db Memory Db CPU Storage Cell Cell Disks Raw Storage
02/$?#,534%2 0ROD 0ROD '¾ ¾ n  4

4%34?#,534%24EST 4EST '¾ ¾ n  4

$%6?#,534%2 $EV $EV '¾ ¾ n  4




4HESE2!#ENVIRONMENTSCANBEPATCHEDANDUPGRADEDCOMPLETELYINDEPENDENTLYOFONEANOTHER
4HEONLYHARDWARERESOURCESTHEYSHAREARETHE)NFINI"ANDSWITCHANDTHE+6-SWITCH)FYOUARE
CONSIDERINGAMULTI 2!#CONFIGURATIONLIKETHIS KEEPINMINDTHATPATCHESTOTHE)NFINI"ANDSWITCHWILL


#(!04%2 #/-054%./$%,!9/54

AFFECTALLSTORAGECELLSANDCOMPUTENODES4HISISALSOTRUEOFTHE+6-SWITCH WHICHISNOTNEEDEDTO
RUNTHECLUSTERS !3-INSTANCES ORDATABASESSOIFANISSUETAKESYOUR+6-SWITCHOFFLINEFORAFEWDAYS
ITWONTIMPACTSYSTEMPERFORMANCEORAVAILABILITY&IGURE ILLUSTRATESWHATTHISCLUSTERCONFIGURATION
WOULDLOOKLIKE

PROD_CLUSTER

Prod1

Prod2

Prod3

Prod4 Storage Cells 1-7


84 Cell Disks, 168T Raw Storage

DATA_DG Disk Group RECO_DG Disk Group

SYSTEM_DG Disk Group

TEST_CLUSTER

Test1

Test2

Storage Cells 8-10


36 Cell Disks, 72T Raw Storage
DATA_DG Disk Group RECO_DG Disk Group

SYSTEM_DG Disk Groups

DEV_CLUSTER

Dev1

Dev2 Storage Cells 8-10


48 Cell Disks, 96T Raw Storage

DATA_DG Disk Group RECO_DG Disk Group


SYSTEM_DG Disk Group


Figure 15-2. An Exadata full rack configured for three RAC clusters

Typical Exadata Configuration


4HETWOCONFIGURATIONSTRATEGIESWEVEDISCUSSEDSOFARAREFAIRLYEXTREMEEXAMPLES4HEhNON 2!#
$ATABASEvCONFIGURATIONILLUSTRATEDHOW%XADATACANBECONFIGUREDWITHOUT#LUSTERWARE TOCREATEA
hSHAREDNOTHINGvCONSOLIDATIONPLATFORM4HESECONDEXAMPLE h2!##LUSTERS vSHOWEDHOW


#(!04%2 #/-054%./$%,!9/54

#LUSTERWARECANBEUSEDTOCREATEMULTIPLE ISOLATED2!#CLUSTERS.EITHEROFTHESECONFIGURATIONSIS
TYPICALLYFOUNDINTHEREALWORLD BUTTHEYILLUSTRATETHECONFIGURATIONCAPABILITIESOF%XADATA.OWLETS
TAKEALOOKATACONFIGURATIONWECOMMONLYSEEINTHEFIELD&IGURE SHOWSATYPICALSYSTEMWITHTWO
%XADATAHALFRACKS)TCONSISTSOFAPRODUCTIONCLUSTER?A>3N2;DBC4A HOSTINGATWO NODEPRODUCTION
DATABASEANDATWO NODE5!4DATABASE4HEPRODUCTIONAND5!4DATABASESSHARETHESAME!3-DISK
GROUPSMADEUPOFALLGRIDDISKSACROSSALLSTORAGECELLS )/RESOURCESAREREGULATEDANDPRIORITIZED
USING%XADATA)/2ESOURCE-ANAGER)/2- DISCUSSEDIN#HAPTER4HEPRODUCTIONDATABASEUSES
!CTIVE$ATA'UARDTOMAINTAINAPHYSICALSTANDBYFORDISASTERRECOVERYANDREPORTINGPURPOSES4HE5!4
DATABASEISNOTCONSIDEREDBUSINESS CRITICAL SOITISNOTPROTECTEDWITH$ATA'UARD/NTHESTANDBY
CLUSTERBC1HN2;DBC4A THEBcQhDATABASEUSESFOUROFTHESEVENSTORAGECELLSFORITS!3-STORAGE/NTHE
DEVELOPMENTCLUSTER34EN2;DBC4A THE3TeDATABASEUSESTHEREMAININGTHREECELLSFORITS!3-STORAGE
4HEDEVELOPMENTCLUSTERISUSEDFORONGOINGPRODUCTDEVELOPMENTANDPROVIDESATESTBEDFORINSTALLING
%XADATAPATCHES DATABASEUPGRADES ANDNEWFEATURES

RAC Cluster: PROD_CLUSTER RAC Cluster: STBY_CLUSTER


Stby1
Prod1
Stby2
Prod2

DATA_DG
uard
Data G RECO_DG
DATA_DG SYSTEM_DG
RECO_DG
4 Storage Cells,
48 Cell disks, 96T Raw Storage.
SYSTEM_DG 3 ASM Disk Groups

UAT1
RAC Cluster: DEV_CLUSTER
UAT2 Dev1

Dev2
Half Rack with 1 RAC Cluster
7 Storage Cells,
DATA_DG
84 Cell disks, 168T Raw Storage. 3 ASM Disk RECO_DG
Groups Shared by Prod and UAT databases.
SYSTEM_DG
3 Storage Cells,
36 Cell disks, 72T Raw Storage.
3 ASM Disk Groups

Half Rack with 2 RAC Clusters


4, 3 Storage Cells respectively,
Disk Groups not shared between Stby & Dev

Figure 15-3. A typical configuration

Exadata Clusters
%XADATASABILITYTOSCALEOUTDOESNTENDWHENTHERACKISFULL7HENONE%XADATARACKDOESNTQUITEGET
THEJOBDONEFORYOU ADDITIONALRACKSMAYBEADDEDTOTHECLUSTER CREATINGALARGE SCALEDATABASEGRID
5PTOEIGHTRACKSMAYBECABLEDTOGETHERTOCREATEAMASSIVEDATABASEGRID CONSISTINGOFDATABASE
SERVERSAND TERABYTESOFSTORAGE!CTUALLY %XADATAWILLSCALEBEYONDEIGHTRACKS BUTADDITIONAL
)NFINI"ANDSWITCHESMUSTBEPURCHASEDTODOIT%XADATALINKSCABINETSTOGETHERUSINGWHAT/RACLECALLSA


#(!04%2 #/-054%./$%,!9/54

spine switch4HESPINESWITCHISINCLUDEDWITHALLHALFRACKANDFULLRACKCONFIGURATIONS1UARTERRACK
CONFIGURATIONSDONOTHAVEASPINESWITCHANDCANNOTBELINKEDWITHOTHER%XADATARACKS)NAFULLRACK
CONFIGURATION THEPORTSOFALEAFSWITCHAREUSEDASFOLLOWS
v %IGHTLINKSTOTHEDATABASESERVERS
v &OURTEENLINKSTOTHESTORAGECELLS
v 3EVENLINKSTOTHEREDUNDANTLEAFSWITCH
v /NELINKTOTHESPINESWITCH
v 3IXPORTSOPEN
&IGURE SHOWSAN%XADATAFULLRACKCONFIGURATIONTHATISNOTLINKEDTOANYOTHER%XADATARACK)TS
INTERESTINGTHAT/RACLECHOSETOCONNECTTHETWOLEAFSWITCHESTOGETHERUSINGTHESEVENSPARECABLES
0ERHAPSITSBECAUSETHESECABLESAREPRECONFIGUREDINTHEFACTORY ANDPATCHINGTHEMINTOTHELEAF
SWITCHESSIMPLYKEEPSTHEMOUTOFTHEWAYANDMAKESITEASIERTORECONFIGURELATER4HELEAFSWITCHES
CERTAINLYDONOTNEEDTOBELINKEDTOGETHER4HELINKBETWEENTHELEAFSWITCHESANDTHESPINESWITCH
DOESNTSERVEANYPURPOSEINTHISCONFIGURATION EITHER)TISONLYUSEDIFTWOORMORE%XADATARACKSARE
LINKEDTOGETHER
Spine Switch

Links to 8 Database Links to 8 Database


Servers Servers
7 Inter-switch links

Leaf Switch 1 Leaf Switch 2

Links to 14 Storage Cells Links to 14 Storage Cells



Figure 15-4. An Exadata full rack InfiniBand network

4HESPINESWITCHISJUSTLIKETHEOTHERTWO)NFINI"ANDSWITCHESTHATSERVICETHECLUSTERANDSTORAGE
NETWORK4HEDIAGRAMMAYLEADYOUTOWONDERWHY/RACLEWOULDMAKEEVERYCOMPONENTINTHERACK
REDUNDANTEXCEPTTHESPINESWITCH4HEANSWERISTHATREDUNDANCYISPROVIDEDBYCONNECTINGEACHLEAF
SWITCHTOEVERYSPINESWITCHINTHECONFIGURATIONFROMTWOTOEIGHTSPINESWITCHES 
4ONETWORKTWO%XADATARACKSTOGETHER THESEVENINTER SWITCHCABLES SEENIN&IGURE  ARE
REDISTRIBUTEDSOTHATFOUROFTHEMLINKTHELEAFSWITCHWITHITSINTERNALSPINESWITCH ANDFOUROFTHEMLINK
THELEAFSWITCHTOTHESPINESWITCHINTHEADJACENTRACK&IGURE SHOWSTHENETWORKCONFIGURATIONFOR
TWO%XADATARACKSNETWORKEDTOGETHER7HENEIGHT%XADATARACKSARELINKEDTOGETHER THESEVENINTER


#(!04%2 #/-054%./$%,!9/54

SWITCHCABLESSEENIN&IGURE AREREDISTRIBUTEDSOTHATEACHLEAF TO SPINE SWITCHLINKUSESONECABLE


EIGHTCABLESPERLEAFSWITCH 7HENYOURELINKINGFROMTHREETOSEVEN%XADATARACKSTOGETHER THESEVEN
INTER SWITCHCABLESAREREDISTRIBUTEDASEVENLYASPOSSIBLEACROSSALLLEAF TO SPINE SWITCHLINKS,EAF
SWITCHESARENOTLINKEDTOOTHERLEAFSWITCHES ANDSPINESWITCHESARENOTLINKEDTOOTHERSPINESWITCHES
.OCHANGESAREEVERNEEDEDFORTHELEAFSWITCHLINKSTOTHECOMPUTENODESANDSTORAGECELLS

Exadata Full Rack #1 Exadata Full Rack #2

Spine Switch Spine Switch

Leaf Switch 1 Leaf Switch 2 Leaf Switch 1 Leaf Switch 2



Figure 15-5. A switch configuration for two Exadata racks, with one database grid

Summary
%XADATAISAHIGHLYCOMPLEX HIGHLYCONFIGURABLEDATABASEPLATFORM)N#HAPTER WETALKEDABOUTALL
THEVARIOUSWAYSDISKDRIVESANDSTORAGECELLSCANBEPROVISIONEDSEPARATELY ORINCONCERT TODELIVERWELL
BALANCED HIGH PERFORMANCE)/TOYOUR/RACLEDATABASES)NTHISCHAPTERWETURNEDOURATTENTIONTO
PROVISIONINGCAPABILITIESANDSTRATEGIESATTHEDATABASETIER%XADATAISRARELYUSEDTOHOSTSTANDALONE
DATABASESERVERS)NMOSTCASESITISFARBETTERSUITEDFOR/RACLE2!#CLUSTERS5NDERSTANDINGTHATEVERY
COMPUTENODEANDSTORAGECELLISAFULLYINDEPENDENTCOMPONENTISIMPORTANT SOWESPENTA
CONSIDERABLEAMOUNTOFTIMESHOWINGHOWTOPROVISIONEIGHTSTANDALONECOMPUTENODESONAN%XADATA
FULLRACKCONFIGURATION&ROMTHEREWEMOVEDONTOAN/RACLE2!#PROVISIONINGSTRATEGYTHATPROVIDED
SEPARATIONBETWEENTHREECOMPUTINGENVIRONMENTS!NDFINALLY WETOUCHEDONHOW%XADATARACKSMAY
BENETWORKEDTOGETHERTOBUILDMASSIVEDATABASEGRIDS5NDERSTANDINGTHECONCEPTSEXPLOREDIN#HAPTER
ANDOFTHISBOOKWILLHELPYOUMAKETHERIGHTCHOICESWHENTHETIMECOMESTOARCHITECTA
PROVISIONINGSTRATEGYFORYOUR%XADATADATABASEENVIRONMENT


C H A P T E R 16



Unlearning Some Things


We Thought We Knew

“It ain't what you don't know that gets you into trouble.
It's what you know for sure that just ain't so.”

~ -ARK4WAIN


/RACLEDOESSOMETHINGSVERYDIFFERENTLYWHENRUNNINGON%XADATATHANWHENRUNNINGONNON %XADATA
PLATFORMS4HEOPTIMIZATIONSPROVIDEDBY%XADATAAREDESIGNEDTOTAKEADIFFERENTAPPROACHTHAN/RACLE
HASTRADITIONALLYFOLLOWED4HISCHANGEMEANSTHATWENEEDTOATTACKSOMEPROBLEMSWITHACOMPLETELY
DIFFERENTMINDSET4HATISNOTTOSAYTHATEVERYTHINGISDIFFERENT)NFACT MOSTOFTHEFUNDAMENTAL
PRINCIPLESREMAINUNCHANGED!FTERALL THESAMEDATABASESOFTWARERUNSON%XADATATHATRUNSONOTHER
PLATFORMS"UTTHEREARESOMETHINGSTHATAREJUSTFUNDAMENTALLYDIFFERENT
4HISCHAPTERFOCUSESONHOWWESHOULDCHANGEOURTHINKINGWHENRUNNINGDATABASESON%XADATA

A Tale of Two Systems


4HEWAYWETHINKABOUTSYSTEMSRUNNINGON%XADATALARGELYDEPENDSONTHEWORKLOADBEINGEXECUTED
/,40 ORIENTEDWORKLOADSTENDTOFOCUSUSONUSINGFLASHCACHEFORSPEEDINGUPSMALLREADS"UTFRANKLY
THISTYPEOFWORKLOADISNOTABLETOTAKEADVANTAGEOFMOSTOFTHEADVANTAGESPROVIDEDBY%XADATA$7
ORIENTEDWORKLOADSTENDTOFOCUSUSONMAKINGUSEOF3MART3CANSATEVERYOPPORTUNITYANDTRYINGTOUSE
ALLTHEAVAILABLERESOURCES#05RESOURCESONTHESTORAGEANDDATABASETIERS FOREXAMPLE 4HISISWHERE
%XADATASBUILT INADVANTAGESCANHAVETHEMOSTIMPACT5NFORTUNATELY MOSTSYSTEMSEXHIBIT
CHARACTERISTICSOFBOTH$7AND/,40WORKLOADS4HESEhMIXED7ORKLOADSvARETHEMOSTDIFFICULTAND
IRONICALLYTHEMOSTCOMMON4HEYARETHEMOSTCOMMONBECAUSEITISRARETOSEEAN/,40 ORIENTED
SYSTEMTHATDOESNTHAVESOMEREPORTINGCOMPONENTTHATPRODUCESLONG RUNNING THROUGHPUT SENSITIVE
QUERIES)TSALSOQUITECOMMONTOSEE$7 ORIENTEDWORKLOADSTHATHAVE/,40 LIKETRICKLEFEEDS4HESE
COMBINATIONSYSTEMSREQUIRETHEMOSTDIFFICULTTHOUGHTPROCESSBECAUSE DEPENDINGONTHEISSUEAT
HAND YOUWILLHAVETOBECONSTANTLYRESETTINGYOURAPPROACHTOMANAGINGPERFORMANCE4HEYAREALSO
DIFFICULTBECAUSE$7WORKLOADSAREGENERALLYCONSTRAINEDBYTHEDATA FLOWDYNAMICSTHATCONTROL
THROUGHPUT WHILE/,40SYSTEMSAREUSUALLYCONSTRAINEDBYLATENCYISSUES3OFORMIXEDWORKLOADSYOU
BASICALLYNEEDTOTRAINYOURSELFTOEVALUATEEACHSCENARIOANDCATEGORIZEITASEITHERLATENCY SENSITIVEOR


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

THROUGHPUT SENSITIVE4HISEVALUATIONOFWORKLOADCHARACTERISTICSSHOULDBEDONEPRIORTOBEGINNINGANY
ANALYSIS

OLTP-Oriented Workloads
4HEREISLITTLETOSAYABOUTRUNNING/,40WORKLOADSON%XADATA3INCE%XADATARUNSSTANDARD/RACLE
DATABASESOFTWARE YOUSHOULDNOTHAVETOADJUSTYOURBASICAPPROACHSIGNIFICANTLY4HEREAREONLYA
HANDFULOFPOINTSTOKEEPINMINDWITHTHISTYPEOFSYSTEM

%XADATA3MART&LASH#ACHE%3&#
4HEKEYCOMPONENTOF%XADATAWHENITCOMESTO/,40WORKLOADSIS%XADATA3MART&LASH#ACHE%3&#
WHICHCANSIGNIFICANTLYREDUCEDISKACCESSTIMESFORSMALLREADS&ORTHATREASON ITISIMPORTANTTOVERIFY
THAT%3&#ISWORKINGCORRECTLY&ORTHISTYPEOFWORKLOADYOUSHOULDALSOEXPECTTHATALARGEPERCENTAGE
OFPHYSICAL)/OPERATIONSAREBEINGSATISFIEDBY%3&#4HISCANBEINFERREDFAIRLYEASILYBYLOOKINGATTHE
AVERAGESINGLE BLOCKREADTIMES!SINGLE BLOCKREADSHOULDTAKEAROUNDMSIFITISSATISFIEDBYFLASH
CACHE"YCONTRAST SINGLE BLOCKREADSTAKEONAVERAGEAROUNDMSIFTHEYARESATISFIEDBYACTUALDISK
READS3TANDARD!72REPORTSPROVIDEBOTHAVERAGEVALUESANDAHISTOGRAMOFWAITEVENTS)FTHEAVERAGE
SINGLE BLOCKREADTIMESAREWELLABOVETHEMSRANGE YOUSHOULDBELOOKINGFORASYSTEMICPROBLEM LIKE
FLASHCARDSTHATARENOTWORKINGORACRITICALTABLEHASBEENDEFINEDTONEVERBECACHED USINGTHE
24;;N5;0B7N20274=>=4SYNTAX4HEHISTOGRAMSSHOULDBEUSEDASWELLTOVERIFYTHATTHEAVERAGEISNOT
COVERINGUPASIGNIFICANTNUMBEROFOUTLIERS(ERESTHERT[[R[XSYNTAXTOCHECKTHESTATUSOFTHEFLASH
CARDS

2T[[2;8-[XbcU[PbWRPRWTSTcPX[
]P\T)S\ RT["N5;0B720274
RT[[3XbZ)
53NNS\ RT["53N NS\ RT["53N!NS\ RT["53N"NS\ RT["53N#NS\ RT["53N$NS\ RT[
"53N%NS\ RT["53N&NS\ RT["53N'NS\ RT["53N(NS\ RT["53N NS\ RT["53N NS\ RT
["53N !NS\ RT["53N "NS\ RT["53N #NS\ RT["53N $NS\ RT["}
RaTPcX^]CX\T)! "!!C &)"()#%$)
XS)'$QT&'#& #R###$( P'S"R(% PS(!#Q
bXiT)"%$!$6
bcPcdb)RRaXcXRP[ 

.OTETHATTHEbcPcdbATTRIBUTEONTHISCELLISRaXcXRP[!SYOUMIGHTEXPECT THISISNOTAGOODTHING
/NTHISPARTICULARSYSTEM THEFLASHCACHEHADBASICALLYDISABLEDITSELF7ENOTICEDITBECAUSETHESINGLE
BLOCKREADTIMESHADSLOWEDDOWN4HISEXAMPLEISFROMANEARLYVERSIONOFRT[[bae4HELATERVERSIONS
INCLUDEALITTLEMOREINFORMATION(EREISANEXAMPLEFROMRT[[bae

2T[[2;8-[XbcU[PbWRPRWTSTcPX[
]P\T)T]ZRT["N5;0B720274
RT[[3XbZ)
53N #NRT[["53N'NRT[["53N "NRT[["53N NRT[["53N!NRT[["53N#NRT[["53N NRT[["53N
NRT[["53N $NRT[["53N"NRT[["53N !NRT[["53N NRT[["53N$NRT[["53N(NRT[["53N&N
RT[["53N%NRT[["
RaTPcX^]CX\T)! "!&C&)$ )#$)
STVaPSTS2T[[SXbZb)
TUUTRcXeT2PRWTBXiT)"%$!$6


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

XS)&U%'& TS$U!#((Q&T$"R#P!"'ST !
bXiT)"%$!$6
bcPcdb)]]^a\P[

.OTICETHENEWATTRIBUTESTVaPSTS2T[[SXbZb!LSONOTICETHATTHEFLASHCACHEONTHISCELLSHOWSA
bcPcdbOF]^a\P[-ONITORINGSTORAGESOFTWAREBEHAVIORISCOVEREDINMOREDETAILIN#HAPTER

3CALABILITY
!NOTHERTHINGTOKEEPINMINDWHENDEALINGWITH/,40WORKLOADSISTHATTHE%XADATAPLATFORMPROVIDES
EXCEPTIONALSCALABILITY5PGRADINGFROMAHALFRACKTOFULLRACKDOUBLESTHENUMBEROF#05SATBOTHTHE
DATABASELAYERANDTHESTORAGELAYER4HEAMOUNTOF%3&#ISALSODOUBLED ASISTHEAVAILABLEMEMORY
4HISALLOWS%XADATATOSCALEINANEARLYLINEARFASHIONFORMANYSYSTEMS

 +EVIN3AYS4HEAUTHORSARECORRECTTHATDOUBLINGFROMAHALFRACKTOAFULLRACKISPERFECTHARDWARESCALE UP)
URGECAUTION HOWEVER INPRESUMINGTHATTHESOFTWAREˆSPECIFICALLY2EAL!PPLICATION#LUSTERS2!# ˆWILLSCALE
LINEARLYWITHALLAPPLICATIONS2!#HASBEENAROUNDFOROVERTENYEARS SOLETSNOTTHROWAWAYOURUNDERSTANDINGOF
ITSSCALABILITYCHARACTERISTICSWHENCONSIDERING%XADATA4HEREISNOTHINGABOUT%XADATAARCHITECTURETHATCHANGES
THEINTRINSIC2!#SCALABILITYCHARACTERISTICS

7RITE )NTENSIVE/,407ORKLOADS
7RITE INTENSIVEWORKLOADSAREASUBSETOF/,40 ORIENTEDSYSTEMS4HEREARESOMESYSTEMSTHATJUSTBANG
AWAYATSINGLE ROWINSERTS4HESESYSTEMSAREOFTENLIMITEDBYTHESPEEDATWHICHCOMMITSCANBEDONE
WHICHOFTENDEPENDSONTHESPEEDWITHWHICHWRITESTOTHELOGFILESCANBEACCOMPLISHED4HISISONE
AREAWHERE%XADATACOMPETESWITHOTHERPLATFORMSONAFAIRLYEVENPLAYINGFIELD4HEREARENOMAJOR
ENHANCEMENTSTHATMAKE%XADATARUNORDERSOFMAGNITUDESFASTERFORSYSTEMSTHATAREBOTTLENECKEDON
WRITEOPERATIONS4HISMEANSTHATTHEREISNOMAGICBULLET ANDTRADITIONALMETHODSOFTUNING SUCHAS
MINIMIZINGCOMMITS AREAPPROPRIATEFORTHESETYPESOFSYSTEMS

 +EVIN3AYS7RITE INTENSIVEWORKLOADSWARRANTDEEPTHOUGHT4HEAUTHORSPOINTOUTTHATTHEREARENOmajor
enhancementsTHATMAKE%XADATAPERFORMORDERSOFMAGNITUDEBETTERTHAN/RACLESYSTEMSCONNECTEDTO
CONVENTIONALSTORAGE4HEREARE INFACT NOATTRIBUTESOF%XADATATHATFAVORWRITE INTENSIVEWORKLOADSASOFTHE
PUBLICATIONDATEOFTHISBOOK4HE6AND8MODELSARECAPABLEOFSERVICINGOVERMILLIONRANDOMSINGLE BLOCK
READSPERSECONDˆFROM%XADATA3MART&LASH#ACHEONTHEFULLRACKCONFIGURATION2ANDOMWRITES ONTHEOTHER
HAND HAVETOGOTOSPINNINGDISKS OFWHICHTHEREAREINTHEFULLRACKCONFIGURATIONS4HEHIGH PERFORMANCE
3!3DRIVESCANSERVICEROUGHLYRANDOMWRITE)/03ˆASLONGASTHESEEKSARESHORT(OWEVER WRITESMUSTBE
REDUNDANT ANDTHUSTHENETRANDOMWRITEBANDWIDTHAVAILABLETODATABASESISROUGHLY )/034OSCALEAN
APPLICATIONTOMILLIONREAD)/03ON%XADATA THEIMPOSEDREADWRITERATIOISTO4HATIS %XADATAIS FOLD


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

MOREREAD CAPABLETHANWRITE CAPABLEFORRANDOM)/!PPLICATIONSTHATLEANHEAVYONRANDOMWRITESWILLBETHE


FIRSTTOSUFFERTHISINHERENTIMBALANCE4HISIMBALANCEISTHEREASONSOMEDEPLOYMENTSREQUIRETHEFLASHASSETSOF
THECELLSTOBEPROVISIONEDASFLASHGRIDDISKS#OMMITTINGFLASHCAPACITYINTHESTATICGRIDDISKFASHION HOWEVER
EATSINTOTHEVALUEPROPOSITIONOF%XADATA%VERYBYTEOFSTORAGECOMMITTEDTOFLASHGRIDDISKISLESSCAPACITY
AVAILABLEFORTHEDYNAMIC INTELLIGENTFLASHCACHEALGORITHMS$EPLOYING/RACLEISOFTENABALANCINGACTˆEVENIN
THE%XADATAENVIRONMENT4HISBOOKSHOULDEQUIPREADERSWITHSUFFICIENTSKILLSTOUSE%XADATAASSETSWISELY

DW-Oriented Workloads
%XADATAWASDESIGNEDTOSPEEDUPLONG RUNNINGQUERIESAGAINSTLARGEVOLUMESOFDATA3OITSHOULDCOME
ASNOSURPRISETHATDATAWAREHOUSINGISWHEREITSIMPORTANTTHATWECHANGESOMEOFOURBASICTHOUGHT
PROCESSES/FCOURSE ONEOFTHEMAJORTECHNIQUESISTOBECONSTANTLYLOOKINGFOROPPORTUNITIESTOALLOW
%XADATAOPTIMIZATIONSTOKICKIN4HISMEANSMAKINGSURETHATTHEAPPLICATIONCANTAKEADVANTAGEOF
3MART3CANS

%NABLING3MART3CANS
4HEMOSTIMPORTANTCONCEPTTOKEEPINMINDWHENDEALINGWITH$7 ORIENTEDWORKLOADSISTHATLONG
RUNNINGSTATEMENTSSHOULDUSUALLYBEOFFLOADED4HESTEPSTOFOLLOWARE

 $ETERMINEWHETHER3MART3CANSAREBEINGUSED
 )F3MART3CANSARENOTBEINGUSED FIXTHINGSSOTHATTHEYWILLBEUSED

4HESEPOINTSSEEMSOOBVIOUSTHATWESHOULDNTNEEDTOREPEATTHEM!LARGEPORTIONOFTHE
OPTIMIZATIONSBUILTINTO%XADATAWORKONLYWHEN3MART3CANSAREUSED3OONEOFTHEFIRSTCHANGESYOU
NEEDTOMAKEINTHEWAYYOUTHINKISTOTRAINYOURSELFTOBECONSTANTLYCONSIDERINGWHETHER3MART3CANS
AREBEINGUSEDAPPROPRIATELYORNOT4HISMEANSYOUNEEDTOHAVEAGOODUNDERSTANDINGOFWHICH
STATEMENTSORPARTSOFSTATEMENTS CANBEOFFLOADEDANDBEABLETODETERMINEWHETHERSTATEMENTSARE
BEINGOFFLOADEDORNOT7EHAVECOVEREDTHEREQUIREMENTSFOR3MART3CANSANDSOMEOFTHETECHNIQUES
THATCANBEUSEDTOVERIFYWHETHERTHEYAREBEINGPERFORMEDORNOTTHROUGHOUTTHEBOOK"UTATTHERISK
OFBEINGREPETITIVE WELLMENTIONTHEMAGAINHERE
4HEREARETWOMAINREQUIREMENTSTHATMUSTBEMETINORDERFOR3MART3CANSTOOCCUR4HEFIRSTIS
THATTHEOPTIMIZERMUSTCHOOSETODOAFULLSCANOFATABLEORAMATERIALIZEDVIEW ORTHEOPTIMIZERMUST
CHOOSETODOAFASTFULLSCANOFANINDEX.OTETHAT3MART3CANSARENOTLIMITEDTOQUERIESOREVENTO
SUBQUERIES4HEOPTIMIZERCANALSOCHOOSETOUSEFULLSCANSFOR34;4C4bANDD?30C4SWHENALARGE
PERCENTAGEOFTHEROWSWILLBEAFFECTED(OWEVER IFYOURAPPLICATIONISDOINGTHIS YOUMIGHTWANTTO
CONSIDERMODIFYINGITTODOSOMETHINGLIKEATRUNCATEANDREBUILD
4HESECONDREQUIREMENTFOR3MART3CANSISTHATTHESCANSMUSTBEPERFORMEDUSINGTHEDIRECTPATH
READMECHANISM.OTETHATWEINTENTIONALLYDIDNTMENTIONTHEOPTIMIZERINTHEDESCRIPTIONOFTHE
SECONDREQUIREMENT4HISISBECAUSETHEOPTIMIZERDOESNOTMAKETHEDECISIONABOUTWHETHERTOUSE
DIRECTPATHREADSORNOT)TISAHEURISTICDECISIONTHATISMADEAFTERTHEPLANHASBEENDETERMINED!S
SUCH ITISNOTDIRECTLYEXPOSEDBYANYOFTHETOOLSLIKETg_[PX]_[P]TYPETOOLS7HATTHISMEANSIN
PRACTICEISTHATITSEASYTOVERIFYTHATTHEFIRSTREQUIREMENTHASBEENMET BUTMORECHALLENGINGTOVERIFY
THESECONDREQUIREMENT


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

/NMOST%XADATAIMPLEMENTATIONS AFAIRLYHIGHPERCENTAGEOFLONG RUNNINGQUERIESAREOFFLOADED


9OUCANCHECKTOSEEWHATPERCENTAGEOFYOURLONG RUNNING31,STATEMENTSHAVEBEENOFFLOADEDBY
SELECTINGALLTHESTATEMENTSFROMeb`[ORFROMTHE!72TABLE310N78BCNB@;BC0C THATHAVEANAVERAGE
RUNTIMEOFOVERSOMENUMBEROFSECONDS ORTHATHAVEANAVERAGELOGICAL)/VALUETHATISGREATERTHAN
SOMEREASONABLEVALUE!CTUALLY THELOGICAL)/ISABETTERMETRICTOUSE ASSOMEOFTHEOFFLOADED
STATEMENTSWILLRUNVERYQUICKLYANDMAYNOTMEETYOURMINIMUMTIMECRITERIA WHICHWILLGIVEYOUA
DISTORTEDPERSPECTIVEONTHEPERCENTAGEOFSTATEMENTSTHATAREBEINGOFFLOADED(ERESANEXAMPLENOTE
THATTHESCRIPTSAREINCLUDEDINTHEONLINECODEREPOSITORY 

BHB/B0=31>G -/^UU[^PSN_TaRT]c
4]cTaeP[dTU^ab`[NcTgc)
4]cTaeP[dTU^a\X]NTcX\T)
4]cTaeP[dTU^a\X]NPeVN[X^)$

C>C0;>55;>0343>55;>0343N

 " '#%!

BHB/B0=31>G -
4]cTaeP[dTU^ab`[NcTgc)B4;42C
4]cTaeP[dTU^a\X]NTcX\T)
4]cTaeP[dTU^a\X]NPeVN[X^)$

C>C0;>55;>0343>55;>0343N

   


4HELISTINGMAKESUSEOFTHE^UU[^PSN_TaRT]cb`[SCRIPT WHICHCALCULATESAPERCENTAGEOF
STATEMENTSCURRENTLYINTHESHAREDPOOLTHATHAVEBEENOFFLOADED7EINITIALLYUSEDITTOEVALUATEALL
STATEMENTSTHATHADOVER LOGICAL)/S7ETHENRANITASECONDTIMEANDLIMITEDOURINVESTIGATION
TOSTATEMENTSTHATBEGINWITHTHEWORDB4;42C)NTHENEXTLISTINGWEVEMADEUSEOFASCRIPTUbg^b`[
THATALLOWSUSTOSEETHEACTUALSTATEMENTSTHATCONTRIBUTETOTHE>55;>03NCALCULATEDINTHEPREVIOUS
LISTING


BHB/B0=31>G -/Ubg^
4]cTaeP[dTU^ab`[NcTgc)
4]cTaeP[dTU^ab`[NXS)
4]cTaeP[dTU^a\X]NTcX\T)
4]cTaeP[dTU^a\X]NPeVN[X^)$
4]cTaeP[dTU^a^UU[^PSTS)

B@;N834G42B0E6N4C8<4>55;>038>NB0E43NB@;NC4GC

Qec$i#'c 'Qh  HTb bT[TRcR^d]cUa^\bZTf"fWT
YhcUa hYSa  (HTb bT[TRcR^d]cUa^\bZTf"fWT
!_Zfc'iYSWQg (HTb bT[TRcR^d]cUa^\bZTf"fWT
!iQc$$$cV !"b!#"&HTb& '$bT[TRc_PaP[[T[P'P
# !]##hdVWbh (HTb bT[TRcR^d]cUa^\bZTf"fWT


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

$iadR#e%h"!U($$  "=^342;0A4Y^Q18=0AHN8=C464A),
%Sg!#&aehZa&!  HTb bT[TRcR^d]cUa^\bZTf"fWT
%ddcS\`a&!b\R!"!'"HTb& '$bT[TRcPeVbZTf"b`[PeV
&h(SchdR#SQW !'&HTb& '"bT[TRcPeV_ZNR^[Ua^\Zb^bZ
Q%dbaV'!WfbP"$'"' =^RP[[SQ\bNbcPcbVPcWTaNSPcPQPb
Ueg"ef_egefc  $HTb((((bT[TRcR^d]cUa^\bZTf"fWT
VR`(P$"i&biYc (HTb bT[TRcR^d]cUa^\bZTf"fWT
Vb"$e$c! S(hU '!HTb((((bT[TRcR^d]cUa^\bZTf"fWT

"a^fbbT[TRcTS

4HEUbg^b`[SCRIPTPROVIDESTHESAMELIMITINGFACTORSASTHE^UU[^PSN_TaRT]cb`[SCRIPT NAMELYA
MINIMUMAVERAGEELAPSEDTIMEANDAMINIMUMAVERAGELOGICAL)/)TALSOOPTIONALLYALLOWSYOUTOLIMIT
THESTATEMENTSTOONLYTHOSETHATAREOFFLOADEDORTHOSETHATARENOTOFFLOADED0LEASEREFERTOTHESCRIPTS
FORFURTHERDETAILSANDKEEPINMINDTHATTHESETECHNIQUESCANALSOBEAPPLIEDTOTHEDATARECORDEDBY
!72FORAHISTORICALPERSPECTIVE
)NTHENEXTSECTIONWELLDISCUSSSOMEISSUESTHATCANCOMPLICATEYOUREFFORTSTOENABLE3MART3CANS


4HINGSTHAT#AN#RIPPLE3MART3CANS
4HEREARESEVERALCOMMONCODINGhTECHNIQUESvTHATEITHERDISABLE3MART3CANSCOMPLETELYORCAUSE
THEMTOBEMUCHLESSEFFECTIVETHANTHEYCOULDBE3OMEOFTHETECHNIQUESAREJUSTBADPRACTICES
REGARDLESSOFWHETHERYOUAREONTHE%XADATAPLATFORMORNOT/THERSDONTCARRYASSIGNIFICANTAPENALTY
ONNON %XADATAPLATFORMS BUTWHENRUNON%XADATATHEYCANPREVENTTHESTORAGESOFTWAREFROMDOING
ALLTHATITCOULDDO7EVEDISCUSSEDMANYOFTHESEISSUESTHROUGHOUTTHISBOOK(EREAREAFEWTHATYOU
SHOULDKEEPINMINDBECAUSEOFTHEFUNDAMENTALLYDIFFERENTBEHAVIORONTHE%XADATAPLATFORM

Functions in WHERE Clauses


/RACLEPROVIDESALARGESETOFFUNCTIONSTHATCANBEAPPLIEDDIRECTLYIN31,STATEMENTS!SWEDISCUSSED
IN#HAPTER NOTALLOFTHOSEFUNCTIONSAREOFFLOADABLE+NOWINGWHICHFUNCTIONSARENOTOFFLOADABLEIS
IMPORTANTBECAUSETHEUSEOFTHOSEFUNCTIONSINF74A4CLAUSESDISABLESPREDICATEFILTERINGTHATMAY
OTHERWISEPROVIDEAMASSIVEREDUCTIONINTHEAMOUNTOFDATATOBETRANSFERREDBACKTOTHEDATABASE
LAYER/BVIOUSLY CUSTOM WRITTEN0,31,FUNCTIONSFALLINTOTHECATEGORYOFhNON OFFLOADABLEvFUNCTIONS
ASWELL
4HISISSUEISSOMEWHATCOUNTERINTUITIVE SINCEWEAREOFTENDOINGFULLTABLESCANSANYWAYWITHDATA
WAREHOUSESYSTEMS/NNON %XADATAPLATFORMS APPLYINGAFUNCTIONINAF74A4CLAUSEOFASTATEMENTTHAT
ISEXECUTEDVIAAFULLTABLESCANDOESNOTIMPOSEMUCHOFAPENALTYWITHREGARDTOTHEAMOUNTOFDATA
THATMUSTBERETURNED BECAUSETHEDATABASEMUSTALREADYRETURNALLBLOCKSFROMTHETABLETOTHE
DATABASESERVER7ITH%XADATA THOUGH APPLYINGAFUNCTIONTHATCANDISABLEPREDICATEFILTERINGCAN
IMPOSEAHUGEPERFORMANCEPENALTY"YTHEWAY USINGCUSTOM0,31,FUNCTIONSINAF74A4CLAUSEIS
GENERALLYALSOABADIDEAONNON %XADATAPLATFORMS BECAUSEADDITIONAL#05WILLBEREQUIREDTOPROCESS
0,31,FOREACHROW ASOPPOSEDTOTHEOPTIMIZEDFUNCTIONS BASEDON#CODE PROVIDEDBY/RACLE

 .OTE9OUCANQUERYEB@;5=N<4C030C0TOSEEWHICHFUNCTIONSAREOFFLOADABLE


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

&URTHERMORE hOFFLOADABLEvFUNCTIONSCANALSOIMPOSELARGEPERFORMANCEPENALTIES(ERESAVERY
SIMPLEEXAMPLESHOWINGTHENEGATIVEEFFECTOFANOFFLOADABLEFUNCTIONINAF74A4CLAUSE

BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[!,:B>*

2>D=C

(

4[P_bTS))) "
BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTd__TaR^[!,:B>*

2>D=C

(

4[P_bTS))) " %
BHB/B0=31>G -/Ubg#
4]cTaeP[dTU^ab`[NcTgc)bT[TRcR^d]cUa^\Zb^bZTf"fWTaT:B>
4]cTaeP[dTU^ab`[NXS)

B@;N83278;3>55;>038>NB0E43N0E6N4C8<4B@;NC4GC

d'V]g\\&RQSZHTb  !bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[
"&c&UiZPYi!URHTb(((( " %bT[TRcR^d]cUa^\Zb^bZTf"fWTaTd__

4[P_bTS)))'

3OD??4AISANOFFLOADABLEFUNCTION9ETWHENWEUSEDITINTHEF74A4CLAUSEOFTHISPARTICULAR
STATEMENT THERESULTWASALARGEDEGRADATIONINPERFORMANCE)FYOUVEBEENFOLLOWINGALONGON SCREEN
YOUMAYALREADYHAVEAPRETTYGOODIDEAWHY

BHB/B0=31>G -bT[TRc]P\TeP[dTUa^\e\hbcPcbebcPc]P\T]
!fWTaT]bcPcXbcXR,bbcPcXbcXR
"P]S]P\T[XZTbc^aPVT*

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg

BHB/B0=31>G -bTccX\X]V^]
BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTd__TaR^[!,:B>*



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

2>D=C

(

4[P_bTS))) "!(
BHB/B0=31>G -bT[TRc]P\TeP[dTUa^\e\hbcPcbebcPc]P\T]
!fWTaT]bcPcXbcXR,bbcPcXbcXR
"P]S]P\T[XZTbc^aPVT*

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg

4[P_bTS))) 
BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"fWTaTR^[!,:B>*

2>D=C

(

4[P_bTS))) 
BHB/B0=31>G -bT[TRc]P\TeP[dTUa^\e\hbcPcbebcPc]P\T]
!fWTaT]bcPcXbcXR,bbcPcXbcXR
"P]S]P\T[XZTbc^aPVT*

=0<4E0;D4

RT[[_WhbXRP[8>QhcTbbPeTSQhbc^aPVTX]STg $(('" !##'

4[P_bTS))) 

3TORAGEINDEXESAREDISABLEDBYFUNCTIONS JUSTLIKEREGULARINDEXES4HISISNOTTOOSURPRISING BUT
AGAIN WHENWEREALREADYDOINGAFULLSCAN WEVETRAINEDOURSELVESTONOTWORRYABOUTFUNCTIONSINTHE
F74A4CLAUSETHATCOULDDISABLEINDEXES%XADATAISDIFFERENT

Chained Rows
4HISISAVERYBROADGENERALIZATION BUTBASICALLYANY/RACLEPROCESSINGTHATREQUIRESREADINGANEXTRA
BLOCKTOCOMPLETEAROWCAUSESTHE%XADATASTORAGESOFTWARETOREVERTTOBLOCKSHIPPING ORpass-through
MODE7EHAVEDISCUSSEDTHISINSEVERALPLACESINTHEPREVIOUSCHAPTERS!SIMPLEEXAMPLEISACHAINED
ROW BUTTHEREAREOTHERSITUATIONSTHATCANCAUSE/RACLETOREVERTTOPASS THROUGHMODE7HATTHIS
MEANSINPRACTICEISTHATSOMEOPERATIONSTHATCAUSESLIGHTDELAYSONNON %XADATAPLATFORMSCAN
SEVERELYIMPACTPERFORMANCEON%XADATA4HEPRIMARYDIAGNOSTICSYMPTOMOFTHISISSUEISTHEPRESENCE
OFMANYSINGLE BLOCK READWAITEVENTSINCOMBINATIONWITHCELL3MART3CANWAITEVENTS)NSUCH
SITUATIONS YOUMAYFINDTHATYOUAREBETTEROFFNOTUSINGOFFLOADINGFORTHESTATEMENTSINQUESTION(ERE
ISANEXAMPLESHOWINGWHERE/RACLESPENDSITSTIMEWHENSELECTINGFROMATABLEWITHCHAINEDROWS


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

BHB/B0=31>G -bT[TRc]d\Na^fbRWPX]NR]cPeVNa^fN[T]Ua^\SQPNcPQ[Tb
!fWTaTcPQ[TN]P\T,CN2708=43!*

=D<NA>FB2708=N2=C0E6NA>FN;4=

   !"&

a^fbT[TRcTS

BHB/B0=31>G-P[cTabhbcT\U[dbWQdUUTaNRPRWT*

BhbcT\P[cTaTS

BHB/B0=31>G-bT[TRcPeV[T]VcWRUa^\cP]T[cNRWPX]TS!*

0E6;4=6C72

#

a^fbT[TRcTS


4gTRdcX^]?[P]

?[P]WPbWeP[dT) (!&!!'#$


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?DkCX\Tk

kkB4;42CBC0C4<4=Ckk k#k#&$"" k)')#"k
k kB>AC066A460C4kk k#kkk
k!kC01;40224BBBC>A0645D;;kCN2708=43!k :k"' <k#&$"" k)')#"k



BcPcXbcXRb

aTRdabXeTRP[[b
SQQ[^RZVTcb
""!%''R^]bXbcT]cVTcb
""!%'"_WhbXRP[aTPSb
aTS^bXiT
"# QhcTbbT]ceXPB@;=Tcc^R[XT]c
##'QhcTbaTRTXeTSeXPB@;=TcUa^\R[XT]c
!B@;=Tca^d]ScaX_bc^Ua^\R[XT]c
b^acb\T\^ah
b^acbSXbZ
 a^fb_a^RTbbTS



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

,,,,cZ_a^U>dc_dc,,,,

B@;83)"d_R\P$]b]QRS?[P]7PbW) (!&!!'#$

bT[TRcPeV[T]VcWR
Ua^\
cP]T[cNRWPX]TS!


RP[[R^d]cR_dT[P_bTSSXbZ`dTahRdaaT]ca^fb

?PabT!
4gTRdcT!
5TcRW#!""( $%""!%'"%%$"(!!

c^cP['!""( $%""!%'"%%$"(!!

<XbbTbX][XQaPahRPRWTSdaX]V_PabT) 
>_cX\XiTa\^ST)0;;NA>FB
?PabX]VdbTaXS)BHB
=d\QTa^U_[P]bcPcXbcXRbRP_cdaTS)!

A^fb bcA^fbPeVA^fb\PgA^fB^daRT>_TaPcX^]

   B>AC066A460C4Ra,""!%(%
   C01;40224BBBC>A0645D;;CN2708=43!Ra,""!%(%


4[P_bTScX\TbX]R[dSTfPXcX]V^]U^[[^fX]VTeT]cb)
4eT]cfPXcTS^]CX\Tb<PgFPXcC^cP[FPXcTS
FPXcTS
B@;=Tc\TbbPVTc^R[XT]c#
B@;=Tc\TbbPVTUa^\R[XT]c# ! 
RT[[bX]V[TQ[^RZ_WhbXRP[aTPS %%!'$(
("!$+,,f^f
aT[XPQ[T\TbbPVT 
T]`):>UPbc^QYTRcRWTRZ_^X]c!
RT[[b\PaccPQ[TbRP]!$%  


)NTHISEXAMPLEWERANAQUERYAGAINSTATABLEINWHICHEVERYROWWASCHAINEDADMITTEDLYABITOF
ANEXTREMEEXAMPLE 7EGENERATEDATRACEDURINGTHEEXECUTIONOFTHESTATEMENTANDTHENRAN
cZa_a^UONTHETRACEFILE WHICHPRODUCEDTHELISTOFWAITEVENTSJUSTSHOWN.OTICETHATTHESTATEMENT
HADANELAPSEDTIMEOFALMOSTMINUTESSECONDS OFWHICHMORETHANSECONDSWASSPENTDOING
SINGLE BLOCKPHYSICALREADS4HESTATEMENTUSEDAFULLTABLESCANANDWASCLEARLYOFFLOADED ASINDICATED
BYTHECELLSMARTTABLESCANWAITEVENTS BUTITSPENTMOSTOFITSTIMEDOINGSINGLE BLOCKREADS/FCOURSE
THESINGLE BLOCKREADSWEREARESULTOFTHECHAINEDROWS4HENEXTLISTINGSHOWSTHEDIFFERENCEBETWEEN
RUNNINGTHEQUERYWITHOFFLOADINGANDWITHOUTOFFLOADING



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

,,,,cda]^UUb\PacbRP]b

BHB/B0=31>G -P[cTabTbbX^]bTcNbTaXP[NSXaTRcNaTPS,cadT*

BTbbX^]P[cTaTS

4[P_bTS))) 
BHB/B0=31>G -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,UP[bT*

BTbbX^]P[cTaTS

4[P_bTS)))
BHB/B0=31>G -P[cTabhbcT\U[dbWQdUUTaNRPRWT*

BhbcT\P[cTaTS

4[P_bTS))) ((
BHB/B0=31>G -bT[TRcPeV[T]VcWRUa^\cP]T[cNRWPX]TS!*

0E6;4=6C72

#

4[P_bTS)))'&'+,,RWPX]TSa^fbSXaTRc_PcWaTPSb]^b\PacbRP]


,,,,cda]^UUSXaTRc_PcWaTPSb

BHB/B0=31>G -P[cTabTbbX^]bTcNbTaXP[NSXaTRcNaTPS,UP[bT*

BTbbX^]P[cTaTS

4[P_bTS))) 
BHB/B0=31>G -P[cTabhbcT\U[dbWQdUUTaNRPRWT*

BhbcT\P[cTaTS

4[P_bTS))) #
BHB/B0=31>G -bT[TRcPeV[T]VcWRUa^\cP]T[cNRWPX]TS!*

0E6;4=6C72

#

4[P_bTS)))("$+,,RWPX]TSa^fbbX]V[TQ[^RZaTPSb]^b\PacbRP]

,,,,cda]^]b\PacbRP]b

BHB/B0=31>G -P[cTabTbbX^]bTcNbTaXP[NSXaTRcNaTPS,cadT*



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

BTbbX^]P[cTaTS

4[P_bTS)))
BHB/B0=31>G -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,cadT*

BTbbX^]P[cTaTS

4[P_bTS)))
BHB/B0=31>G -P[cTabhbcT\U[dbWQdUUTaNRPRWT*

BhbcT\P[cTaTS

4[P_bTS)))'
BHB/B0=31>G -bT[TRcPeV[T]VcWRUa^\cP]T[cNRWPX]TS!*

0E6;4=6C72

#

4[P_bTS)) )$(!#+,,>D27b\PacbRP]Xb]^cV^^SU^a[^cb^URWPX]TSa^fb

BHB/B0=31>G -/Ubg#
4]cTaeP[dTU^ab`[NcTgc)bT[TRcPeV[T]VcWRUa^\cP]T[cNRWPX]TS!
4]cTaeP[dTU^ab`[NXS)

B@;N83278;3>55;>038>NB0E43N0E6N4C8<4B@;NC4GC

"d_R\P$]b]QRSHTb!&#  $(!#bT[TRcPeV[T]VcWRUa^\cP]T[cNRWPX]

4[P_bTS)))%

.OTICETHATTHESTATEMENTWASOFFLOADEDANDTHATTHE8>NB0E43NCALCULATIONPRODUCEDANEGATIVE
NUMBER4HISSHOWSTHATMOREBYTESWERERETURNEDBYTHESTORAGECELLSTHANTHETOTALNUMBEROFBYTES
THATTHETABLEOCCUPIES)TSCLEARFROMTHISEXAMPLETHATCHAINEDROWSCANBEMUCHMOREDETRIMENTALTO
PERFORMANCEWHENATTEMPTINGTOMAKEUSEOF%XADATAS3MART3CANSTHANTOQUERIESTHATAREHANDLEDIN
NORMALBLOCK SHIPPINGMODE)TSWORTHNOTINGTHATTHISISANEXTREMEEXAMPLE ASEVERYROWWAS
CHAINED)NFACT MANYOFTHERECORDSSPANNEDTHREEBLOCKS)NTHISEXTREMECASE ITISCLEARTHATAVOIDING
OFFLOADINGACTUALLYIMPROVESTHEPERFORMANCESIGNIFICANTLY/FCOURSE ELIMINATINGTHECHAINEDROWS
WOULDBETHEBESTSOLUTION

Very Busy Cells


7HENASTORAGECELLBECOMESVERYBUSYWITH#05OPERATIONS ITISPOSSIBLEFORTHESTORAGESOFTWARETO
BEGINREFUSINGTOPERFORMOFFLOADACTIVITIESONSOMEPORTIONOFTHEREQUESTS4HATIS IFAPARTICULARCELL
BECOMESEXTREMELYBUSYANDISGETTINGOFFLOADABLEREQUESTSFROMADATABASESERVERTHATISNOT
PARTICULARLYBUSY ITMAYDECIDETOSENDSOMEDATABACKTOTHEDATABASESERVERTHATHASNOTBEEN
PROCESSEDORHASONLYPARTIALLYBEENPROCESSED)NSOMECASESCOLUMNPROJECTIONMAYBEDONEBUTNOT
FILTERING INOTHERCASES RT[[baeMAYREVERTTOSHIPPINGENTIREBLOCKSBACKTOTHEDATABASELAYER3OWHILE
THISISSUEDOESNOTRESULTINACOMPLETESHUTDOWNOFOFFLOADING ITCANREDUCETHEAMOUNTOFWORKTHATIS
DONEONTHESTORAGETIER


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

4HISISANEXTREMELYCOMPLEXTOPIC ANDITISDIFFICULTTOOBSERVETHEBEHAVIORDIRECTLY4HEGOALOFTHE
FEATUREISTOUTILIZEAVAILABLE#05RESOURCESREGARDLESSOFWHETHERTHEYAREONTHEDATABASETIERORTHE
STORAGETIER4HISBEHAVIORWASINTRODUCEDRELATIVELYRECENTLY INRT[[baeVERSIONWITH
DATABASESRUNNINGWITHBUNDLEPATCHORLATER4HEREISASTATISTICCALLEDRT[[_WhbXRP[8>
QhcTb_dbWTSQPRZSdTc^TgRTbbXeT2?D^]RT[[INWITH"0ANDLATERTHATSHOWSTHISIS
HAPPENING.OTETHATTHESTATISTICNAMEMAYCHANGEINAFUTUREVERSIONTOSOMETHINGREFERRINGTO
hBALANCING#05USAGEv4HEFEATUREISDESIGNEDTOIMPROVETHROUGHPUTONVERYBUSYSYSTEMS BUTITMAY
ALSOCAUSESOMEDEGREEOFINSTABILITYINTHEPERFORMANCEOFCERTAINSTATEMENTS)TISPOSSIBLETODISABLE
THISFEATUREIFYOURRT[[baeISERRONEOUSLYDECIDINGITISTOOBUSYTOTAKEONADDITIONALWORKBUTIN
GENERAL IFYOUOBSERVETHISBEHAVIOR YOUAREPROBABLYGETTINGCLOSETOTHELIMITSOFTHESYSTEM!DDING
ADDITIONALRESOURCESATTHESTORAGELAYERMORESTORAGECELLS MAYBEAVIABLEOPTION

 +EVIN3AYS4HEAUTHORSARECORRECTINTHEIRDESCRIPTIONOFTHISNEWhFEATUREv(OWEVER THEREISONEPOINT)
CANNOTSTRESSENOUGH ANDTHATISTHATTHEMOSTCOMPUTE INTENSIVEWORKINQUERYPROCESSINGmustOCCURINTHE
DATABASEGRIDYETTHEREARESIGNIFICANTLYFEWERPROCESSORSTHERETHANINTHESTORAGEGRIDFOREXAMPLE INTHE
8 ANDINTHE8 MODELS )NTHEEND THEONLYTHINGTHATMATTERSISWHETHERTHEUSERSEXPERIENCEIS
SATISFACTORY(OWEVER DIAGNOSINGANUNSATISFACTORYUSEREXPERIENCEMAYPROVEDIFFICULTWHENTHISFEATUREIS
INVOKED4HEFEATUREHASTHEPROPENSITYTOPASSASMUCHASOFTHEPHYSICAL)/PAYLOADTOTHECELLSEITHER
COMPLETELYUNPROCESSEDORONLYLIGHTLYPROCESSEDASIN FOREXAMPLE %(##PROJECTION 3O THEREARESOME
SCENARIOS)WOULDBEPARTICULARLYCONCERNEDABOUT!LLOWMETOEXPLAIN

7EARENOLONGERLIVINGTHEhgood lifevOFTHES WHEN5NIXSYSTEMSWEREPHYSICALLYCONSTRAINEDBYCARDSLOTS


FORMEMORYAND#057EHAVESYSTEMSWITHVASTAMOUNTSOFMEMORYARAPIDLYINCREASINGTREND ANDAMPLE#05
7EARENOLONGERLIVINGTHEhgood lifevOFhAMPLE#05vBOTTLENECKEDBYFRONT SIDE BUSLIMITATIONS)NSHORT THE
INDUSTRYISDELIVERINGTOUSHUGE FAST BALANCEDSYSTEMS4HESERVERSINTHE%XADATA$ATABASE-ACHINEARENO
EXCEPTION4HESIGNIFICANTCOSTOF%XADATAINCLUDESAFEATUREKNOWNASin-memory parallel queryANDOTHER
FEATURESTHATCANSERVICEUSERSNEEDSWITHOUTTOUCHINGSTORAGEINTHECELLS)MREFERRINGTOFEATURESTHATLEAN
HEAVILYONHOST TIERRESOURCESAND INFACT RELYVERYLITTLEONOFFLOADPROCESSING)FYOUR%XADATASYSTEMHOSTSAN
APPLICATIONTHATEXHIBITSBURSTSOFDATABASE TIER #05 INTENSIVEPROCESSINGINTERMIXEDWITHUSECASESTHATDRIVE
CELLSTOPROCESSORSATURATION )URGECLOSEMONITORINGOFTHISPUSH BACKAKAPASS THROUGH FEATURE(EURISTICSTHAT
GOVERNTHEhWHENvANDhHOWMUCHvFORSUCHAFEATUREAREVERYDIFFICULTTOGETRIGHT)FTHEHEURISTICSARETRIGGERING
THISFEATURE THEPERFORMANCEOFCERTAINAPPLICATIONSMAYSUFFERˆPROBABLYATATIMEWHENYOUREALLYARENTINTHE
MOODFORDEALINGWITHUNPREDICTABLESYSTEMPERFORMANCE(OWEVER ASTHEAUTHORSPOINTOUT THEREAREMETRICS
AVAILABLE ANDTHEFEATURECANBETUNEDˆOREVENDISABLEDIFNECESSARY

7ITHTHISFEATUREINTHEMIX)KNOWTHEFIRSTTHING)DCHECKSHOULDUSERSCOMPLAINABOUTRESPONSETIME BECAUSE
WHENTHISFEATUREISTRIGGEREDYOUSHOULDEXPECTYOURDATABASEGRIDPROCESSORSTORATCHETUPTOCOMPLETE
SATURATION)FYOURNORMALHOST#05UTILIZATIONLEVELISNOTWHENUSERSAREHAPPY THENPERHAPSALITTLE


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

DEDUCTIVEREASONINGWILLGOALONGWAYTOWARDFIGURINGOUTWHATHASGONEWRONGSHOULDTHECOMPLAINTSCOMEIN
(AVINGSAIDALLTHAT LETSNOTFORGETFORAMOMENTTHAT$7")WORKLOADSmustBURN#054HATISTHENATUREOFTHE
BEASTASITWERE,IFEISANEVER ENDINGSERIESOFCHOICES

CASE Statements
20B4STATEMENTSANDTHEIROLDERCOUSINTHE342>34FUNCTION AREOFTENUSEDTOAVOIDREPEATEDSCANSOF
THESAMETABLE'ENERALLYSPEAKINGTHISISAREASONABLETECHNIQUE ALTHOUGHANALYTICFUNCTIONSNOW
PROVIDEANOTHERWAYTODEALWITHTHISISSUE.EVERTHELESS ITISQUITECOMMONTOSEECODETHATAPPLIES
THISTRICK4HEWHOLEIDEAISTOREPLACEF74A4CLAUSESWITH20B4STATEMENTS4HISISPERFECTLYREASONABLE
WHENALLTHEBLOCKSMUSTBESHIPPEDBACKTOTHEDATABASESERVERTOBEEVALUATED"UTWITH%XADATAS
ABILITYTODOFILTERINGATTHESTORAGELAYER THISTECHNIQUEMAYNOTBETHEBESTSOLUTION(ERESAQUICK
EXAMPLE
BHB/B0=31>G -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,UP[bT*

BTbbX^]P[cTaTS

4[P_bTS)))
BHB/B0=31>G -FXcW^dcB\PacBRP]b
BHB/B0=31>G -bT[TRcUd[[PR^d]cUa^\Zb^bZTfPfWTaTR^[ , *

2>D=C

" (((& 

4[P_bTS))) #
BHB/B0=31>G -bT[TRcUd[[PR^d]cUa^\Zb^bZTfPfWTaTR^[ ,((((((*

2>D=C

"!

4[P_bTS))) $!
BHB/B0=31>G -bT[TRcbd\RPbTfWT]R^[ , cWT] T[bTT]SW^fN\P]hN^]Tb
!bd\RPbTfWT]R^[ ,((((((cWT] T[bTT]SW^fN\P]hN]X]Tb
"Ua^\Zb^bZTf*

7>FN<0=HN>=4B7>FN<0=HN=8=4B

" (((& "!

4[P_bTS))) !'"
3OYOUCANSEETHATWITHOUTOFFLOADING COMBININGTHESTATEMENTSBASICALLYCUTSTHEELAPSEDTIMEIN
HALF4HISISWHATWEREUSEDTOSEEINGONANON %XADATAPLATFORM.OWLETSSEEWHATHAPPENSWHENWE
ENABLE3MART3CANS


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

BHB/B0=31>G -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,cadT*

BTbbX^]P[cTaTS

4[P_bTS)))
BHB/B0=31>G -P[cTabTbbX^]bTcNbTaXP[NSXaTRcNaTPS,cadT*

BTbbX^]P[cTaTS

4[P_bTS)))
BHB/B0=31>G -FXcWB\PacBRP]b
BHB/B0=31>G -bT[TRcUd[[PR^d]cUa^\Zb^bZTfPfWTaTR^[ , *

2>D=C

" (((& 

4[P_bTS))) %
BHB/B0=31>G -bT[TRcUd[[PR^d]cUa^\Zb^bZTfPfWTaTR^[ ,((((((*

2>D=C

"!

4[P_bTS)))'
BHB/B0=31>G -bT[TRcbd\RPbTfWT]R^[ , cWT] T[bTT]SW^fN\P]hN^]Tb
!bd\RPbTfWT]R^[ ,((((((cWT] T[bTT]SW^fN\P]hN]X]Tb
"Ua^\Zb^bZTf*

7>FN<0=HN>=4B7>FN<0=HN=8=4B

" (((& "!

4[P_bTS)))#""

/FFLOADINGCOMPLETELYREVERSESTHERESULTS4HETOTALELAPSEDTIMETORUNTHETWOINDIVIDUAL
STATEMENTSSECONDS ISABOUTOFTHETIMEREQUIREDTOCOMPLETETHECOMBINEDSTATEMENT
SECONDS .OTICEALSOTHATTHECOMBINEDSTATEMENTRUNSINAQUARTEROFTHETIMEITTOOKWITHOUT
OFFLOADING BUTTHEINDIVIDUALSTATEMENTSCOMPLETEDINROUGHLYONE TENTHTHETIMETHATWASREQUIRED
WITHOUTOFFLOADING4HECOMBINEDSTATEMENTWASNOTASEFFECTIVEASTHEINDIVIDUALSTATEMENTS SINCETHE
20B4STATEMENTCAUSESEACHRECORDINTHETABLETOBERETURNEDTOTHEDATABASESERVERFOREVALUATION3O
WHILETHESTATEMENTDOESBENEFITFROMCOLUMNPROJECTION ITDOESNOTBENEFITFROMPREDICATEFILTERINGOR
STORAGEINDEXES*USTTOBECLEAR 20B4STATEMENTSDONTDISABLE3MART3CANS BUTTHEYAREOFTENUSEDINA
WAYTHATREDUCESTHEIREFFECTIVENESSBYELIMINATINGTHEOPPORTUNITYTOFILTERROWSATTHESTORAGELAYER



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

Hinted Code
HintsAREVERYUSEFULFORCOERCINGTHEOPTIMIZERTODOWHATYOUWANTITTODO5NFORTUNATELY HINTSARENOT
WELLDOCUMENTEDANDEVENLESSWELLUNDERSTOOD)NMANYCASES HINTSAREUSEDTORESOLVEAPROBLEMTHAT
ISCAUSEDBYSOMEMISCONFIGURATIONOFTHEDATABASE4HEIRINTENDEDPURPOSEISTOALLOWHUMANSTOHELP
THEOPTIMIZERMAKETHERIGHTCHOICESINSITUATIONSWHEREITJUSTCANTDOTHEJOBEFFECTIVELYOR
CONSISTENTLY ONITSOWN4HISHAPPENSINSITUATIONSWHERETHEOPTIMIZERISJUSTNOTSMARTENOUGHYET TO
ARRIVEATTHEBESTEXECUTIONPLANINASPECIFICSITUATION(OWEVER EVENWHENHINTSAREUSEDAPPROPRIATELY
ANDAREGENERATINGTHEEXPECTEDBEHAVIOR THEYCANPREVENT%XADATAFROMTAKINGADVANTAGEOFSOMEOFITS
BUILTINABILITIES3OTHEBESTAPPROACHWHENMIGRATINGTO%XADATAISTOALLOWAMPLETIMEFORTESTING!ND
IFYOURAPPLICATIONMAKESUSEOFHINTS ONEOFTHEIMPORTANTSTEPSINTHETESTPLANSHOULDBETOTESTITS
BEHAVIORWITHOUTTHEHINTS4HISCANEASILYBEACCOMPLISHEDBYSETTINGTHEHIDDENPARAMETER
N^_cX\XiTaNXV]^aTNWX]cbTOTRUE

Indexes
4HISMAYSEEMLIKEASTRANGETOPIC BUTINDEXESCANWORKAGAINST3MART3CANSASWELL4HEOPTIMIZERWILL
TRYTOUSEINDEXESIFTHEYAREAVAILABLE)NATRUEDATAWAREHOUSEENVIRONMENT INDEXESMAYNOTBE
NECESSARYATALL7ELLHAVEMORETOSAYABOUTINDEXESINTHENEXTSECTIONONMIXEDWORKLOADS BUTITIS
IMPORTANTTOUNDERSTANDTHATINDEXUSAGEOFTENMEANSTHATOFFLOADINGISLESSLIKELYTOOCCUR

Row-at-a-Time Processing
)TISAMAZINGHOWOFTENWESEEROWATATIMEPROCESSINGINVERYLARGEDATASETS4HISTYPEOFCODINGIS
RARELYAGOODIDEAONNON %XADATAPLATFORMS ANDITISDEFINITELYNOTAGOODIDEAON%XADATA)NFACT THE
DIFFERENCESINPERFORMANCECANBEEVENMOREDRAMATICON%XADATABECAUSEOFTHEOPTIMIZATIONSBUILT
INTOTHEPLATFORM

/THER4HINGSTO+EEPIN-IND
4HEREAREAFEWOTHERTHINGSTHATYOUSHOULDKEEPINMINDWHENWORKINGWITH$7SYSTEMSTHEUSEOF
%XADATA3MART&LASH#ACHE COMPRESSION ANDPARTITIONING

Exadata Smart Flash Cache: Keep


%XADATA3MART&LASH#ACHE%&3# ISTHOUGHTOFPRIMARILYASPROVIDINGBENEFITTOLATENCY SENSITIVE31,
STATEMENTS)TSIMPORTANTTOREMEMBERTHATITCANDRAMATICALLYIMPROVESCANPERFORMANCEASWELL"Y
DEFAULT 3MART3CANSWILLIGNORE%3&#ANDWILLONLYSCANDISKS(OWEVER IFANOBJECTISDEFINEDWITHTHE
24;;N5;0B7N20274ATTRIBUTESETTO:44? 3MART3CANSWILLUSEBOTHTHEDISKSANDTHE%3&#FORSCANNING
/BVIOUSLY OVERRIDINGTHEDEFAULTCACHINGBEHAVIORFORALARGEOBJECTWILLREQUIRESOMETHOUGHTAND
TESTING BUTTHISISDEFINITELYSOMETHINGWORTHCONSIDERING(ERESANEXAMPLE

BHB/B0=31>G -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,UP[bT*

BTbbX^]P[cTaTS



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"*

2>D=C

"'##'

4[P_bTS)))$ 
BHB/B0=31>G -P[cTabTbbX^]bTcRT[[N^UU[^PSN_a^RTbbX]V,cadT*

BTbbX^]P[cTaTS

4[P_bTS)))%
BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"*

2>D=C

"'##'

4[P_bTS)))!% !

4[P_bTS)))#
BHB/B0=31>G -P[cTacPQ[TZb^bZTf"BC>A06424;;N5;0B7N20274:44?*

CPQ[TP[cTaTS

4[P_bTS)))&
BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"*

2>D=C

"'##'

4[P_bTS)))!'&#
BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"*

2>D=C

"'##'

4[P_bTS)))(#%
BHB/B0=31>G -

2>D=C

"'##'

4[P_bTS)))'%
BHB/B0=31>G -P[cTacPQ[TZb^bZTf"BC>A06424;;N5;0B7N202743450D;C*

CPQ[TP[cTaTS



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

4[P_bTS)))! 
BHB/B0=31>G -bT[TRcR^d]cUa^\Zb^bZTf"*

2>D=C

"'##'

4[P_bTS)))!% 

)NTHISEXAMPLEWETURNEDOFF3MART3CANSANDDIDAQUERYWITHOUTAF74A4CLAUSE4HEQUERYTOOK
SECONDS7ETHENENABLED3MART3CANSANDRANTHEQUERYAGAIN4HISTIMETHEQUERYTOOKONLY
SECONDS.EXTWEALTEREDTHETABLE TELLING/RACLETHATWEWANTED%3&#TOBEMOREAGGRESSIVEINCACHING
THISTABLE24;;N5;0B7N20274:44? 7ETHENEXECUTEDTHESTATEMENTAGAINTHISDIDNOTRESULTINAN
IMPROVEMENTINPERFORMANCE BECAUSETHETABLESBLOCKSWERENOTSTOREDIN%3&#ATTHATPOINT4HE
SUBSEQUENTEXECUTIONS THOUGH TOOKONLYTOSECONDS SHOWINGTHEBENEFITOFTHECACHING&INALLY WE
DISABLEDTHEAGGRESSIVECACHINGANDTHESTATEMENTEXECUTIONRETURNEDTOSECONDS4HISSHORTEXAMPLE
SHOWSTHATMAKINGUSEOF%3&#FOROFFLOADEDQUERIESCANHAVEASIGNIFICANTIMPACTONPERFORMANCE

Compression
%XADATAS(##ISABIGSTEPFORWARDINITSABILITYTOREDUCETHESIZEOFDATASTOREDINSIDEOF/RACLE
DATABASES4HECOMPRESSIONRATIOSTHATAREACHIEVABLEWITH(##TURNTHECONCEPTOFINFORMATION
LIFECYCLEMANAGEMENTONITSHEAD(##MAKESITPRACTICALTOCONSIDERUSINGCOMPRESSIONINSTEADOF
TIEREDSTORAGEORARCHIVINGANDPURGINGSTRATEGIES"ECAUSEPARTITIONSOFATABLECANBEDEFINEDTOUSE
DIFFERENTCOMPRESSIONMETHODS THECOMBINATIONOFPARTITIONINGANDCOMPRESSIONCANPROVIDEAMUCH
MOREROBUSTSOLUTIONFORhARCHIVINGvDATATHANACTUALLYPURGINGITFROMTHEDATABASE
9OUSHOULDREMEMBER THOUGH THAT(##ITISNOTAPPROPRIATEFORDATATHATISBEINGACTIVELYUPDATED
!BETTERAPPROACHISTOPARTITIONDATASUCHTHAT(##CANBEAPPLIEDTODATATHATISNOLONGERBEING
CHANGED4HISLEADSUSTOTHENEXTTOPIC PARTITIONING

Partitioning
0ARTITIONINGISSTILLAVERYKEYCOMPONENTFORDATAWAREHOUSINGSYSTEMS4HEOPTIMIZATIONSPROVIDEDBY
%XADATADONOTALLEVIATETHENEEDFORAWELL THOUGHT OUTPARTITIONINGSTRATEGY/FCOURSE DATE BASED
STRATEGIESAREVERYUSEFULFROMAMANAGEMENTSTANDPOINT"EINGABLETOUSEMOREAGGRESSIVE
COMPRESSIONONOLDERDATAISOFTENAGOODAPPROACH"UTPARTITIONELIMINATIONISSTILLATECHNIQUETHAT
YOUWILLWANTTOUSE!NDOFCOURSE STORAGEINDEXESCANWORKWELLWITHPARTITIONING PROVIDINGBEHAVIOR
COMPARABLETOPARTITIONELIMINATIONONADDITIONALCOLUMNS
9OUSHOULDKEEPINMINDTHATTHESIZESOFPARTITIONSCANAFFECT/RACLESDECISIONTOUSE3MART3CANS
7HENPERFORMINGASERIALSCANONAPARTITIONEDOBJECT THEDECISIONTODODIRECTPATHREADSISBASEDON
THEINDIVIDUALPARTITIONSIZE NOTTHEOVERALLSIZEOFTHEOBJECT4HISCANRESULTINSITUATIONSWHERESCANSOF
SOMEPARTITIONSAREOFFLOADED WHILESCANSOFOTHERSARENOT

Mixed Workloads
4HEREISATHIRDTYPEOFSYSTEMTHATISACOMBINATIONOFTHEOTHERTWO)NFACT WECOULDARGUETHATTHE
OTHERTWO/,40AND$7 RARELYEXISTINTHEREALWORLD4HEREAREMANYSYSTEMSTHATDONTFALLNEATLY


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

INTOTHETWOMAINCATEGORIESWEVEALREADYDESCRIBED)NFACT MOSTSYSTEMSDISPLAYCHARACTERISTICSOF
BOTH
#OMBININGLONG RUNNING THROUGHPUT SENSITIVEQUERIESWITHFAST LATENCY SENSITIVESTATEMENTS
DEFINITELYINTRODUCESSOMEADDITIONALISSUESTHATMUSTBEDEALTWITH/NEOFTHEMAINISSUESINSYSTEMS
OFTHISTYPEISHOWTODEALWITHINDEXES

4O)NDEXOR.OTTO)NDEX
/NEOFTHEBIGGESTDEBATESWEVEHADDURING%XADATAIMPLEMENTATIONSISWHETHERTODROPINDEXESORNOT
!CCESSPATHSTHATUSEINDEXESAREGENERALLYNOTABLETOTAKEADVANTAGEOF%XADATA SPECIFICOPTIMIZATIONS
7ESAYGENERALLY BECAUSEOFFLOADINGCANOCCURINCASESWHERETHEOPTIMIZERCHOOSESTOEXECUTEA&AST
&ULL3CANONANINDEX BUTTHISISNOTTHEMOSTCOMMONUSAGEPATTERNFORINDEXES4HEMORECOMMON
PATTERNISTOUSETHEMFORRETRIEVINGRELATIVELYFEWRECORDSFROMATABLEUSINGAN)NDEX2ANGE3CAN AND
THISOPERATIONISNOTCURRENTLYOFFLOADABLE'ENERALLYSPEAKING WEWANTTOUSEINDEXRANGESCANSON
SELECTIVEPREDICATES BUTSINCE%XADATAISSOEFFECTIVEATSCANNINGDISK INMANYCASESTHEINDEX BASED
ACCESSPATHSARENOLONGERFASTERTHANTHESCAN BASEDACCESSOPERATIONS)TSREALLYACASEOFGETTINGOUR
BEARINGSALLOVERAGAINWITHRESPECTTOWHENWEWANTTOUSEINDEXESANDWHENWEWOULDEXPECTAFULL
SCANTOPERFORMBETTER
/NEOFTHETHINGSWECOMMONLYHEARDWHEN%XADATAWASFIRSTSTARTINGTOAPPEARATCUSTOMERSITES
WASTHATINDEXESWERENOLONGERNECESSARYANDTHATTHEYSHOULDBEDROPPED&ORPUREDATAWAREHOUSE
WORKLOADS THISMAYACTUALLYBEPRETTYGOODADVICE(OWEVER WERARELYSEEANYTHINGPURE-OSTSYSTEMS
HAVEAMIXOFACCESSPATTERNS WITHONESETOFSTATEMENTSHOPINGFORLOWLATENCYANDANOTHERSETHOPING
FORHIGHTHROUGHPUT)NTHESECASES DROPPINGALLINDEXESJUSTWILLNOTWORK4HISISWHYWESAVEDTHIS
DISCUSSIONFORTHISSECTION4HEPROBLEMWITHMIXEDWORKLOADS WHEREITISNECESSARYTOKEEPINDEXESFOR
SPECIFICSETSOFSTATEMENTS ISTHATTHEOPTIMIZERISNOTASWELLEQUIPPEDTOCHOOSEBETWEENUSINGAND
IGNORINGTHEMASONEMIGHTHOPE7ELLDISCUSSTHEOPTIMIZERSLIMITATIONSNEXT

 +EVIN3AYS)KNOWTHEORIGINOFTHEMISTAKENNOTIONTHATINDEXESARENOTNECESSARYWITH%XADATA9OUSEE
/RACLE$ATABASEENJOYEDMAJORITYMARKETSHAREOFTHEWORLD WIDEDATAWAREHOUSINGMARKETASPERINDUSTRY
ANALYSTS before%XADATACAMETOMARKET4HEMETHODOLOGYREQUIREDTOCOERCE/RACLE$ATABASEINTODELIVERING
ADEQUATEPERFORMANCEINTHEPRE %XADATAERAREQUIREDANIMMENSEAMOUNTOFhINDEXTRICKERYv/RACLES
COMPETITIONMOSTNOTABLY.ETEZZA;NOW)"-=AND'REENPLUM;NOW%-#= FOCUSEDTHEIRMARKETINGMESSAGEONTHIS
h!CHILLESHEELv(OWEVER THISOVER INDEXINGPHENOMENONWITHALLTHEASSOCIATEDCOMPLEXITIES WASNEVERAN
/RACLEDATABASEWEAKNESSPERSE"EFORETHEORIGINALRELEASEOF%XADATAIN CUSTOMERSDIDNOTHAVETHE
RICHNESSOFSYSTEMSTECHNOLOGYAVAILABLEFORCONFIGURINGAHIGH BANDWIDTH BALANCED$7")SYSTEM)MBALANCE
ANDLOWBANDWIDTHDROVETHENEEDTOAVOIDDOINGPHYSICAL)/4HEONLYWAYTOAVOIDPHYSICAL)/INTHATERAWASTO
FALLINTOTHEhINDEXDEATH SPIRAL vASITBECAMEKNOWNINCERTAINCLIQUESWITHIN/RACLE7HILE%XADATACERTAINLY
ADDRESSESTHE)/BOTTLENECKS THEREREMAINSONEALL ENCOMPASSINGTRUTH)TISALWAYSFASTERnot TODOSOMETHING
THANTODOSOMETHINGFAST4OTHATEND %XADATAADMINISTRATORSNEEDTOREMEMBERTHATSOMEOFTHETOOLSTHEIR
COMPANYHASPAIDFORINCLUDEON DISKINDEXINGTECHNOLOGY!LWAYSUSETHERIGHTTOOLSFORTHEJOBATHAND


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

4OCLOSETHISTRAINOFTHOUGHT)DLIKETOPUTSOMETHINGINTOPERSPECTIVE4HESOFTWARETHATPUT/RACLEINTHEMARKET
LEADERSHIPPOSITIONFOR$7")PRIORTO%XADATAWAS/RACLE$ATABASEG2ELEASE)FYOUWERETODEPLOY/RACLE
$ATABASEG2ELEASEONTHESAMENUMBEROFPROCESSORCORESYOUUSEDINTHEPRE %XADATATIMEFRAMECIRCA
 YOUCOULDEASILYENJOYASMUCHASATENFOLDPERFORMANCEINCREASEFORPROCESS INTENSIVEUSECASES!ND
SINCETHEMETHODOLOGYFORDEPLOYING/RACLEFOR$7")USECASESINTHATTIMEFRAMEUSEDEVERYTRICKINTHEBOOKTO
AVOIDPHYSICAL)/ ITISFAIRTOPRESUMETHATTHOSESYSTEMSWEREGENERALLY#05 BOUND)NDEED SYSTEMSTHATARE
NEITHER#05 INTENSIVENOR)/ INTENSIVEAREPROBABLYNOTCONSIDEREDCRITICAL

)NOURDAY TO DAYWORKAS)4PROFESSIONALSITISEASYTOMISSJUSTHOWRAPIDLYTECHNOLOGYISADVANCINGALLAROUND
USˆPARTICULARLYWHENWEARENATURALLYCONSERVATIVEABOUTMIGRATINGPRODUCTIONAPPLICATIONSTOSTATE OF THE ART
TECHNOLOGY ANDTHESTATEOFTHEARTˆWITHORWITHOUT%XADATAˆHASBEENADVANCINGATAPHENOMENALPACE

4HE/PTIMIZER$OESNT+NOW
7EVEMADETHEPOINTSEVERALTIMESTHATTHEOPTIMIZERISNOTAWARETHATITISRUNNINGON%XADATAYET )N
GENERAL THEPRINCIPLESTHATGUIDETHEOPTIMIZERDECISIONSARESOUNDREGARDLESSOFTHESTORAGEPLATFORM
4HEFACTTHATTHECODEONTHEDATABASETIERISIDENTICALREGARDLESSOFWHETHERITSRUNNINGON%XADATAOR
NOTMEANSTHATANAPPLICATIONWILLBEHAVESIMILARLYON%XADATAINTERMSOFPLANSELECTION3OYOU
SHOULDNTEXPECTANYAPPLICATIONTOEXPERIENCEALARGENUMBEROFCHANGESINTHEPLANSCAUSEDSIMPLYBY
MOVINGTO%XADATA4HISISAGOODTHINGFROMASTABILITYSTANDPOINT
4HEDOWNSIDEISTHATTHEOPTIMIZERISNOTAWARETHAT%XADATAHASOPTIMIZATIONSTHATCANCAUSEFULL
SCANSTOPERFORMMUCHBETTERTHANONOTHERPLATFORMS3OMIXED WORKLOADSYSTEMSTHATHAVEMANY
INDEXESMAKETHEOPTIMIZERSJOBMORECHALLENGING)NFACT ASYOUMIGHTEXPECT THEOPTIMIZERWILLTEND
TOPICKINDEX ORIENTEDPLANSINPREFERENCETOSCAN BASEDPLANSINSITUATIONSWHEREINDEXESAREAVAILABLE
DESPITETHEFACTTHATTHESCAN BASEDPLANSAREOFTENMUCHFASTER
4HEREARESEVERALWAYSTODEALWITHTHEOPTIMIZERSTENDENCYTOPREFERINDEXACCESSOVERFULLTABLE
SCANS3YSTEMSTATISTICS OPTIMIZERPARAMETERS ANDHINTSALLCOMETOMINDASPOTENTIALSOLUTIONS

 +EVIN3AYS!LTHOUGHTHEAUTHORSARECORRECTTOPOINTOUTTHECURRENTLACKOF%XADATA AWAREOPTIMIZERCODE )


DOEXPECTTHATTOCHANGE4HERESHOULDCERTAINLYBE%XADATA AWAREOPTIMIZERIMPROVEMENTSSHOWINGUPOVERTIME

System Statistics
3YSTEMSTATISTICSPROVIDETHEOPTIMIZERWITHADDITIONALINFORMATIONABOUTTHEhSYSTEM vINCLUDINGHOW
LONGITTAKESTODOASINGLE BLOCKREADTYPICALOFINDEXLOOKUPS ANDHOWLONGITTAKESTODOAMULTI BLOCK
READTYPICALOFFULLTABLESCANS 4HISMAYAPPEARTOBEANIDEALMECHANISMTOMANIPULATETHEOPTIMIZER
BYGIVINGITTHEADDITIONALINFORMATIONITNEEDSTOMAKETHERIGHTDECISIONS5NFORTUNATELY 3MART3CANS
ARENOTBASEDONMULTI BLOCKREADSANDINFACT 3MART3CANSCANBEORDERSOFMAGNITUDEFASTERTHAN
MULTI BLOCKREADS3OMODIFYING3YSTEM3TATISTICSISPROBABLYNOTTHEBESTOPTIONINTHISCASE


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

 .OTE4HEISSUEOFWHETHERTOGATHERSYSTEMSTATISTICSON%XADATACOMESUPFAIRLYOFTEN3YSTEMSTATISTICSARE
DESIGNEDTOPROVIDEADDITIONALINFORMATIONTOTHEOPTIMIZERABOUTTHEBEHAVIORCHARACTERISTICSOFTHEHARDWARE)N
PARTICULAR THEYPROVIDEVALUESFORAVERAGESINGLE BLOCKANDAVERAGEMULTI BLOCKREADTIMES3INCE%XADATAOFTEN
AVOIDSACTUALLYPERFORMINGMULTI BLOCKREADS USING3MART3CANSINSTEAD ITSEEMSCOUNTERINTUITIVETOPROVIDE
INFORMATIONTOTHEOPTIMIZERABOUTANOPERATIONTHATWILLSELDOMBEUSED PARTICULARLYWHENTHISISONEOFTHEMAIN
INPUTSINTOTHEOPTIMIZERSCOSTCALCULATIONS)FTHATARGUMENTISNOTENOUGHFORYOU THENPLEASEREVIEW-/3.OTE
 WHICHSPECIFICALLYSTATES

=^cT)8cXbRdaaT]c[h]^c]TRTbbPahc^VPcWTabhbcT\bcPcXbcXRb^]cWTSPcPQPbT\PRWX]T

Optimizer Parameters
4HEREAREACOUPLEOFINITIALIZATIONPARAMETERSTHATCANPUSHTHEOPTIMIZERTOWARDORAWAYFROMINDEX
USAGE4HEPARAMETERS>?C8<I4AN8=34GN20278=6AND>?C8<8I4AN8=34GN2>BCN039CANBOTHBEUSEDFORTHIS
PURPOSE7HILETHESEAREBIGKNOBSTHATCANAFFECTTHECOREFUNCTIONALITYOFTHEOPTIMIZER THEYWERE
DESIGNEDFORTHEVERYPURPOSEOFMAKINGINDEXESMOREORLESSATTRACTIVETOTHEOPTIMIZER5SINGTHE
PARAMETERSINALIMITEDWAY SUCHASWITHANP[cTabTbbX^]COMMANDBEFORERUNNINGLARGEBATCH
PROCESSES ISAVIABLEAPPROACHINSOMECASES4HESEPARAMETERSCANALSOBESETATTHESTATEMENTLEVEL
USINGTHE>?CN?0A0<HINT(ERESAVERYSIMPLEEXAMPLE

BHB/B0=31>G-/Q[^^\NY^X]!b`[

2>;!BD<02>; 

PbSSbPSPbS $"$('# %
!"#! ##

4[P_bTS))")! "(
BHB/B0=31>G-P[cTabTbbX^]bTc^_cX\XiTaNX]STgNR^bcNPSY, *

BTbbX^]P[cTaTS

4[P_bTS)))&
BHB/B0=31>G-/Q[^^\NY^X]!b`[



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

2>;!BD<02>; 

PbSSbPSPbS $"$('# %
!"#! ##

4[P_bTS)) )'%#
BHB/B0=31>G -/S_[P]
4]cTaeP[dTU^ab`[NXS)(\%c$`_VZhfg
4]cTaeP[dTU^aRWX[SN]^)

?;0=NC01;4N>DC?DC

B@;N83(\%c$`_VZhfgRWX[S]d\QTa

bT[TRcQ[^^\Y^X]!dbTNWPbWbZTfcT\_NbZTfPR^[!
bd\PR^[ Ua^\Zb^bZTf"PZb^bZTf!QfWTaTP_ZNR^[,Q_ZNR^[P]S
QR^[ , Va^d_QhPR^[!

?[P]WPbWeP[dT)#%%(#& "&


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkkk"&!"( k
k k?G2>>A38=0C>Akkkkk
k!k?GB4=3@2A0=3><k)C@ !k!k%%k"&!"( k
k"k70B76A>D?1Hkk!k%%k"&!"( k
k#k?GA4248E4kk!k%%k"&!"( k
k$k?GB4=370B7k)C@  k!k%%k"&!"( k
k%k70B76A>D?1Hkk!k%%k"&!"( k
k&k70B79>8=kk &%k$%!('k"&!"' k
k'k1D554AB>ACkkkkk
k(k?GA4248E4kk #!k $%!k " k
k k?GB4=31A>0320BCk)C@ k #!k $%!k " k
k kC01;40224BB1H8=34GA>F83kB:4F!k #!k $%!k " k
k !k8=34GA0=64B20=kB:4F!N2>; k #!kk"k
k "k?G1;>2:8C4A0C>Akk"'#<k'$%<k"&! k
k #kC01;40224BBBC>A0645D;;kB:4F"k"'#<k'$%<k"&! k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


&PRRTbb0?:N2>;,1?:N2>;
 !PRRTbb12>; , 
 #bc^aPVT)I-,)I0=3)I+,)I0=3BHBN>?N1;>><N58;C4A)150?:N2>;
UX[cTaBHBN>?N1;>><N58;C4A)150?:N2>;

B@;N83(\%c$`_VZhfgRWX[S]d\QTa 



#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

bT[TRcQ[^^\Y^X]!dbTNWPbWbZTfcT\_NbZTfPR^[!
bd\PR^[ Ua^\Zb^bZTf"PZb^bZTf!QfWTaTP_ZNR^[,Q_ZNR^[P]S
QR^[ , Va^d_QhPR^[!

?[P]WPbWeP[dT)!%!'"(!(!


k8Sk>_TaPcX^]k=P\TkA^fbk1hcTbk2^bc2?Dk

kkB4;42CBC0C4<4=Ckkkk#(#%$ k
k k?G2>>A38=0C>Akkkkk
k!k?GB4=3@2A0=3><k)C@ !k!k%%k#(#%$ k
k"k70B76A>D?1Hkk!k%%k#(#%$ k
k#k?GA4248E4kk!k%%k#(#%$ k
k$k?GB4=370B7k)C@  k!k%%k#(#%$ k
k%k70B76A>D?1Hkk!k%%k#(#%$ k
k&k70B79>8=kk &%k$%!('k#(#%# k
k'k?GA4248E4kk #!k $%!k !"$& k
k(k?GB4=31A>0320BCk)C@ k #!k $%!k !"$& k
k k?G1;>2:8C4A0C>Akk #!k $%!k !"$& k
k kC01;40224BBBC>A0645D;;kB:4F!k #!k $%!k !"$& k
k !k?G1;>2:8C4A0C>Akk"'#<k'$%<k"&! k
k "kC01;40224BBBC>A0645D;;kB:4F"k"'#<k'$%<k"&! k


?aTSXRPcT8]U^a\PcX^]XST]cXUXTSQh^_TaPcX^]XS)


&PRRTbb0?:N2>;,1?:N2>;
 bc^aPVT)I-,)I0=3)I+,)I0=312>; , 
UX[cTa12>; , 
 "bc^aPVT)I-,)I0=3)I+,)I0=3BHBN>?N1;>><N58;C4A)150?:N2>;
UX[cTaBHBN>?N1;>><N58;C4A)150?:N2>;

3OINTHISSIMPLEEXAMPLE PUSHINGTHEOPTIMIZERAWAYFROMINDEXESWITHTHEP[cTabTbbX^]CAUSED
THEOPTIMIZERTOPICKAPLANTHATWASCONSIDERABLYFASTER4HEPLANSSHOWTHATTHEIMPROVEMENTIN
ELAPSEDTIMEWASARESULTOFDOINGAFULLTABLESCAN INSTEADOFUSINGTHEINDEX

Hints
/FCOURSEHINTSCANALSOBEUSEDTOHELPTHEOPTIMIZERMAKETHERIGHTCHOICES BUTTHATISSOMEWHATOFA
SLIPPERYSLOPE.EVERTHELESS TELLING/RACLETHATYOUWOULDPREFERTODOAHASHJOINORIGNOREASPECIFIC
INDEXISANOPTION!SMENTIONEDINTHEPREVIOUSSECTION THE>?CN?0A0<HINTCANALSOPROVEUSEFULFOR
SETTINGSOMEINITIALIZATIONPARAMETERSTHATCANINFLUENCETHEOPTIMIZERSDECISIONS

5SING2ESOURCE-ANAGER
)TSACOMMONLYHELDBELIEFTHAT/RACLEDATABASESCANTBECONFIGUREDTOADEQUATELYHANDLEBOTH$7AND
/,40WORKLOADSATTHESAMETIME!NDINTRUTH KEEPINGTHEMONSEPARATESYSTEMSDOESMAKETHEM
EASIERTOMANAGE4HEDOWNSIDEOFTHISAPPROACHISTHATITISEXPENSIVE-ANYCOMPANIESDEDICATETHE


#(!04%2 5.,%!2.).'3/-%4().'37%4(/5'(47%+.%7

MAJORITYOFTHEIRCOMPUTINGRESOURCESTOMOVINGDATABETWEENPLATFORMS4HEPOWEROF%XADATAMAKESIT
TEMPTINGTOCOMBINETHESEENVIRONMENTS+EEPINMINDTHAT%XADATAHASADDITIONALCAPABILITIESFOR
DIVIDINGRESOURCESBETWEENMULTIPLEDATABASESTHATARENOTAVAILABLEONOTHERPLATFORMS)/2-CAN
PREVENTLONG RUNNING$7QUERIESFROMCRIPPLINGLATENCY SENSITIVESTATEMENTSTHATARERUNNINGONTHE
SAMESYSTEM(AVINGAGOODUNDERSTANDINGOF/RACLESRESOURCEMANAGEMENTCAPABILITIESSHOULD
CHANGETHEWAYYOUTHINKABOUTWHATISPOSSIBLEINAMIXED WORKLOADORCONSOLIDATEDENVIRONMENT
2ESOURCEMANAGEMENTISCOVEREDINDEPTHIN#HAPTER

Summary
%XADATAISDIFFERENT4OMAKETHEBESTUSEOFITYOULLNEEDTOTHINKDIFFERENTLY


APPENDIX A



CellCLI and dcli

#ELL#,)ISACOMMANDINTERPRETERTHROUGHWHICHYOUCANMANAGEASTORAGECELL)TISTOACELLWHAT
31,
0LUSISTOADATABASEINSTANCESR[XISAUTILITYBYWHICHYOUCANSENDASINGLECOMMANDTOALLYOUR
DATABASESERVERSANDORSTORAGECELLSINONEGO7EDESCRIBEBOTHUTILITIESBRIEFLYINTHISAPPENDIX

CellCLI Command Syntax


%XADATASTORAGESOFTWAREUSESTHE#ELL#,)UTILITYASITSCOMMAND LINEINTERFACE5NFORTUNATELY ALTHOUGH
THEDOCUMENTATIONSETTHATCOMESWITH%XADATADOESHAVEMANYEXAMPLESOF#ELL#,)COMMANDS AND
EVENACHAPTERDEDICATEDTO#ELL#,) ITDOESNOTINCLUDEANYREFERENCEMATERIALONTHESYNTAXITSELF
PARTICULARLYTHE;8BCCOMMAND 3OWETHOUGHTWEWOULDINCLUDEAFEWOFTHETHINGSWELEARNEDWHILE
WORKINGWITHIT
)TSINTERESTINGTHAT/RACLECHOSETOWRITEANENTIRELYNEWCOMMAND LINETOOLFORMANAGINGTHE
STORAGECELL4HEYCOULDHAVEUSED31,
0LUS WHICHHASBECOMETHEMOSTWELL KNOWNTOOLFORMANAGING
DATABASESAND!3-"ETHATASITMAY #ELL#,)ISTHETOOLYOUWILLUSEFORMANAGINGTHESTORAGECELLS4HE
SYNTAXISSOMEWHATDIFFERENTFROM31,
0LUS BUTTHEREARESIMILARITIES PARTICULARLYWITHTHE;8BC
COMMAND;8BCISUSEDTOEXECUTEQUERIES ANDITLOOKSVERYSIMILARTOTHEB4;42CCOMMANDTHAT$"!S
HAVEBECOMEACCUSTOMEDTO,IKEB4;42C ITHASF74A4AND;8:4KEYWORDSTHATALLOWYOUTOFILTEROUT
UNWANTEDINFORMATIONFROMTHEOUTPUT
&OLLOWINGISOURTOP TENLISTOFTHINGSYOUSHOULDKNOWABOUT#ELL#,)
 #ELL#,)DOESIMPLEMENTAHANDFULOF31,
0LUSCOMMANDSBC0AC/B4C
427>>= B?>>; 34B2A814 AND74;? 
 B4;42CISREPLACEDBY;8BC ANDITMUSTBETHEFIRSTKEYWORDONTHECOMMAND
LINE
 4HEREISNO5A><KEYWORDTHE;8BCKEYWORDMUSTBEIMMEDIATELYFOLLOWED
BYTHE>QYTRcCh_T WHICHISEQUIVALENTTOATABLENAME 
 4HEREISA34B2A814COMMAND WHICHDISPLAYSTHEATTRIBUTESCOLUMNS THAT
MAKEUPAN>QYTRcCh_TTABLE
 #OLUMNNAMESARESPECIFIEDWITHTHE0CCA81DC4BKEYWORDFOLLOWEDBYTHE
COLUMNSYOUWISHTOBEDISPLAYED
 4HEREISADEFAULTSETOFCOLUMNSFOREACHObjectTypeTHATWILLBERETURNEDIF
THE0CCA81DC4BKEYWORDISNOTSPECIFIED
 4HEREISAF74A4CLAUSETHATCANBEAPPLIEDTOANYATTRIBUTEANDMULTIPLE
CONDITIONSCANBE0=3EDTOGETHERHOWEVER THEREISNOSUPPORTFOR>A


!00%.$)8! #%,,#,)!.$$#,)

 4HEREISNO>A34A1HEQUIVALENT
 4HE34C08;KEYWORDCANBEAPPENDEDTOANY,)34COMMANDTOCHANGETHE
OUTPUTFROMCOLUMNORIENTEDTOROWORIENTED
 4HE;8:4OPERATORWORKS BUTINSTEADOFTHESTANDARD31,WILDCARD  #ELL#,)
USESREGEX SOBECOMESTHE

'ETTING&AMILIARWITH#ELL#,)
!GOODWAYTOBEGINTOGETFAMILIARWITH#ELL#,)ISTOEXPLOREITSHELPINTERFACE&OLLOWINGISANEXAMPLE
OFINVOKINGONLINEHELP

2T[[2;8-WT[_

74;?Jc^_XRL
0ePX[PQ[TC^_XRb)
0;C4A
0;C4A0;4AC78BC>AH
0;C4A24;;
0;C4A24;;38B:
0;C4A6A8338B:
0;C4A8>A<?;0=
0;C4A;D=
0;C4AC7A4B7>;3
0BB86=:4H
20;81A0C4
2A40C4
2A40C424;;
2A40C424;;38B:
2A40C45;0B720274
2A40C46A8338B:
2A40C4:4H
2A40C4C7A4B7>;3
34B2A814
3A>?
3A>?0;4AC78BC>AH
3A>?24;;
3A>?24;;38B:
3A>?5;0B720274
3A>?6A8338B:
3A>?C7A4B7>;3
4G?>AC24;;38B:
8<?>AC24;;38B:
;8BC
;8BC02C8E4A4@D4BC
;8BC0;4AC3458=8C8>=
;8BC0;4AC78BC>AH
;8BC24;;
;8BC24;;38B:
;8BC5;0B720274


!00%.$)8! #%,,#,)!.$$#,)

;8BC5;0B7202742>=C4=C
;8BC6A8338B:
;8BC8>A<?;0=
;8BC:4H
;8BC;D=
;8BC<4CA822DAA4=C
;8BC<4CA823458=8C8>=
;8BC<4CA8278BC>AH
;8BC?7HB820;38B:
;8BCC7A4B7>;3
B4C
B?>>;
BC0AC


2T[[2;8-WT[_[Xbc

4]cTa74;?;8BC+^QYTRcNch_T-U^ab_TRXUXRWT[_bh]cPg
+^QYTRcNch_T-)j02C8E4A4@D4BCk0;4AC78BC>AHk0;4AC3458=8C8>=k24;;
k24;;38B:k5;0B720274k5;0B7202742>=C4=Ck6A8338B:
k8>A<?;0=k:4Hk;D=
k<4CA822DAA4=Ck<4CA823458=8C8>=k<4CA8278BC>AH
k?7HB820;38B:kC7A4B7>;3l

2T[[2;8-WT[_[Xbc5;0B7202742>=C4=C

DbPVT);8BC5;0B7202742>=C4=CJ+UX[cTab-LJ+PccaXQdcTN[Xbc-LJ34C08;L

?da_^bT)3Xb_[Phbb_TRXUXTSPccaXQdcTbU^aU[PbWRPRWTT]caXTb

0aVd\T]cb)
+UX[cTab-)0]Tg_aTbbX^]fWXRWSTcTa\X]TbcWTT]caXTbc^QTSXb_[PhTS
+PccaXQdcTN[Xbc-)CWTPccaXQdcTbcWPcPaTc^QTSXb_[PhTS
0CCA81DC4Bj0;;kPcca JPcca!Ll

>_cX^]b)
J34C08;L)5^a\PcbcWTSXb_[PhPbP]PccaXQdcT^]TPRW[X]TfXcW
P]PccaXQdcTSTbRaX_c^a_aTRTSX]VTPRWeP[dT

4gP\_[Tb)
;8BC5;0B7202742>=C4=C34C08;

!SYOUCANSEE THEHELPSYSTEMALLOWSYOUTOSEEABITOFTHESYNTAXFOREACHCOMMAND9OUMAY
ALSOHAVENOTICEDACOUPLEOF31,
0LUSCARRY OVERSB4C B?>>; ANDBC0ACWORKPRETTYMUCHASEXPECTED
.OTETHATTHE/CHARACTERISEQUIVALENTTOTHE31,
0LUSBC0ACCOMMANDANDTHATTHEONLYTHINGSYOUCAN
USEB4CFORARE427>AND30C45>A<0C.OW HEREAREAFEWEXAMPLESOFQUERIESUSINGTHE;8BCCOMMAND

2T[[2;8-STbRaXQTU[PbWRPRWTR^]cT]c
RPRWTS:TT_BXiT
RPRWTSBXiT
SQ83


!00%.$)8! #%,,#,)!.$$#,)

SQD]X`dT=P\T
WXc2^d]c
W^dabC^4g_XaPcX^]
\Xbb2^d]c
^QYTRc=d\QTa
cPQ[TB_PRT=d\QTa

2T[[2;8-bTcTRW^^]

2T[[2;8-/URNR^]cT]c

-2T[[2;8-[XbcU[PbWRPRWTR^]cT]c~
fWTaTSQD]X`dT=P\T[XZT4G31~
P]SWXcR^d]c- ~
PccaXQdcTbSQD]X`dT=P\T^QYTRc=d\QTaRPRWTS:TT_BXiTRPRWTSBXiT
WXc2^d]c\Xbb2^d]c
4G31!# (#"#%!'
4G31#!#!#'"!"&%%
4G31!!# '!!# $'
4G31!%&#$'&$! !'(
4G31"'"!$#&& ! $&!&
4G31#!" '%&&&% '# 
4G31#& #& #!#$$!'$
4G31#&! !&&($! #!!
4G31#&# "!#%#%#!'%"!%
4G31#&$$( #%!#$ ( !#
4G31$"$"'# %%%(#$$
4G31$& "&"$$$!"%"(
4G31%!&"("! % !(
4G31%! ""'#!#'"$( #&
4G31%! % !#$ '# '#!(
4G31%"&""#' %!!!% 
4G31$%'$# (#"#'!! !(
4G31%%'#(#"'&%"$! !! ""!!
4G31& #("$%"%(%"! !&
4G31& #(& "$ %'"!!!
4G31& $&"!&%&#  "&
4G31& &&$ ' # !%'"#((##%" $

2T[[2;8-[XbcU[PbWRPRWTR^]cT]cfWTaTSQD]X`dT=P\T[XZT4G..~
P]SWXcR^d]c- 
PccaXQdcTbSQD]X`dT=P\T^QYTRc=d\QTaRPRWTS:TT_BXiTRPRWTSBXiT

4G31!# (#"#
4G31 ' &(%#'
4G31"&%!!$(!
4G31#!#!#'"!
4G31%"$!#!''
4G31 #%'' !'
4G31!!#"#&'&!
4G31!%&#$'&$!
4G31"'"!%&$(!


!00%.$)8! #%,,#,)!.$$#,)

4G31#! $&"!'
4G31#!" '%&&&%
4G31#!#&!'(%
4G31#& #& #!#
4G31#&! !&&($!
4G31#&"!"$ #
4G31#&# "$&# ##
4G31#&$$$! #'
4G31$"$"'# %
4G31$&!!%! ##
4G31$&(!# %%#
4G31$& "&"$$$!
4G31%!&"("! %
4G31%!  " &!
4G31%! "#!!&&!
4G31%! % !#$ '#
4G31%"&""$&((#
4G31$%'$# (#"#
4G31%%'#(#"'&%"$!
4G31& #("$%"%(%
4G31& #(& "$ %'
4G31& $&"!' %%#
4G31& &&$ ' # !%'

2T[[2;8-[XbcU[PbWRPRWTR^]cT]c~
fWTaTSQD]X`dT=P\T[XZT4G..P]SWXcR^d]c- 
P]S^QYTRc=d\QTa[XZT&&$

!"$%%"&&#!%& &&$

2T[[2;8-[XbcU[PbWRPRWTR^]cT]c~
fWTaTSQD]X`dT=P\T[XZTG..~
P]S^QYTRc=d\QTa[XZT&&$STcPX[

RPRWTS:TT_BXiT)
RPRWTSBXiT) ' # !%'
SQ83)!"$%%"&&#!
SQD]X`dT=P\T)4G31
WXc2^d]c)"#((#
\Xbb2^d]c)#%" $
^QYTRc=d\QTa)& &&$
cPQ[TB_PRT=d\QTa)%

2T[[2;8-[XbcU[PbWRPRWTR^]cT]c~
fWTaTSQD]X`dT=P\T[XZT4G..~
P]SWXcR^d]c- 
P]S^QYTRc=d\QTa[XZT&&$

!"$%%"&&#!%& &&$

2T[[2;8-[XbcU[PbWRPRWTR^]cT]c~
PccaXQdcTb^QYTRc=d\QTaWXc2^d]c\Xbb2^d]c~


!00%.$)8! #%,,#,)!.$$#,)

fWTaTSQD]X`dT=P\T[XZT4G..~
P]SWXcR^d]c- ~
P]S^QYTRc=d\QTa[XZT&&$

& &&$"#((##%" $

4HE34B2A814VERBWORKSSIMILARLYTOTHEWAYITDOESIN31,
0LUS BUTITMUSTBEFULLYSPELLEDOUT
YOUCANTUSETHEFAMILIAR34B2ASANABBRECIATION.OTICETHATTHEREARENOHEADINGSFORCOLUMN ORIENTED
OUTPUT!SYOUCANSEE YOUCANEXECUTESCRIPTSTHATCONTAIN#ELL#,)COMMANDSUSINGTHE/CHARACTER
ANDUSEB4C427>>=TODISPLAYTHECOMMANDSINTHESCRIPTSTHATYOUEXECUTE-ANYOFTHE;8BC
COMMANDSWERESTRUNGACROSSMULTIPLELINESBYUSINGTHECONTINUATIONOPERATOR 4HE;8BC
COMMANDSLOOKALOTLIKE31, EXCEPTFOR;8BCBEINGUSEDINSTEADOFB4;42CANDTHEREGEXEXPRESSIONSFOR
MATCHINGWHENUSINGTHE;8:4KEYWORD!LSONOTICETHATINTHELASTCOMMANDANUMBERWASMATCHED
WITHAREGEXEXPRESSION IMPLYINGADATATYPECONVERSION ALTHOUGHALLDATAMAYBETREATEDASTEXT9OU
CANSEETHATTHE0CCA81DC4BANDF74A4KEYWORDSCANBEANYWHEREONTHECOMMANDLINEAFTERTHE;8BC
>QYTRcCh_TKEYWORDS)NOTHERWORDS THESETWOKEYWORDSARENOTPOSITIONALEITHERONECANBEUSEDFIRST
&INALLY THE34C08;KEYWORDTURNSTHEOUTPUTSIDEWAYS/RASTHEHELPSAYS h&ORMATSTHEDISPLAYASAN
ATTRIBUTEONEACHLINE WITHANATTRIBUTEDESCRIPTORPRECEDINGEACHVALUEv

3ENDING#OMMANDSFROMTHE/PERATING3YSTEM
)NADDITIONTORUNNING#ELL#,)INTERACTIVELYASYOUVESEENINTHESEEXAMPLES YOUCANSPECIFYTHET
OPTIONTOPASSIN#ELL#,)COMMANDSFROMYOUROPERATINGSYSTEMPROMPT&OREXAMPLETHEFOLLOWING
LISTINGSHOWSHOWTHETOPTIONCANBEUSEDTOQUERYTHESTATUSOFRT[[baeDIRECTLYFROMTHE/3
COMMANDLINE

JTgPRT[$)a^^cLa^^c
-RT[[R[XT[XbcRT[[STcPX[
]P\T)TgPRT[$
Q\RCh_T)8?<8
RT[[ETabX^])>BBN !"N;8=DGG%#N $!
q
RT[[baeBcPcdb)ad]]X]V
\bBcPcdb)ad]]X]V
abBcPcdb)ad]]X]V

!MONGOTHERTHINGS THE~TOPTIONISHELPFULWHENYOUWANTTOINVOKE#ELL#,)FROMWITHINAN
OPERATINGSYSTEMSHELLSCRIPT

#ONFIGURINGAND-ANAGINGTHE3TORAGE#ELL
#ELL#,)ISALSOUSEDINANUMBEROFWAYSFORCONFIGURINGEVERYTHINGFROMDISKSTORAGETOCELLALERTS9OU
CANALSOUSE#ELL#,)FORMANAGEMENTTASKSSUCHASSTARTUPANDSHUTDOWN&OLLOWINGAREAFEWEXAMPLES
OFHOWTOUSE#ELL#,)TOCONFIGUREANDMANAGETHESTORAGECELL
#ELL3ERVICESCANBESHUTDOWNONEATATIMEORALLATONCE4HEFOLLOWINGCOMMANDSAREUSEDTO
SHUTDOWNCELLSERVICES

BWdcS^f]RT[[bTaeXRTb^]TPcPcX\T
2T[[2;8-P[cTaRT[[bWdcS^f]bTaeXRTbRT[[bae
2T[[2;8-P[cTaRT[[bWdcS^f]bTaeXRTb\b


!00%.$)8! #%,,#,)!.$$#,)

2T[[2;8-P[cTaRT[[bWdcS^f]bTaeXRTbab

BWdcS^f]P[[RT[[bTaeXRTb
2T[[2;8-P[cTaRT[[bWdcS^f]bTaeXRTbP[[

#ELLSERVICESMAYALSOBESTARTEDUPONEBYONE ORALLATONCE.OTETHATTHEABPROCESSMUSTBE
STARTEDFIRSTOR#ELL#,)WILLTHROWANERRORSUCHASTHEFOLLOWING

2T[[2;8-P[cTaRT[[bcPacd_bTaeXRTbRT[[bae

BcPacX]V24;;BAEbTaeXRTb
24;; $()ATbcPacBTaeTaAB]^caTb_^]SX]V

4HEFOLLOWINGCOMMANDSAREUSEDTOSTARTUPCELLSERVICES

BcPacd_RT[[bTaeXRTb^]TPcPcX\T
2T[[2;8-P[cTaRT[[bcPacd_bTaeXRTbab
2T[[2;8-P[cTaRT[[bcPacd_bTaeXRTb\b
2T[[2;8-P[cTaRT[[bcPacd_bTaeXRTbRT[[bae


BcPacd_P[[RT[[bTaeXRTb
2T[[2;8-P[cTaRT[[bcPacd_bTaeXRTbP[[

4HEFOLLOWINGCOMMANDSSHUTDOWNANDRESTARTTHECELLSERVICES

1^d]RTRT[[bTaeXRTb^]TPcPcX\T
P[cTaRT[[aTbcPacbTaeXRTbRT[[bae
P[cTaRT[[aTbcPacbTaeXRTbab
P[cTaRT[[aTbcPacbTaeXRTb\b

1^d]RTP[[RT[[bTaeXRTb
P[cTaRT[[aTbcPacbTaeXRTbP[[

4OSHOWTHECURRENTSTATUSOFRT[[bae USETHE;8BC24;;34C08;COMMANDASFOLLOWS

2T[[2;8-[XbcRT[[STcPX[
]P\T)TgPRT[$
Q\RCh_T)8?<8
RT[[ETabX^])>BBN !"N;8=DGG%#N  !%!
R_d2^d]c)!#
UP]2^d]c) ! !
UP]BcPcdb)]^a\P[
XS) $5<<9$
X]cTaR^]]TRc2^d]c)"
X]cTaR^]]TRc )Q^]SXQ
X^a\1^^bc)
X_PSSaTbb ) (! %' !(!#
ZTa]T[ETabX^])!% ' (#" "T[$
[^RPc^a;43BcPcdb)^UU
\PZT<^ST[)BD=<82A>BHBC4<BBD=58A4G#!&<!B4AE4AB0C0
\TcaXR7Xbc^ah3Phb)&


!00%.$)8! #%,,#,)!.$$#,)

]^cXUXRPcX^]<TcW^S)\PX[
]^cXUXRPcX^]?^[XRh)RaXcXRP[fPa]X]VR[TPa
^UU[^PS4UUXRXT]Rh) "(("$%
_^fTa2^d]c)!!
_^fTaBcPcdb)]^a\P[
b\c_5a^\)4gPSPcP
b\c_5a^\0SSa)TgPSPcP/^daR^\_P]hR^\
b\c_?^ac)!$
b\c_?fS)
b\c_BTaeTa)b\c_^daR^\_P]hR^\
b\c_C^0SSa)P[[NSQP/^daR^\_P]hR^\P[[NbP/^daR^\_P]hR^\
b\c_DbTa)
b\c_DbTBB;)50;B4
bcPcdb)^][X]T
cT\_TaPcdaTATPSX]V)!&
cT\_TaPcdaTBcPcdb)]^a\P[
d_CX\T)"&SPhb ')!!
RT[[baeBcPcdb)ad]]X]V
\bBcPcdb)ad]]X]V
abBcPcdb)ad]]X]V

3EVERALOFTHESETTINGSYOUSEEINTHISLISTINGCANBESETUSINGTHE0;C4A24;;COMMAND4HESE
SETTINGSMAYBECONFIGUREDONEATATIMEORTOGETHERBYSEPARATINGTHEMWITHACOMMA&OREXAMPLE

2^]UXVdaT]^cXUXRPcX^][TeT[U^aP[Tacb
2T[[2;8-0;C4A24;;]^cXUXRPcX^]?^[XRh,RaXcXRP[fPa]X]VR[TPa


2^]UXVdaTcWTRT[[U^aT\PX[]^cXUXRPcX^]b
2T[[2;8-0;C4A24;;b\c_BTaeTa,b\c_T]ZXcTRR^\
b\c_5a^\0SSa,4gPSPcP/^daR^\_P]hR^\
b\c_5a^\,4gPSPcP
b\c_C^0SSa,P[[NSQP/^daR^\_P]hR^\P[[NbP/^daR^\_P]hR^\
]^cXUXRPcX^]?^[XRh,RaXcXRP[fPa]X]VR[TPa
]^cXUXRPcX^]<TcW^S,\PX[

"YTHEWAY IFYOUHAVENTALREADYSTUMBLEDACROSSTHISFEATURE #ELL#,)STORESACOMMANDHISTORY
SIMILARTOTHE"ASHSHELL9OUCANSCROLLUPANDDOWNTHROUGHYOURHISTORYANDEDITCOMMANDSUSINGTHE
ARROWKEYS!NDREGEXALSOPROVIDESAVERYPOWERFULPATTERN MATCHINGCAPABILITY4HE#ELL#,)SYNTAXWILL
BESOMETHINGNEWTOSYSTEMADMINISTRATORSAND$"!SALIKE BUTONCEYOUUNDERSTANDTHESYNTAX IT
REALLYISNTDIFFICULTTOMASTER

dcli Command Syntax


SR[XISATOOLBYWHICHYOUCANEXECUTEASINGLECOMMANDACROSSALLCELLS(AVINGWORKEDONVARIOUS
CLUSTEREDSYSTEMSOVERTHEYEARS WEVECOMETOAPPRECIATETHEIMPORTANCEOFKEEPINGSCRIPTSANDSOME
CONFIGURATIONFILES IDENTICALACROSSALLNODES)TSALSOVERYHANDYTOHAVEAFACILITYFOREXECUTINGTHE
SAMECOMMANDCONSISTENTLYACROSSALLNODESOFACLUSTER/RACLEPROVIDESTHESR[XCOMMANDTODOJUST
THAT!MONGOTHERTHINGS THESR[XCOMMANDALLOWSYOUTO
v #ONFIGURE33(EQUIVALENCYACROSSALLSTORAGECELLSANDORDATABASESERVERS


!00%.$)8! #%,,#,)!.$$#,)

v $ISTRIBUTEAFILETOTHESAMELOCATIONONALLSERVERSCELLSINTHECLUSTER
v $ISTRIBUTEANDEXECUTEASCRIPTONSERVERSCELLSINTHECLUSTER
v %XECUTECOMMANDSANDSCRIPTSONSERVERSCELLSINTHECLUSTER

SR[XUSES33(EQUIVALENCYTOAUTHENTICATEYOURSESSIONONTHEREMOTESERVERS)FYOUDONOTHAVE
33(EQUIVALENCYESTABLISHEDACROSSSERVERSCELLS YOUCANSTILLUSEIT BUTITWILLPROMPTYOUFORA
PASSWORDFOREACHREMOTESYSTEMBEFOREEXECUTINGTHECOMMANDSR[XEXECUTESALLCOMMANDSIN
PARALLEL AGGREGATESTHEOUTPUTFROMEACHSERVERINTOASINGLELIST ANDDISPLAYSTHEOUTPUTONTHELOCAL
MACHINE&OREXAMPLE THEFOLLOWINGLISTINGSHOWSTHE_\^]PROCESSESRUNNINGONALLDATABASESERVERS

JT]ZSQ!)a^^cLa^^c
-dba[^RP[QX]SR[X[a^^cVSQbNVa^d__bTUkVaT_^aPN_\^]kVaT_eVaT_
T]ZSQ )^aPR[T#(&" 9d](.)) %^aPN_\^]N34<> 
T]ZSQ )^aPR[T(( & 9d]%.)) $^aPN_\^]N1; %: 
T]ZSQ )^aPR[T((!( 9d]%.))!^aPN_\^]NC4BC 
T]ZSQ )^aPR[T "!$ 9d]%.)) $^aPN_\^]NB0=31>G 
T]ZSQ )^aPR[T"!%" 9d]%.)) &^aPN_\^]N315B 
T]ZSQ!)^aPR[T& $ 9d](.)) %^aPN_\^]N34<>!
T]ZSQ!)^aPR[T"& ' 9d]%.)) $^aPN_\^]N315B!
T]ZSQ!)^aPR[T($"  9d]%.))!^aPN_\^]N4G31!
T]ZSQ!)^aPR[T &! 9d]%.)) ^aPN_\^]NB=855
T]ZSQ!)^aPR[T '$ 9d]%.))!^aPN_\^]NC4BC!
T]ZSQ!)^aPR[T '& 9d]%.)) "^aPN_\^]N1; %:!
T]ZSQ!)^aPR[T  "% 9d]%.)) #^aPN_\^]NB0=31>G!
T]ZSQ!)^aPR[T!"#(# 9d]%.)) ^aPN_\^]NB2A0C27

SR[XISPARTICULARLYUSEFULLWHENYOUWANTTOCOLLECTINFORMATIONFROMALLSTORAGECELLSUSINGTHE
#ELL#,)COMMANDS4HEFOLLOWINGEXAMPLESHOWSHOWSR[XAND#ELL#,)COMMANDSCANBEUSED
TOGETHERTOREPORTTHESTATUSOFALLSTORAGECELLSINAHALFRACKCLUSTER

JT]ZSQ )a^^cLa^^c
-SR[XVa^^cRT[[NVa^d_[a^^cRT[[R[XT[XbcRT[[

T]ZRT[ )T]ZRT[ ^][X]T
T]ZRT[!)T]ZRT[!^][X]T
T]ZRT[")T]ZRT["^][X]T
T]ZRT[#)T]ZRT[#^][X]T
T]ZRT[$)T]ZRT[$^][X]T
T]ZRT[%)T]ZRT[%^][X]T
T]ZRT[&)T]ZRT[&^][X]T

9OUMAYHAVERECOGNIZEDTHEa^^cRT[[NVa^d_PARAMETERINTHISEXAMPLE4HISFILEISGENERATED
DURINGTHE%XADATAINSTALLATIONPROCEDURESEE#HAPTERFORMOREDETAILS 4HEREAREACTUALLYSEVERALOF
THESEhGROUPFILESvTHATAREUSEFULFORRUNNINGDISTRIBUTEDCOMMANDSUSINGSR[X4HESEFILESMAYBE
DESCRIBEDASFOLLOWS
SQbNVa^d_:4HISFILECONTAINSTHEMANAGEMENTHOSTNAMESFORALLDATABASE
SERVERSINYOUR%XADATACONFIGURATION)TPROVIDESACONVENTIENTWAYTOEXECUTE
SR[XCOMMANDSONTHEDATABASESERVERS


!00%.$)8! #%,,#,)!.$$#,)

RT[[NVa^d_4HISFILECONTAINSTHEMANAGEMENTHOSTNAMESFORALLSTORAGECELLS
INYOUR%XADATACONFIGURATION)TPROVIDESACONVENIENTWAYTOEXECUTESR[X
COMMANDSLIMITEDTOTHESTORAGECELLS
P[[NVa^d_:4HISFILEISACOMBINATIONOFTHESQbNVa^d_ANDRT[[NVa^d_FILESAND
CONTAINSALISTOFTHEMANAGEMENTHOSTNAMESFORALLDATABASESERVERSAND
STORAGECELLSINYOUR%XADATACONFIGURATION5SINGTHISFILE YOUCANEXECUTESR[X
COMMANDSONALLDATABASESERVERSANDSTORAGECELLS

!NYOFTHE#ELL#,)COMMANDSWEVEDISCUSSEDINTHISAPPENDIXMAYBEEXECUTEDFROMACENTRAL
LOCATIONUSINGSR[X)NFACTTHEONLYRESTRICTIONISTHATTHECOMMANDCANNOTBEINTERACTIVEREQUIRINGUSER
INPUTDURINGEXECUTION &OREXAMPLE THEFOLLOWINGLISTINGILLUSTRATESCOLLECTINGALLTHECURRENT
PERFORMANCEMETRICSFROMTHESTORAGECELLS

SR[X[a^^cVa^^cRT[[NVa^d_RT[[R[XT;8BC<4CA822DAA4=C0CCA81DC4B]P\T^QYTRcch_T
\TcaXR>QYTRc=P\T\TcaXREP[dTR^[[TRcX^]CX\T

4HEOUTPUTFROMTHISCOMMANDISMUCHTOOVERBOSETOSHOWHERE"UTWITHASIMPLESCRIPTITCANBE
FORMATTEDANDDISTRIBUTEDASNEEDED)NFACT WEUSEDTHISSCRIPTIN#HAPTERTOCOLLECT)/2-
PERFORMANCEMETRICSANDREPORTONTHEMTHROUGHANEXTERNALTABLEDEFINITIONINTHEDATABASE
3CHEDULINGAREPORTSUCHASTHISTORUNDAILYWOULDBEAVERYCONVENIENTWAYTOMONITOR)/ATTHE
STORAGE CELLLEVEL

Summary
4HEREAREMANYMOREUSESFORSR[XAND#ELL#,)THANWEVECOVEREDHERE3YSTEMADMINISTRATORSWILLALSO
FINDITUSEFULFORCREATINGNEWUSERACCOUNTSONTHEDATABASESERVERSUSINGTHEdbTaPSSANDVa^d_PSS
COMMANDS FOREXAMPLE$"!SWILLFINDSR[XUSEFULFORDISTRIBUTINGSCRIPTSANDOTHERFILESTOOTHER
SERVERSINTHECLUSTER!NDUSINGSR[XAND#ELL#,)TOGETHERPROVIDESACONVENIENTWAYOFMANAGING
EXTRACTING ANDREPORTINGKEYPERFORMANCEMETRICSFROMTHESTORAGECELLS


APPENDIX B



Online Exadata Resources

4HISAPPENDIXDETAILSSOMEHELPFULONLINERESOURCESFOR$"!SMANAGING%XADATA/RACLE3UPPORTCREATES
AGOODMANYOFWHATARETERMEDsupport notes7ELISTSOMEOFTHEMOSTHELPFUL ANDYOUCANREAD
THEMˆIFYOUAREALICENSEDUSERˆBYGOINGTO/RACLESSUPPORTSITE)NADDITION WELISTAFEWHELPFUL
BLOGS4HELISTOFBLOGSISSMALL BUTGROWING7ELISTFOURTHATWEPARTICULARLYLIKEANDENDORSE

Exadata MOS Support Notes


,ISTEDHEREARESEVERALGOODONLINENOTESFORMANAGINGTHE%XADATAPLATFORMON-Y/RACLE3UPPORT
-/3 3OMEOFTHESENOTESARELIVINGDOCUMENTS MEANINGTHEYARECONTINUALLYUPDATEDASNEW
SOFTWAREVERSIONSANDPATCHESBECOMEAVAILABLE-/3.OTEISAMUST READFORANYONE
RESPONSIBLEFORADMINISTERINGTHESYSTEM)TCONTAINSCRITICALINFORMATIONABOUTSUPPORTEDSOFTWARE
RELEASES3OMEOFTHE-/3.OTESLISTEDHERE SUCHAS ARESIMPLYPLACEHOLDERSFORDOZENSOF
OTHERIMPORTANTDOCUMENTSYOUWILLWANTTOBEAWAREOF/BVIOUSLYTHISISNOTACOMPREHENSIVELIST AND
THEREAREMANYMOREGOODTECHNICALDOCUMENTSFOR%XADATAON-/3"UTWEHOPEYOUFINDTHISLIST
HELPFULINGETTINGYOUSTARTEDOFFINTHERIGHTDIRECTION

Helpful Exadata MOS Support Notes


&LASHBACK$ATABASE"EST0RACTICES -/3.OTE
$ATABASE%NDIAN#ONVERSION -/3.OTE
2$3/&%$ -/3.OTE
%XADATA"EST0RACTICES -/3.OTE
G23#!.%XPLAINED -/3.OTE
%XADATA3TORAGE3ERVERG23UPPORTED6ERSIONS -/3.OTE
$"&3-/3.OTE
%XADATA(EALTHCHECK3CRIPT-/3.OTE
%XADATA6$IAGNOSABILITYAND4ROUBLESHOOTING"EST0RACTICES -/3.OTE
"ARE-ETAL2ESTORE0ROCEDUREFOR#OMPUTE.ODES-/3.OTE
-ONITORING%XADATA -/3.OTE
3TEPSTOSHUTDOWNORREBOOTAN%XADATASTORAGECELLWITHOUTAFFECTING!3- -/3.OTE
-ASTER.OTEFOR/RACLE$ATABASE-ACHINEAND%XADATA3TORAGE3ERVER -/3.OTE
%XADATA0ATCHING/VERVIEWAND0ATCH4ESTING'UIDELINES -/3.OTE
%XADATA#RITICAL)SSUES -/3.OTE
%XADATA8 $IAGNOSABILITYAND4ROUBLESHOOTING"EST0RACTICES -/3.OTE
4ROUBLESHOOTING)NFINI"AND3WITCH0ROBLEMSON%XADATA-/3.OTE
TO$ATABASE5PGRADEON%XADATA$ATABASE-ACHINE-/3.OTE


!00%.$)8" /.,).%%8!$!4!2%3/52#%3

Exadata Bulletins and Blogs


&OLLOWINGARESOMEHELPFULBLOGS3OMEFOCUSON%XADATAALONE/THERS SUCHAS4ANEL0ODERSBLOG ARE
MOREWIDE RANGINGANDCOVERTHEGAMUTOF/RACLE$ATABASETECHNOLOGIES

%XPERT/RACLE%XADATA"LOG
Wcc_)fff4g_Tac>aPR[T4gPSPcPR^\
+ERRY/SBORNES/RACLE"LOG
Wcc_)ZTaah^bQ^a]T^aPR[TVdhR^\
4ANEL0ODERS"LOG
Wcc_)Q[^VcP]T[_^STaR^\
!NDY#OLVINS"LOG
Wcc_)Q[^V^aPR[T]X]YPR^\


APPENDIX C



Diagnostic Scripts

7EVEUSEDSEVERALDIAGNOSTICSCRIPTSINTHISBOOK7HILETHECONTENTSOFMANYOFTHEMAREDISPLAYEDIN
THEBODYOFTHEBOOK SOMEOFTHEMARELENGTHYENOUGHTHATWEDECIDEDNOTTOPRINTTHEIRCONTENTSINTHE
LISTINGS4HESESCRIPTSAREALLAVAILABLEONLINEATfff4_Tac>aPR[T4gSPcPR^\4ABLE# INTHISAPPENDIX
CONTAINSALISTOFTHESCRIPTSALONGWITHABRIEFDESCRIPTIONOFEACHONE

Table C-1. Diagnostic Scripts Used in This Book

Script Name Description


Pbb`[ !3ISSHORTFOR!CTIVE31,4HISSCRIPTSHOWSALLACTIVE31,STATEMENTSON
THECURRENTINSTANCEASSHOWNBYEB4BB8>=.OTETHATYOUMAYNEEDTO
EXECUTEITSEVERALTIMESTOGETANIDEAOFWHATSHAPPENINGONASYSTEM
ASFASTSTATEMENTSMAYNOTBEhCAUGHTvBYTHISQUICK AND DIRTY
APPROACH

RP[XQaPcTNX^b`[ 4HISSCRIPTPROVIDESASIMPLEWRAPPERFORTHE
31<BNA4B>DA24N<0=064A20;81A0C4N8>PROCEDURE4HEPROCEDUREMUST
BERUNBEFORE/RACLEWILLALLOWYOUTOENABLE!UTO$/0

RWTRZN_gb`[ 4HISSCRIPTCONTAINSASIMPLEQUERYOFE?GN?A>24BBNBHBBC0CTOSHOW
HOWMANYPARALLELSERVERPROCESSESARECURRENTLYINUSE

R^\_NaPcX^b`[ 4HISISASIMPLESCRIPTTHATCOMPUTESACOMPRESSIONRATIOBASEDONAN
INPUTVALUETHEORIGINALTABLESIZE 

RaTPcTNSXb_[PhNaPfb`[ 4HISSCRIPTCREATESTHESXb_[PhNaPfFUNCTION WHICHTRANSLATESRAW


DATA TYPEVALUESINTOVARIOUSOTHERDATA TYPESORIGINALLYWRITTENBY
'REG2AHN 

SQPNcPQ[Tbb`[ 4HISISASIMPLESCRIPTTOQUERY310NC01;4B)TSHOWSTHENUMBEROFROWS
NUMBEROFBLOCKSANDDEFAULTDEGREEOFPARALLELISM

STbRb`[ 4HISSCRIPTPRODUCESOUTPUTSIMILARTOTHE31,
0LUS34B2A814COMMAND


!00%.$)8# $)!'./34)#3#2)043

Script Name Description


SXb_[PhNaPfb`[ 4HISISASIMPLESCRIPTTOTRANSLATEARAWVALUEINTOASPECIFIEDDATA TYPE
FORMATSUCHAS=D<14AORE0A270A!)TDEPENDSONTHESXb_[PhNaPf
FUNCTIONCREATEDBYTHERaTPcTNSXb_[PhNaPfb`[SCRIPT

S_[P]b`[ 4HISSCRIPTSHOWSTHEACTUALEXECUTIONPLANFORA31,STATEMENTINTHE
SHAREDPOOL4HISISAVERYSIMPLESCRIPTTHATPROMPTSFORAB@;N83AND
278;3N=>ANDTHENCALLSSQ\bNg_[P]SXb_[PhNRdab^a

Sd\_NQ[^RZb`[ 4HISSCRIPTDUMPSADATABLOCKTOATRACEFILEUSING0;C4ABHBC4<3D<?
30C058;4)TPROMPTSFORFILENOANDBLOCKNO

TbURNWXcNaPcX^b`[ 5SELESSSCRIPTFORCALCULATINGANINCORRECT%DXADATA3MART&LASH#ACHE
HITRATIO

TbURNZTT_NcPQ[Tbb`[ 4HISSCRIPTDISPLAYSOBJECTSTHATHAVETHE24;;N5;0B7N20274ATTRIBUTESET
TO:44?

U[dbWN_^^[b`[ 4HISSCRIPTUSES0;C4ABHBC4<5;DB7B70A43N?>>;TOFLUSHALL31,
STATEMENTSFROMTHESHAREDPOOL

U[dbWNb`[b`[ 4HISSCRIPTUSES31<BNB70A43N?>>;?DA64TOFLUSHASINGLE31,
STATETEMENTFROMTHESHAREDPOOL)TONLYWORKSWITHANDLATER

Ubb`[ 4HISSCRIPTALLOWSYOUTOSEARCHTHROUGHEB@;USINGABITOF31,TEXTORA
B@;N83&3ISSHORTFOR&IND31, 4HESCRIPTREPORTSSOMESTATISTICAL
INFORMATION SUCHASAVERAGE%LAPSED4IMEANDAVERAGE,)/S

Ubgb`[ &38STANDSFOR&IND31,E8ADATA4HISSCRIPTSEARCHESTHESHAREDPOOL
EB@; BASEDONTHE31,STATEMENTTEXTORASPECIFICB@;N83ANDREPORTS
WHETHERSTATEMENTSWEREOFFLOADEDORNOTAND IFOFFLOADED WHAT
PERCENTAGEOF)/WASSAVED.OTETHATTHEREARESEVERALALTERNATE
VERSIONSOFTHISSCRIPTUSEDINTHEBOOKUbg!b`[ Ubg"b`[ AND
Ubg#b`[ 4HESEVERSIONSREDUCETHEWIDTHOFTHEOUTPUTTOSOMETHING
MOREEASILYPRINTEDINTHELIMITSIMPOSEDBYTHEPRINTEDBOOKFORMAT

Ubg^b`[ 4HISSCRIPTISSIMILARTOTHEUbgb`[SCRIPTBUTCANBEUSEDTOIDENTIFY
LONG RUNNINGSTATEMENTSANDREPORTONWHETHERTHEYHAVEBEEN
OFFLOADEDORNOT)TCANBEUSEDINCONJUNCTIONWITHTHE
^UU[^PSN_TaRT]cb`[SCRIPTTODRILLINTOTHEINDIVIDUALSTATEMENTS
CONTRIBUTINGTOITSCALCUALTEDOFFLOADPERCENTAGE

VPcWTaNcPQ[TNbcPcbb`[ 4HISISASIMPLESCRIPTTOGATHERTABLESTATISTICSUSINGTHE
31<BNBC0CB60C74ANC01;4NBC0CBPROCEDURE


!00%.$)8# $)!'./34)#3#2)043

Script Name Description


VTcNR^\_aTbbX^]NaPcX^b`[ 4HISSCRIPTISAWRAPPERFORTHEBUILTINCOMPRESSIONADVISOR
FUNCTIONALITY31<BN2><?A4BB8>=64CN2><?A4BB8>=NA0C8> )TPROMPTSFOR
ATABLENAMEANDACOMPRESSIONTYPEANDTHENESTIMATESTHEEXPECTED
COMPRESSIONRATIOBYACTUALLYCOMPRESSINGASUBSETOFTHETABLESROWS

VTcNR^\_aTbbX^]Nch_Tb`[ 4HISSCRIPTPROVIDESAWRAPPERFORTHE
31<BN2><?A4BB8>=64CN2><?A4BB8>=NCH?4PROCEDURE)TCANBEUSEDTO
IDENTIFIYTHEACTUALCOMPRESSIONTYPEUSEDFORASPECIFICROW)TPROMPTS
FORATABLENAMEANDAROWIDANDRETURNSTHEACTUALCOMPRESSIONTYPE
FORTHATROWASOPPOSEDTOTHECOMPRESSIONTYPEASSIGNEDTOTHETABLE

\hbcPcbb`[ 4HISISASIMPLESCRIPTFORQUERYINGE<HBC0CB

^[SNa^fXSb`[ 4HISSCRIPTCREATESTHE^[SNa^fXSFUNCTION4HE^[SNa^fXSFUNCTION
ACCEPTSAa^fXSANDRETURNSTHEUX[T]^ Q[^RZ]^ ANDa^f]^THEOLDa^fXS
FORMAT 

^QYNQhNWTgb`[ 4HISSCRIPTTRANSLATESAN^QYTRcNXSINHEXFORMATINTOANOBJECTNAME
4HEHEXVALUEISCONTAINEDINBLOCKDUMPS

^UU[^PSN_TaRT]cb`[ 4HISSCRIPTCANBEUSEDTOPROVIDEAQUICKCHECKONWHETHERSTATEMENTS
AREBEINGOFFLOADEDORNOTON%XADATAPLATFORMS)TALLOWSALLSTATEMENTS
OVERAMINIMUMTIMEORAMINIMUMNUMBEROF,)/STOBEEVALUATED
ANDCALCULATESAPERCENTAGEOFSTATEMENTSTHATHAVEBEENOFFLOADED

_Pa\bb`[ 4HISSCRIPTDISPLAYSDATABASEPARAMETERSANDTHEIRCURRENTVALUES
)NCLUDESASWITCHTOSHOWORSUPPRESSDISPLAYOFHIDDENPARAMETERS

_Pa\bSb`[ 4HISSCRIPTDISPLAYSDATABASEPARAMETERSANDTHEIRDESCRIPTIONS
)NCLUDESASWITCHTOSHOWORSUPPRESSDISPLAYOFHIDDENPARAMETERS

_PacNbXiT!b`[ 4HISSCRIPTSHOWSTHESIZESOFPARTITIONSASREPORTEDBY310NB46<4=CB

_^^[N\T\b`[ 4HISSCRIPTPROVIDESASIMPLEQUERYAGAINSTEB60BC0C SHOWINGMEMORY


ASSIGNEDTOVARIOUShPOOLSv

`dTdTSNb`[b`[ 4HISSIMPLESCRIPTQUERIESEB@;N<>=8C>AFORSTATEMENTSTHATAREQUEUED
BYTHEPARALLELSTATEMENTQUEUINGFEATURE

aT_^acNb`[N\^]Xc^ab`[ 4HISISASCRIPTTOCALL31<BNB@;CD=4A4?>ACNB@;N<>=8C>A

bXb`[ 4HISSCRIPTDISPLAYSTHECURRENTVALUEFORTHESTATISTIC2T[[?WhbXRP[8>
1hcTbBPeTSQhBc^aPVT8]STgFROME<HBC0CB)TPROVIDESAQUICKWAY
TOCHECKSTORAGEINDEXUSAGE


!00%.$)8# $)!'./34)#3#2)043

Script Name Description


b]P__Tab`[ 4HISISFARANDAWAYTHEMOSTROBUSTSCRIPTUSEDINTHEBOOK)TISREALLY
MORELIKEAMONITORINGPROGRAMTHATCANREPORTONANEXTREMELYWIDE
RANGEOFINFORMATIONABOUTACTIVESESSIONS$OCUMENTATIONCANBE
FOUNDON4ANELSBLOG

bbN^UUb`[ 4HISSCRIPTTURNSOFF3MART3CANSVIAP[cTabTbbX^]THATIS ITSETS


24;;N>55;>03N?A>24BB8=6,50;B4 

bbN^]b`[ 4HISSCRIPT4URNSON3MART3CANSVIAP[cTabTbbX^]THATIS ITSETS


24;;N>55;>03N?A>24BB8=6,CAD4 

cPQ[TNbXiTb`[ 4HISSCRIPTSHOWSSIZESOFOBJECTSASREPORTEDBY310NB46<4=CB4HEREIS
ANOTHERVERSIONcPQ[TNbXiT!b`[ THATISBASICALLYTHESAMESCRIPTWITH
AREDUCEDNUMBEROFOUTPUTCOLUMNS

eP[XSNTeT]cbb`[ 4HISSCRIPTDISPLAYSALISTOFWAITEVENTSTHATMATCHATEXTSTRING

fW^P\Xb`[ 4HISSCRIPTDISPLAYSCURRENTSESSIONINFORMATION INCLUDING3)$ 3ERIAL


0REVIOUS31,(ASH6ALUE AND/33HADOW0ROCESS)$




Index

3!4!DISKS 
„A 3934%-?$'DISKGROUP 
INTERLEAVING   
!CCESSCONTROLLIST!#,  )/PERFORMANCERATING
!LLOCATIONUNITS!5S  DEFAULTALLOCATIONPOLICY 
!LTERGRIDDISKCOMMAND   INTERLEAVINGPOLICY 
!PPLY#ONFIG  ISOLATINGSTORAGECELLACCESS  
!UTOMATICDEGREEOFPARALLELISM!UTO$/0 STORAGEALLOCATION  
)/CALIBRATION    STORAGEVIRTUALIZATION   
OPERATIONANDCONFIGURATION n !VG#ELLDISK2EADS (MB) 
SINGLE$/0VALUE  !VG#ELLDISK3MALL2EAD,ATENCYMSEC CHART
!UTOMATICSTORAGEMANAGEMENT!3-  
CELLSECURITY
!3- SCOPEDSECURITY   
BESTPRACTICES  „B
CELLKEYORAFILE 
DATABASE SCOPEDSECURITY  n "ACKUPANDRESTORESTRATEGY
REMOVINGCELLSECURITY   BLOCKCHANGETRACKINGFILE 
SECURITYKEY  FULLBACKUPANDRESTORE  
STORAGEREALM  INCREMENTALBACKUP 
CONFIGURATIONOPTIONS  "ALANCED$7")SYSTEM 
DEFAULTPOLICY  "ASICCOMPRESSIONMETHOD 
%XADATADISKARCHITECTURE   "LOCKCHANGETRACKING"#4 
FAILUREGROUPS   "ULLETINSAND"LOGS
FAULTRESILIENCY  %XPERT/RACLE%XADATA"LOG 
GRIDDISKS +ERRY/SBORNES/RACLE"LOG 
#ELL#,)COMMAND  4ANEL0ODERS"LOG 
CELLDISKS  
CREATION  „C
$!4!DISKGROUPS  
DEVSDAPARTITION  #%,,"//453"FLASHDRIVE 
%XADATAREPORTS  #ELL#,) 
&LASH$ISK BASEDGRIDDISKS   ASSIGNKEYCOMMAND 
I/O space allocation  CELLALERTS
KEYATTRIBUTES  ALERTSEVERITIES 
,INUX/3PARTITIONS  CELLDISKREADWRITEERRORS 
LISTCELLDISKCOMMAND  CELLTEMPERATURE 
naming  #LEARSEVERITY 
NON %XADATASYSTEM  EXAMINED"YATTRIBUTE 
PHYSICALDISKSANDFLASHCACHEMODULES ,)34-%42)#()34/29$%4!),
 COMMAND 
2%#/DISKGROUPS    SOFTWAREFAILURES 


„).$%8

CELLMETRICS 2!#CLUSTERS
$%3#2)"%-%42)##522%.4COMMAND CELLIPORAFILE 
 FULLRACKCONFIGURATION 
$%3#2)"%-%42)#()34/29COMMAND GRACEFAILOVER 
 HIGHAVAILABILITY 
)/METRICABBREVIATIONS  RESOURCEALLOCATION 
,)34-%42)##522%.4COMMAND  SCALABILITY 
,)34-%42)#$%&).)4)/.COMMAND 5!4DATABASE 
 #ONSUMERGROUPS
,)34-%42)#()34/29COMMAND  !003 
METRICNAMEPREFIXES  HIGH PRIORITYBUSINESSAPPLICATIONS
CELLSERVICES 
!,4%2#%,,COMMAND  MAPPINGRULES
,)34#%,,$%4!),COMMAND  #,)%.4?!00,)#!4)/.  
SHUTDOWNANDRESTARTCELLSERVICES  loginATTRIBUTES 
SHUTDOWNCELLSERVICES  /2!#,%?53%2 
STARTUPCELLSERVICES  2%0/243 
EOPTION  RUNTIMEATTRIBUTES 
FLASHCACHECONTENTDETAIL  SESSION TO CONSUMER GROUP 
HELPINTERFACE  
KEYWORDS  40/$%2  
,)34COMMANDS   /4(%2?'2/503 
STORAGECELL CONFIGURINGANDMANAGING  31,STATEMENTQUERY 
#ELLDISKFAILURE 393?'2/50 
DISKREPAIRTIMER  #OST"ASED/PTIMIZER#"/ 
DISKREPLACEMENT  #05 INTENSIVEPROCESSING 
GRIDDISKS REMOVAL  CREATEGRIDDISKCOMMAND 
,)34'2)$$)3+COMMAND 
POORPERFORMANCE 
PREDICTIVEFAILURE  „D
3#2!4#(?$'  $ATABASEBACKUP 
CELLIPORAFILE   BACKUPARCHITECTURE 
CELLKEYORAFILES     DISK BASEDBACKUPS 
#ELL/FFLOAD%FFICIENCYRATIO  2-!.
CHECKIPSHSCRIPT#HECK)0  BLOCKCHANGETRACKING 
Client access network   INCREMENTALBACKUPS 
#OMPRESSION!DVISOR  WAITEVENTS 
#OMPUTENODE STANDBYDATABASE 
CONSIDERATIONS TAPE BASEDBACKUPS 
#05RESOURCES  $ATABASE&ILE3YSTEM$"&3 
)/PERFORMANCEANDCAPACITY  $ATABASE-ACHINECONFIGURATION 
MEMORYRESOURCES  !PPLY#ONFIG 
PATCHINGANDTESTING  #HECK)0 
%XADATACLUSTERS CONFIGURATIONPROCESS 
FULL RACKCONFIGURATION  CONFIGURATIONWORKSHEET 
LEAFSWITCHPORTS  %XADATACONFIGURATIONPARAMETERS 
NETWORKCONFIGURATION  NETWORKSETTINGS 
NON 2!#CONFIGURATION /RACLEENVIRONMENTPARAMETERS 
ARCHITECTURE  $"-#ONFIGURATOR 
GRIDDISKS  &IRSTBOOTPROCESS 
PRODUCTIONCLUSTER 


„).$%8

NETWORKCOMPONENTS $ATA0UMP
CLIENTACCESSNETWORK  DATABASEMIGRATINGPARAMETERS
MANAGEMENTNETWORK  COMPRESSION 
PRIVATENETWORK  &,!3("!#+?3#. 
/NE#OMMAND   &,!3("!#+?4)-% 
STAGING  &5,, 3#(%-!3 4!",%3 
STORAGECELLCONFIGURATION  .%47/2+?,).+ 
UPGRADES  0!2!,,%,PARAMETER 
UPGRADING%XADATA 2%-!0?$!4!&),% 
CREATINGNEW2!#CLUSTER  2%-!0?3#(%-! 
UPGRADINGTHEEXISTINGCLUSTER  2%-!0?4!",%30!#% 
UPLOADPARAMETERSANDDEPLOYMENTFILES  3#(%-!3 
$ATABASE2ESOURCE-ANAGER$"2-  31,&),% 
AD HOCQUERIES  4!",%?%8)343?!#4)/. 
COMPONENTS  4!",%3 
CONSUMERGROUPSsee#ONSUMERGROUPS 42!.3&/2- 
$"!   EXPDPCOMMAND 
$"!?()34?232#?#/.35-%2?'2/50  IMPDPCOMMAND 
$"!?()34?232#?0,!.  LABCONFIGURATION 
$"!?232#?#!4%'/2)%3  /RACLE!DVANCED#OMPRESSION 
$"!?232#?#/.35-%2?'2/50?02)63 USAGETIME 
 $ATARECOVERY
$"!?232#?#/.35-%2?'2/503  DIAGNOSTICTOOLsee$IAGNOSTICTOOLS
$"!?232#?'2/50?-!00).'3  DATABASEBACKUPsee$ATABASEBACKUP
$"!?232#?)/?#!,)"2!4%  SYSTEMBACKUPsee3YSTEMBACKUP
$"!?232#?-!00).'?02)/2)49  SYSTEMRECOVERYsee3YSTEMRECOVERY
$"!?232#?0,!.?$)2%#4)6%3  $ATAWAREHOUSE$7
$"!?232#?0,!.3  APPLIANCE 
$"!?53%23  DATABASE 
)/2-  SYSTEMS 
/,40APPLICATIONS  $"-#ONFIGURATOR 
PLANDIRECTIVESsee0LANDIRECTIVES CONFIGURATIONPROCESS 
RESOURCEPLANSsee2ESOURCEPLAN DATA ENTRYFIELDS 
STORAGECELLS  %XADATAUPGRADE 
5NIXRENICECOMMAND  $"-3?31,45.%2%0/24?31,?-/.)4/2
6232#?#/.35-%2?'2/50  PACKAGE  
6232#?0,!.  DB?RECOVERY?FILE?DESTDATABASE 
6232#?0,!.?()34/29  DCLICOMMAND  
6232#?3%33)/.?).&/  ALL?GROUP 
63%33)/.  CELL?GROUP 
WAITEVENTRESMGRCPUQUANTUM  #ELL#,)COMMANDS  
$ATABASE3MART&LASH#ACHE$"&#  DBS?GROUP 
$ATABASETEMPLATEDBM$"4EMPLATE  PMONPROCESSES 
$ATABASE7RITER$"72  33(EQUIVALENCY 
$!4!?#$??CELLGRIDDISKS  $%#/$%FUNCTION 
$!4!?#$??CELLGRIDDISKS  $EFAULTALLOCATIONPOLICY  
$ATAMIGRATIONSTRATEGY  $EPLOY 
INITORAPARAMETERS  COMMAND LINEOPTIONSPROCESS 
LOGICALMIGRATIONsee,OGICALMIGRATION $"-#ONFIGURATOR 
PHYSICALMIGRATIONsee0HYSICALMIGRATION INSTALLATIONPROCEDURE 
6,$"MIGRATIONDOWNTIME  $IAGNOSTICSAND4UNING0ACKLICENSES 


„).$%8

$IAGNOSTICSCRIPTS  CHAINEDROWS


ASSQL  BLOCKSHIPPING  
CALIBRATE?IOSQL  EXAMPLE n
CHECK?PXSQL  )/?3!6%$?CALCULATION 
COMP?RATIOSQL  pass-through MODE 
CREATE?DISPLAY?RAWSQL  QUERYWITHOFFLOADINGVSWITHOUT
DBA?TABLESSQL  OFFLOADING  
DESCSQL  TKRPROF 
DISPLAY?RAWSQL  COMPRESSION 
DPLANSQL  DATA FLOWDYNAMICS 
DUMP?BLOCKSQL  %&3# 
ESFC?HIT?RATIOSQL  %3&# 
ESFC?KEEP?TABLESSQL  HINTEDCODE 
FLUSH?POOLSQL  INDEXES 
FLUSH?SQLSQL  PARTITIONING 
FSSQL  ROW AT A TIMEPROCESSING 
FSXSQL  3MART3CANS 
FSXOSQL  CODINGTECHNIQUES 
GATHER?TABLE?STATSSQL  DIRECTPATHREADMECHANISM 
GET?COMPRESSION?RATIOSQL  %80,!).0,!.TYPETOOL 
GET?COMPRESSION?TYPESQL  FSXOSQLSCRIPT 
MYSTATSSQL  LONG RUNNINGSTATEMENTS 
OBJ?BY?HEXSQL  OFFLOAD?PERCENTSQLSCRIPT  
OFFLOAD?PERCENTSQL  ONLINECODEREPOSITORY 
PARMSDSQL  OPTIMIZER 
PARMSSQL  VERYBUSYCELLS 
PART?SIZESQL  7(%2%CLAUSES
POOL?MEMSQL  CUSTOM WRITTEN0,31,FUNCTIONS 
QUEUED?SQLSQL  OFFLOADABLEFUNCTION 
REPORT?SQL?MONITORSQL  STORAGEINDEXES 
SISQL  $YNAMICPERFORMANCECOUNTERS
SNAPPERSQL  CELLBLOCKAGE
SS?OFFSQL  COMMITCACHE  
SS?ONSQL  -IN3#.OPTIMIZATION 
TABLE?SIZESQL  CELLBLOCKSPROCESSING
VALID?EVENTSSQL  CACHELAYER 
WHOAMISQL  DATALAYER 
$IAGNOSTICTOOLS INDEXLAYER 
#ELL#,)see#ELL#,) TXNLAYER 
(EALTHCHECK CELLCOMMITCACHEQUERIES 
!3-HEALTHCHECK  CELLFLASHCACHE 
/3HEALTHCHECK  CELL)/UNCOMPRESSEDBYTES 
3UN$IAGNOSTICSseeSUNDIAGSHOUTPUT CELLINDEXSCANS 
$ISK BASEDBACKUPS  CELLNUMFASTRESPONSESESSIONS 
$ISKDRIVEFRONTPANEL  SWITCHTOSMARTSCANSESSION 
$)3+-/.  USINGPASSTHRUMODE 
$ISKSTATUS  CELLPHYSICAL)/BYTES
$ISKTRACKS  EXCESSIVE#05ONCELL 
$7")WORKLOADS  INTERCONNECTBYTES 
$7 ORIENTEDWORKLOADS OPTIMIZEDFILECREATION 
#!3%STATEMENTS   OPTIMIZED2-!.FILERESTORE 


„).$%8

PREDICATEOFFLOAD  )NFINI"ANDNETWORK  


SENTDIRECTLYTO$"NODETOBALANCE#05 /,40MACHINE 
USAGE  OPERATINGSYSTEMS 
STORAGEINDEX  SOFTWARECOMPONENTS
CELLSCANS  DATABASESERVERS 
CELLSMART)/SESSION STORAGESERVER 
CACHEHITS  STORAGECELLS 
CACHELOOKUPS  STORAGELAYER 
CELLTRANSACTIONSINCOMMITCACHE  STORAGESERVERS 
CHAINEDROWS 8 DATABASESERVERS 
PROCESSEDBYCELL  8 DATABASESERVERS 
REJECTEDBYCELL  %XADATACONFIGURATIONPARAMETERS 
SKIPPEDBYCELL  BACKUPMETHOD
MEANINGANDEXPLANATION  EXTERNALTO%XADATA 
/RACLECOUNTERS  INTERNALTO%XADATA 
/RACLE3ESSION3NAPPER  DATABASEMACHINENAME 
PHYSICALREADREQUESTSOPTIMIZED  DISKTYPE 
PHYSICALREADTOTALBYTESOPTIMIZED  PROTECTIONLEVEL  
08SLAVESESSIONS  3MART&LASH#ACHE 
3TATSPACK!72REPORTS  TYPEOFSYSTEM 
TABLEFETCHCONTINUEDROW  WORKLOADTYPE 
TABLESCANS %XADATADATABASEMACHINE 
DIRECTREAD  8  
LONGTABLES  8  
TROUBLESHOOTINGPERFORMANCE  %XADATA(YBRID#OLUMNAR#OMPRESSION%(##
 
%XADATA3MART&LASH#ACHE%3&#  
„E $"&# 
%JECTEDDISKDRIVE  FLASHCACHECREATION  
%NERGYSTORAGEMODULE%3-  FLASHDISK 
%XADATA  FLASHMEMORY n
ARCHITECTURE HARDWARE 
!3-  MONITORING
$"2-vs)/2-  DATABASELAYER 
$)3+-/.  STORAGELAYER  
,)"#%,,  PERFORMANCE  
2$3PROTOCOL  USAGECONTROL 
3YSTEM'LOBAL!REA  %XADATA6 
BITSANDPIECES  %XPERT/RACLE%XADATA"LOG 
CELLSECURITY  %XPORTAND)MPORTMETHOD
CONSOLIDATIONPLATFORM  "5&&%2PARAMETER 
DATABASELAYER  #/-02%33)/. 
DATABASEMACHINE DIRECT PATHLOADINSERTS 
8   (##COMPRESSION 
8   )'./2%PARAMETER 
DISKS  ).$%8&),%PARAMETER 
$7APPLIANCE  /RACLE!DVANCED#OMPRESSION 
FLASHCACHE  PARALLELIZINGPROCESS 
HARDWARECOMPONENTS  2%-!0?3#(%-! 
HISTORY  4RANSPARENT$ATA%NCRYPTION 
USAGETIME 


„).$%8

%XTERNAL53"DRIVE RECOVERYIMAGE LOADPERFORMANCE 


IMAGEINFOCOMMAND  QUERYPERFORMANCE 
MAKE?CELLBOOT?USBCOMMAND 
SOFTWAREINSTALLATION
IN PARTITIONPATCHES  „ I, J
OUT OF PARTITIONUPGRADES  )NDEXFASTFULLSCAN)&&3 
%XTRACT TRANSFORM ANDLOAD%4, PROCESS  )NDEX /RGANIZED4ABLE)/4 SEGMENT 
 )NDEXTRICKERY 
)NFINI"ANDPRIVATENETWORK 
„F )N MEMORY0ARALLEL%XECUTION
CLUSTER AWAREFEATURE 
&ASTRECOVERYAREA&2!  DISABLINGFEATURE n
&IRSTBOOTPROCESS  FSXSQLSCRIPTOUTPUT 
&IRST IN FIRST OUT&)&/  MEMORYACCESS 
&LASH#ACHE  PARAMETERPERTINENTINFORMATION n
&LASHGRIDDISKS  In-memory parallel query 
&LASHRECOVERYAREA&2!  )NSTANCECAGING
&UNCTIONSHIPPINGARCHITECTURE  CONFIGURINGANDTESTING
BURN?CPUSHSCRIPT 
#05?#/5.4PARAMETER  
„G DEFAULT_PLAN resource allocation 
G2PARALLELFEATURES  /4(%2?'2/503RESOURCEGROUP 
2%3/52#%?0,!.DATABASEPARAMETER

„H 3#2!4#(AND3.)&&DATABASES  

(##  TESTSUMMARY  
(4-,FILE  CPU affinity 
(UMANRESOURCES(2 DATABASE    FOREGROUNDANDBACKGROUNDPROCESSES 
(YBRID#OLUMNAR#OMPRESSION ,'72 
CHALLENGES MULTITENANTDATABASEENVIRONMENTS 
DISABLINGSERIALDIRECTPATHREADS  OVER PROVISIONING 
LOCKINGISSUES  0-/. 
MOVINGDATATOANON %XADATAPLATFORM )NTEGRATED,IGHTS/UT-ANAGER),/- 
 )NTELLIGENT$ATABASEPROTOCOLI$"  
SINGLEROWACCESS  Interleaving allocation policy 
COMPRESSIONRATIOS )/PAYLOAD 
#OMPRESSION!DVISOR  )/2ESOURCE-ANAGER)/2-   
CUSTOMAPPLICATIONDATA  !003?#!4%'/29AND"!4#(?#!4%'/29
FINANCIALDATA   
REALWORLDAPPLICATIONS  ARCHITECTURE  
RETAILSALESDATA  BACKGROUNDPROCESSES 
TELECOMCALLDETAILDATA  CELLSRVISSUES 
COMPRESSIONTYPES CONFIGURINGCATEGORY
!2#()6%()'(  CALCULATIONS  
!2#()6%,/7  #ELL#,)COMMANDLIST 
15%29()'(  $"!?232#?#/.35-%2?'2/503VIEW
15%29,/7  
COMPRESSIONUNITS#5S  DB0LANFIELD 
$-,PERFORMANCE 
),-STRATEGIES 


„).$%8

/4(%2?'2/503CONSUMERGROUP  IORMPLANOBJECTIVECOMMAND 


 LOW?LATENCY 
2%0/243AND-!).4%.!.#%RESOURCE SMALLANDLARGE)/REQUESTS 
GROUPS  )/2-See)/2ESOURCE-ANAGER)/2-
STORAGECELLS  )/SPERSECOND)/03 
%4,PROCESS   )0#ONF 
%XADATA  
FASTFILECREATION  
&)&/  „K
HIERARCHY   +ERRY/SBORNES/RACLE"LOG 
I$"  +EYBOARD VIDEO ANDMOUSE+6- 
INTERDATABASE
CONFIGURINGINTERDATABASE  
HIGHEST PRIORITYDATABASE  „L
)/PRIORITIES 
)/REQUEST  ,IMITEDPARALLELDEGREEPOLICY 
STORAGECELLANDGRID  ,INUXOPERATINGSYSTEM  
INTRADATABASE ,OGICALMIGRATION
CALCULATIONS  DATACOPYINGOVERDATABASELINK 
CONFIGURINGINTRADATABASE   !00%.$HINT 
-'-4?0nATTRIBUTES   #4!3USAGE 
)/ALLOCATION  %XADATA%THERNETAND)NFINI"ANDPORTS
METRICS  
CATEGORY   ).3%243%,%#4COMMAND  
#ELL#,)COMMAND  /RACLE.ET31,
.ET 
CELLSRV   PARALLELIZINGDATALOADsee0ARALLELIZING
CONSUMERGROUP    DATALOAD
DATABASE   SOFTWARECONFIGURATIONSETTINGS 
-%42)##522%.4OBJECT  TABLECOPYING 
-%42)#()34/29$!93ATTRIBUTE  4#0BUFFERSIZES  n
-%42)#()34/29OBJECT  EXTRACTANDLOADMETHOD 
3#2!4#(AND3.)&&DATABASES  ADVANTAGE 
STORAGECELLS  $ATA0UMPsee$ATA0UMP
WORKLOADMANAGEMENTsee7ORKLOAD %XPORTAND)MPORTMETHODsee%XPORT
MANAGEMENT AND)MPORTMETHOD
MONITORING  PLATFORMDIFFERENCES
/,40APPLICATIONS  DATABASEMERGING 
PLANTESTING EXTENTSIZING 
ACTIVATERESOURCEMANAGER  (## 
CELLSRV  REPLICATION BASEDMETHODsee2EPLICATION
DUMPMETRICSTOFILE   "ASEDMIGRATION
3#2!4#(AND3.)&&DATABASES  SELECTIVEMIGRATION 
STARTLOADTEST  STAGEDMIGRATION 
RESOURCEALLOCATION  ,OG7RITER,'72 PROCESS  
2MAN 
UTILIZATION 
WORKLOADOPTIMIZATION
„M
!UTO  Management network 
"ALANCED  ),/- 
$33/,40WORKLOAD  +6- 
HIGH?THROUGHPUT  -ANAGEMENT3ERVER-3 


„).$%8

-ANUALPARALLELDEGREEPOLICY  DATABASE 


-INIMUM!CTIVE3#.OPTIMIZATION  MACHINE 
-IXEDWORKLOADS  /RACLE
HINTS  COMPRESSIONMECHANISMS
INDEX  "!3)#COMPRESSION 
OPTIMIZER (##COMPRESSION 
INDEX ORIENTEDPLANS  /,40COMPRESSION 
PARAMETERS n DATABASE 
SCAN BASEDPLANS  DATASTORAGE
STORAGEPLATFORM  BLOCKFORMAT 
2ESOURCE-ANAGER  0#4&2%% 
SYSTEMSTATISTICS  ROWFORMAT 
-/3SUPPORTNOTES  ROWMIGRATION 
-Y/RACLE3UPPORT-/3 NOTE  ENVIRONMENTPARAMETERS 
 /RACLE#LUSTERWARE 
/RACLEG2 
/RACLEG2 
„N /RACLE3ESSION3NAPPER  
.ETWORKSETTINGS 
CELLALERTNOTIFICATIONPARAMETERS 
CHANNELBONDING.%4 
„ P, Q
CLIENTACCESSNETWORK.%4  0!2!,,%,?#,534%2?#!#(%?0/,)#9
MANAGEMENTNETWORK.%4  PARAMETER 
.ON /RACLEDATABASES  0!2!,,%,?$%'2%%?0/,)#9 
.ORMALREDUNDANCY  0ARALLELIZINGDATALOAD 
FULLYPARALLELNETWORKDATATRANSFER  

„O PARALLELDATALOAD n
/#2ANDVOTINGFILESTORAGE   0ARALLELOPERATIONS
/FFLOADINGOPTIMIZATIONS  AUTO$/0see!UTOMATICDEGREEOF
/,40 ORIENTEDWORKLOADS PARALLELISM
%3&#   PARALLELQUEUINGFUNCTIONALITY
FLASHCACHE  #05UTILIZATION 
LATENCYISSUES  MIXEDWORKLOAD 
SCALABILITY  /RACLESPARALLELCAPABILITIES 
WRITE INTENSIVE/,40WORKLOADS  PARALLELADAPTIVEMULTIUSER 
/N DISKINDEXINGTECHNOLOGY  0!2!,,%,?3%26%23?4!2'%4  
/NE#OMMAND   STORAGELAYER 
CHECKIPSHSCRIPT  0ARALLELQUEUINGFUNCTIONALITY
CONFIGURATIONSTEPS  CONTROLLINGMECHANISM
DATABASETEMPLATE  ./?34!4%-%.4?15%5).'HINT n
DEPLOYSH   
-Y/RACLE3UPPORT-/3 NOTE  /RACLES$ATABASE2ESOURCE-ANAGER
NETWORKSETTINGS  $"2- n
SIMPLIFIEDANDSTRUCTUREDMECHANISM  0!2!,,%,?3%26%23?4!2'%4
STANDARDIZEDCONFIGURATIONS  PARAMETER 
/NLINETRANSACTIONPROCESSING/,40 0!2!,,%,?34!4%-%.4?15%5).'
COMPRESSIONMETHOD PARAMETER n
CHARACTERISTICS  34!4%-%.4?15%5).'HINT 
INDIRECTPATHLOADS 


„).$%8

#05UTILIZATION  2EDO!PPLY 


MIXEDWORKLOAD  2ELIABLE$ATAGRAM3OCKETS2$3 PROTOCOL 
/RACLE  2EPLICATION BASEDMIGRATION
PARALLELADAPTIVEMULTIUSER  LOGICALREPLICATION 
0!2!,,%,?3%26%23?4!2'%4    LOGICALSTANDBY  
0ASSTHROUGH  NON /RACLEDATABASE  
0AYROLL0!9 DATABASE    /RACLE3TREAMSAND'OLDEN'ATE n
0#4&2%% PARALLELLOAD 
BLOCKFREESPACECONTROL  PHYSICALREPLICATION 
PURPOSES  2ESOURCEMANAGEMENT  
ROWMIGRATION  CONSOLIDATION 
0ERFORMANCEMETRICS  $"2-see$ATABASE2ESOURCE-ANAGER
DYNAMICPERFORMANCECOUNTERS  INSTANCECAGINGsee)NSTANCECAGING
INTERNALS  )/2-see)/2ESOURCE-ANAGER
/RACLE3ESSION3NAPPER  2ESOURCEPLANS
3MART3CAN ACTIVATION 
METRICSANDPERFORMANCECOUNTERS  AFTER HOURSPLAN 
PERFORMANCE  CONSUMERGROUPMAPPINGRULES  
63%334!4  MYPLAN 
0HYSICALMIGRATION .)'(44)-%PLAN 
!3-REBALANCE   pending area 
BACKUPANDRESTORESTRATEGY ANDPLANDIRECTIVES 
BLOCKCHANGETRACKINGFILE  RESOURCEGROUPMAPPINGPRIORITIES 
FULLBACKUPANDRESTORE   RESOURCEGROUPSCREATION 
INCREMENTALBACKUP  2%3/52#%?-!.!'%2?0,!.INSTANCE
PHYSICALSTANDBYSTRATEGY   PARAMETER 
POST MIGRATIONTASKS  TESTING
SOURCEDATABASEVERSION  ACTIVATERESOURCEMANAGER 
443see4RANSPORTABLETABLESPACES CHECKCONSUMERGROUPASSIGNMENTS 
0LANDIRECTIVES 
#2%!4%?0,!.?$)2%#4)6%PROCEDURE CHECK$"2-METRICS   
 $!94)-%RESOURCEPLANALLOCATION 
MANAGEMENTATTRIBUTES  DEACTIVATE$"2- 
-'-4?0n   EXAMINESESSIONTRACEFILE  
0RIVATENETWORK  EXECUTEAQUERY 
0ROCESSMONITOR0-/.  LOGINAS2*/(.3/. 
SESSIONTRACE 
STARTLOADTEST 
„R 6232#?#/.35-%2?'2/50VIEW
2EAL TIME31,MONITORINGSeealso31, 
MONITORING 2ESTART3ERVER23 
$"-3?31,45.%  runtimeATTRIBUTES 
EXECUTIONPLANROWSOURCE
ACTIVITYMONITORING 
ACTIVITYTIMELINE 
„S
/RACLEEXECUTIONPLANS  3#2!4#(?$' 
082%#%)6%ROWSOURCE  3+%7
TABLEACCESSANDSORTING  (##LOADTIMESvsCOMPRESSIONRATIOS 
MANUALQUERY  statistics gathering timing 
2ECOVERYMANAGER2MAN  UNQUALIFIEDQUERYTIMING 


„).$%8

3MART3CAN  LSSCSICOMMAND 


METRICSANDPERFORMANCECOUNTERS  /RACLECELLSRV 
#05USAGE  3!.STORAGENETWORK 
MULTIBLOCKREADS  SMALL)/REQUEST 
SINGLEBLOCKREADS  SYNCHRONOUSANDASYNCHRONOUS)/ 
PERFORMANCE  /37ATCHER
BITMAPINDEXSEGMENTS   ARCHIVEFILESOUTPUT 
"
4REEINDEXSEGMENTS   BENEFITS 
COLUMNPROJECTION  BZIPPEDFILE 
FILTRATION  CELLSRVSTATCOMMAND 
FULLSEGMENTSCANS  COLLECTEDDATASTORAGE 
INDEXFASTFULLSCAN  IOSTATARCHIVE 
)NDEX /RGANISED4ABLE)/4 SEGMENT LITTLESCRIPT 
 LOGFILES 
MATERIALIZEDVIEWSEGMENTS  LOGFILEWRITELATENCYPROBLEM 
PREDICATEOFFLOAD   -Y/RACLE3UPPORTVERSION 
STORAGE PREDICATE  NAMESEARCH 
3PINESWITCH  OUTPUTSORTING 
31,MONITORING  0ERLTEXTPROCESSING 
CONTROL  POST PROCESSING 
DATABASETIME  PSTREECOMMAND 
DURATIONVS#05TIME   3TORAGECELLSCONFIGURATION 
%NTERPRISE-ANAGERPERFORMANCE 3TORAGE)NDEXES
'RID#ONTROL  ?#%,,?34/2)$8?-/$%PARAMETER 
31,EXECUTIONS  ??+#&)3?34/2!'%)$8?$)!'?-/$%
FEATURES  PARAMETER 
PARALLELQUERY  ?KCFIS?STORAGEIDX?DISABLEDPARAMETER 
REAL TIMEMONITORING SINGLELONGRUNNING BINDVARIABLES 
QUERY CELLINITORA3TORAGE)NDEXPARAMETERS 
BINDVARIABLEVALUES  ENCRYPTION 
#ELL/FFLOAD%FFICIENCYRATIO  FEATURESANDSYNTAX PREVENTION 
)/3TATISTICS   (## 
-ONITORED31,%XECUTION$ETAILS  JOINS 
OVERVIEWSECTION   ATLEASTONEPREDICATE 
4IMEAND7AIT3TATISTICS  LIMITATIONS 
631,AND631,34!43  MONITORING
31,STATEMENTSPERFORMANCEMETRICS DATABASESTATISTICS 
%XADATA SPECIFICPERFORMANCESTATISTICS  TRACINGMECHANISM 
631,COLUMNSANDMEANINGS  WRAPUP 
3TORAGECELLLAYERMONITORING MULTI COLUMNPREDICATES 
CELLMETRICSASSESSMENT NULLOPTIMIZATION 
CELLLAYER CELL#,)  OPERATORS 
#05UTILIZATION  PARALLELQUERY 
GRIDCONTROL%XADATA3TORAGE3ERVER  PARTITIONEDOBJECTS 
/RACLE  PERFORMANCEBENEFITS 
)/METRICS IOSTAT POTENTIALISSUES
DISKSERVICETIME  INCOMPATIBLECODINGTECHNIQUES 
)/RESPONSETIME  INCORRECTRESULTS 
)/WAITINGQUEUEINGTIME  MOVINGTARGETS 
,INUXIOSTAT  PARTITIONSIZE 
,3)DISKS  3MART3CAN 


„).$%8

STRUCTURE  STORAGECELL 


SUB QUERY  DISKFAILUREsee#ELLDISKFAILURE
Storage network configuration  FLASHCACHEFAILURE 
3TRIPEANDMIRROREVERYTHING3!-% PERMANENTCELLFAILURE 
METHODOLOGY  SYSTEMVOLUMEFAILURE  
SUNDIAGSHOUTPUT TEMPORARYCELLFAILURE 
DMESG  VALIDATIONFRAMEWORK 
FDISK L 
LOGFILES
ALERTLOG  „T
ALERTHISTORY  4ANEL0ODERS"LOG 
CELL DETAIL  4APE BASEDBACKUPS 
CELLDISK DETAIL  4EMPORARYCELLFAILURE 
FDOM L  4RANSPORTABLETABLESPACES443
FLASHCACHE DETAIL  CROSSPLATFORM443 
GRIDDISK DETAIL  ENDIANFORMATCONVERSION 
LUN DETAIL  RESTRICTIONS 
MS ODLLOG  42!.30/24?&5,,?#(%#+PARAMETER 
MS ODLTRC 
PHYSICALDISK DETAIL 
PHYSICALDISK FAIL  „U
LSPCI 
LSSCSI  5NBREAKABLE%NTERPRISE+ERNEL5%+ 
MEGACLI  5SER)/CLASS
MESSAGES  CELLLISTOFBLOCKSPHYSICALREADEVENT  
SEL LIST  CELLMULTIBLOCKPHYSICALREADEVENT  
3UN&0#)E&LASH#ARD  CELLSINGLEBLOCKPHYSICALREADEVENT
3YSTEMBACKUP ACTIVEPRODUCTIONSYSTEM 
DATABASESERVER  CELLHASHNUMBER 
,6-SNAPSHOTS  DISK BASEDSTORAGESYSTEMS 
STORAGECELL  DISKHASHNUMBER 
#%,,"//453"FLASHDRIVE  FLASHCACHE 
EXTERNAL53"DRIVE  HISTOGRAM 
3YSTEM)/CLASS INDEXACCESSPATHS 
CELLSMARTINCREMENTALBACKUP CELLSMARTFILECREATION  
CELLHASHNUMBER  CELLSMARTINDEXSCANEVENT
)NCREMENTAL,EVELBACKUP  AGGRESSIVENESS 
)NCREMENTAL,EVELBACKUP  CELLHASHNUMBER 
2-!.COMMAND  FASTFULLINDEXSCANS 
TRACEFILE  OBJECT)$ 
CELLSMARTRESTOREFROMBACKUP SERIAL?DIRECT?READ425% 
CELLHASHNUMBER  TRACEFILE  
FILEINITIALIZATION  CELLSMARTTABLESCANEVENT 
2-!.RESTORES  ALLOCATIONUNITS 
TRACEFILE   CELLHASHNUMBER 
MISCELLANEOUS3YSTEM)/CLASSEVENTS  &ULL4ABLE3CANS 
3YSTEMRECOVERY  )NFINI"ANDNETWORK 
DATABASESERVERS  OBJECT)$ 
,6-SNAPSHOT BASEDBACKUP  TRACEFILE  
REIMAGING  CELLSTATISTICSGATHER 
MULTI BLOCKREADMECHANISMS 


„).$%8

5SER)/CLASScont RESOURCEMANAGEREVENTS
PHYSICAL)/EVENTS  RESMGRCPUQUANTUMEVENT  
SINGLE BLOCKREADMECHANISMS  RESMGRPQQUEUEDEVENT  
6%6%.4?.!-% 
STEPSPLANNING TRIGGEREVENTS  
„V 3YSTEM)/CLASSsee3YSTEM)/CLASS
631,AND631,34!43VIEWS  5SER)/CLASSsee5SER)/CLASS
VEVENT?NAME 
7ORKLOADMANAGEMENT
„ W, X, Y, Z #'?&#?)/?21?,' 
#'?&$?)/?21?,' 
7AITEVENTS #'?)/?21?,' 
CELLEVENTS   consumer_type attribute 
CELLSMARTINCREMENTALBACKUPS  device_type attribute 
CELLSMARTRESTOREFROMBACKUPS  $33WORKLOAD 
DISCRETEOPERATINGSYSTEMCALLS  )/2-?-/$%  
G2CODE  -%42)##522%.4AND-%42)#()34/29
)DLE#LASSEVENTS   OBJECTS 
OLDEVENTS METRIC/BJECT.AMEATTRIBUTE 
DIRECTPATHREAD  NAMEATTRIBUTEOF)/2--%42)##522%.4
ENQ+/ˆFASTOBJECTCHECKPOINT  
RELIABLEMESSAGE  /,40WORKLOAD 
/RACLEDATABASE  STORAGECELLS 



You might also like