You are on page 1of 32

IBMSmartAnalyticsSystem

BestPractices
UsingIBMInfoSphereOptimHigh

PerformanceUnloadaspartofa

RecoveryStrategy

GarrettFitzsimons
IBMDataWarehouseBestPracticesSpecialist
KonradEmanowicz
IBMDB2DataWarehouseQASpecialist
RichardLubell
IBMInformationDevelopmentSpecialist

IssuedNovember2011

ExecutiveSummary..................................................................................................................... 3

Introduction .................................................................................................................................. 4

IncorporatingHPUintoyourrecoverystrategy ..................................................................... 5

WhentouseHPU............................................................................................................. 5

HPUandbackupimages ................................................................................................ 6

UsingHPU .................................................................................................................................... 8
UsingHPUwithoutputfilesornamedpipes ............................................................. 8
ControllingparallelismwiththeMAXSELECTSparameter ..................................... 8
Controllingprocessorresourceswiththenbcpuconfigurationfileparameter...... 9
Howthedb2hpucommandworks......................................................................................... 10

UsingHPUcontrolfiles ................................................................................................ 10

Creatingacontrolfile .................................................................................................... 12

Issuingthedb2hpucommand..................................................................................... 13

InstallingandconfiguringHPUinanIBMSmartAnalyticsSystem ................................. 14

InstallingHPUinanIBMSmartAnalyticsSystem .................................................. 14

ConfiguringHPUinanIBMSmartAnalyticsSystem ............................................. 14

HPUdiskrequirements................................................................................................. 16

Conclusion .................................................................................................................................. 17

AppendixA.Configurationoftestsystemused ................................................................... 18

AppendixB.Recoveryscenariocontrolfileexamples ......................................................... 20
RecoverdroppedpartitionedtablesusingbackupimagesonTSM....................... 20
Recoverexistingpartitionedtablesusingbackupimagesondisk......................... 22
RecoverdroppedpartitionedtableusingbackupimagesonTSMandnamed
pipes ................................................................................................................................. 23

RecoverdroppedtablespaceusingbackupimagesonTSM .................................. 25

RecoverdatausingnonproductionsystemandbackupimagesonTSM ............ 26

AppendixC.LOBandXMLobjects ........................................................................................ 28

Furtherreading........................................................................................................................... 29

Contributors................................................................................................................................ 29

Notices ......................................................................................................................................... 30

Trademarks ..................................................................................................................... 31

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

ExecutiveSummary
Thispaperistargetedatthoseinvolvedinplanning,configuring,designing,implementing,or
administeringadatawarehousebasedonDB2DatabaseforLinux,UNIX,andWindowssoftware.
TheexamplesinthispaperapplygenerallybutarefocusedontheIBMSmartAnalyticsSystembasedon
SystemxandPowerSystemsservers.
IBMInfoSphereOptimHighPerformanceUnload(HPU)forDB2forLinux,UNIX,andWindowsV4.2is
ahighspeedtoolforunloading,extracting,andrepartitioningdatainDB2forLinux,UNIX,and
Windowsdatabases.HPUisdesignedtoextractdatafromDB2incrementalanddeltabackupimagesand
fromDB2tablespacecontainers.HPUhasadditionalusesindatamigrationandrepartitioningthatwill
bedealtwithinfuturepaper.
Thefocusofadatabasebackupandrecoverystrategyshouldbetherecoveryplan.ThepaperBuildinga
RecoveryStrategyforanIBMSmartAnalyticsSystemdiscussesbestpracticerecommendationsforbackup
andrecoveryusingthenativeDB2softwarecommands.Althoughnotrecommendedforfulldatabase
recovery,HPUcanbeeffectiveinspeedilyrecoveringdiscretepiecesofdatafromtablesandtablespaces.
ThedatabaseisnotaffectedbytheHPUprocessandtablespacesdonotneedtobeplacedinanoffline
state.HPUcanthereforeofferadvantagesoverotherrecoverymethodsindataavailabilityand
processingspeed.IncorporatingHPUintoyourrecoverystrategyforscenariosinvolvingdatalossor
corruptioncanhelpachieveservicelevelobjectivesfordataavailabilityanddatarecovery.
UsingtherecommendationsinthispapercanhelpyoudevelopastrategythatusesHPUtocomplement
yourexistingrecoverystrategy.

Page:3

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Introduction
ThispaperdescribesbestpracticesforincorporatingtheuseofHPUintoyourrecoverystrategyand
implementingHPUforanIBMSmartAnalyticsSystemdatawarehouse.Thepapercovershowtounload
datafrombackupimages.
Tousethispaper,youshouldhaveabasicknowledgeofHPUsoftwareaswellasDB2softwareas
implementedinanIBMSmartAnalyticsSystem.Thefurtherreadingsectioninthispapercontainslinks
toproductdocumentationandpapersreferencedthroughoutthepaper.
ThefirstsectionofthepaperdiscusseshowtoincorporateHPUintoarecoverystrategyandwhentouse
HPUtomeetyourrecoveryobjectives.
Thesecondsectioncontraststheuseofoutputfilesandnamedpipesanddiscussesintroducing
parallelism.
ThethirdsectionreviewstheHPUcommandandcontrolfileandrecommendsbestpracticesforcreating
controlfiles.
ThefourthsectionofthepaperdetailshowtoinstallandconfigureHPUinanIBMSmartAnalytics
System.
Theappendixesoutlinetheconfigurationofthetestsystemusedindevelopingthispaperandalso
containexamplesofusingHPUincommonrecoveryscenarios.
ThispaperbuildsonandcomplementsaseriesofbestpracticespapersthatdiscussaspectsofaDB2data
warehouse.Refertothesepapersforfurtherinformation.

Page:4

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

IncorporatingHPUintoyourrecoverystrategy
HPUisahighspeedstandaloneutilityforunloading,extracting,andrepartitioningdatainDB2for
Linux,UNIX,andWindowsdatabases.HPUunloadslargevolumesofdataquicklybyreadingdirectly
fromfull,incremental,anddeltabackupimagesortablespacecontainersratherthanthroughtheDB2
softwarelayer.HPUdoesnotreplaceotherrecoverytoolsinyourrecoverystrategy,butcanhave
significantadvantagesinrecoveringdiscretevolumesofdata.
IncorporateHPUintoyourrecoverystrategytoprovide:

Reducedrecoverytimesthroughtargeteddatarecovery
UsetheWHEREclausewhenselectingdatafrombackupimagestotargetonlythedatathatwas
lost,compromised,orcorrupted,reducingrecoverytime.

Increaseddataavailabilityandreducedresourceusageduringrecoveryscenarios
Unloaddatafromabackupimageandoptionallyprocessthisdataonanonproductionsystem,
maintainingavailabilityofthequeryworkloadandreducingtheeffectontheproductionsystem.

IntegrationwithDB2andTivoliStorageManagersoftware
QueryTSMtounloaddatafromfull,incremental,anddeltabackupimagesarchivedtoTSMby
theDB2BACKUPcommand,reducingerrorsandfacilitatingoutsiderecovery.

InstallHPUonlyonthephysicalserverswhereyouintendtorunHPUtounloaddata.

HPUwouldbeuseful,forexample,inarecoveryscenariowhereanETLapplicationchangehas
compromiseddatasuchasacustomerZIPcode.InsteadofusingtheRESTOREcommandandaffecting
dataavailability,HPUcouldbeusedtounloadthecustomer idandzip codecolumnsfroma
backupimage.TheunloadeddatawouldthenbeloadedintoatemporarytableandthecustomersZIP
codecorrectedbyusingasimpleUPDATEstatement.

WhentouseHPU
HPUcancomplementyourexistingrecoverystrategywhere:

TheRecoveryTimeObjective(RTO)isaggressive.
HPUdoesnotneedtoconnectthroughtheDB2softwarelayerbutinsteadreadsdatadirectly
fromthebackupimage,increasingthespeedofunloadingdata.UseHPUtounloaddatafroma
backupimagetomultipleoutputfilesinparallelforoneormoretables.UsetheDB2Loadutility
tocompletetherecoveryofthedroppedtable.
Forexample,themethodofrecoveringeachdroppedtableinseparatesequentialrestore
operationsisnotcompatiblewithsomerecoverytimeobjectives(RTO).HPUcanperformdata
unloadfrommultipletablesinparallelanddoesnotneedtoperformaROLLFORWARDtoendof
logs,helpingtoensurefasterdatarecoverytimes.

Thedatabaseneedstobeavailabletoqueriesduringtherecoveryprocess.
HPUunloadsdatadirectlyfrombackupimagesinsteadofthroughthedatabaseengine.Youcan
therebyrecoverdataforatablewithouttheneedtoputatablespaceordatabaseoffline.

Page:5

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

HPUcanunloaddataforindividualtableorforalltables.Bydefault,HPUunloadsdataforall
tablesinthetablespaceinparallel,reducingtheeffectonqueryworkloadbyminimizing
networktraffic.Thisapproachhelpsensurethatbackupimagesarereadaminimumnumberof
times.HPUusessystemresourcesbutwillnotneedtoconnecttotheproductiondatabase.
DatacanberestoredbyusingtheLOADcommandwithanINSERTwithSELECTstatement.
Alternatively,theALTERTABLEDETACHandATTACHcommandcanbeusedtoswitchthe
recovereddatapartitionwiththecorrupteddatapartition.Theseoperationsdonottakethe
systemofflineasisrequiredwhenusingtheRestorecommand.

Therecoveryprocessneedstotakeplaceawayfromtheproductionsystem.
Whendataneedstoberestoredandvalidatedoutsideoftheproductionsystem,youcanunload
datafordroppedorcorruptedtablesintoanonproductionsystem.Thisactionallowsyouto
cleanseandpreparedataforloadintotheproductionsystem.Usethisapproachtominimizethe
effectontheproductionsystem.HPUsupportsDB2softwareintegrationwithIBMTivoliStorage
Manager(TSM);usethistooltorecoverandvalidatedataonanonproductionsystem.Thistopic
isdiscussedfurtherinAppendixB.
Forexample,HPUcanbeusedtorecoverspecificpiecesofdatatoanonproductionsystem.
Whenusedinthisway,HPUmustbeinstalledonthenonproductionsystemandacopyofthe
databasecatalogbackupimagemustbeaccessible.Ifonlyasinglecolumnthathasbeen
compromised,useHPUtounloadjusttheprimarykeyandthecontentsoftheaffectedcolumn.

Retainacopyofthemostrecentdatabasecatalogbackupimageondisktohelpincreaserecovery
speedwhenusingHPU.

HPUandbackupimages
Severalfactorsrestrictthevolumeofdatathatcanbeunloadedandthenumberofbackupimagesthat
canbeaccessedinparallel,Thefactorsincludethenumberoftapedrivesavailable,theresources
assigned,andthebackupstrategychosen.
HPUdirectlyreadsbackupimagescreatedbyDB2.Thefollowingisrecommended:

Useofflinebackupimageswhereavailabletohelpensuretheintegrityandconsistencyofdata
unloaded.

Useonlinebackupimagesonlywhenyouarecertainthatnotransactionstookplaceagainstthe
objectsyouareunloadingduringthemostrecentonlinebackup.

Usetablespacebackupsinsteadoffulldatabasebackupswhenpossibletoreducethesizeofthe
backupimageyouarereadingandthereforeenablefasterdataunloadtimes.

Includethecaptureoftablecreatestatementsinyourbackupstrategy.Whenatableisdroppedit
needstoberecreatedbeforerecoveryviaaLOADcommand.

Useofflinebackupimagesorconsistentonlinebackupimagestohelpensuretheintegrityofthe
dataunloaded.

Page:6

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Yourbackupstrategyshouldallowforthenumberoftapedrivesavailableperdatanode.Inapartitioned
databaseitisrecommendedthatyoubackuponedatabasepartitionperdatanodeinparallelacrossall
datanodes.Thisrecommendationassumesonetapedriveperdatanode.Iftwotapedrivesareavailable,
thentwodatabasepartitionsperdatanodecanbebackedupinparallel.Throughthisstrategy,a
databasebackupconsistsofmultiplebackupimageswithdifferenttimestamps.HPUcanuseapartial
timestampparametertoreferenceallofthesebackupimages.

IfnobackupimagetimestampisspecifiedthenHPUdeterminesthemostrecentfullbackuptakenand
alsoidentifiesincrementalanddeltabackupimagescreatedsincethefullbackup.HPUtemporarily
stagesdatafromthefulldatabasebackupandthenappliesanychangestothedatafoundinthe
incrementalordeltabackupimagesbeforecreatingthefinaloutputfile.Notethatadditionalstaging
spaceisrequiredwhendataisunloadedfromincrementalbackupimages.
AccesstoacopyofthedatabasecatalogisneededbyHPUtodeterminethecharacteristicsofthetables
forwhichdataisbeingunloaded.ToavoidanydatabaseconnectionswhenusingHPU,itis
recommendedthatyouretainabackupofthedatabasecatalogondiskforusewithHPU.HPUcanrefer
toadatabasethatcontainsthedatabasecatalogortoanindividualbackupimageofthedatabasecatalog
itself.

Page:7

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

UsingHPU
WhenusingHPUtorecoverdataconsiderthediskandserverresourcesavailableandyouruseofthese
resources.

UsingHPUwithoutputfilesornamedpipes
HPUusesastagingareatostagedatapagesreadfromthebackupimage.Dataisthenwrittentooutput
filesintheoutputarea.
Unloadingdatatooutputfilesallowsthisprocesstobeseparatedfromtheprocessofloadingdata,
allowingforvalidationorpostponementoftheloadoperation.Usingnamedpipesallowsdatatobe
unloadedfromabackupimageandloadedtothetargetdatabasetableconcurrentlyanduseslessdisk
spacetoperformtherestoreoperation.

Chooseyourrecoverymethodbasedonyourresourcepriority:usenamedpipeswherethereis
insufficientdiskspaceonthedatanodes,orunloadtooutputfileswhereprocessorusageis
limited.

Tofacilitateparallelunloadandloadoperations,createacontrolfiletounloaddataforeachdatabase
partitiontoindividualoutputfilesontheappropriatenode.ThenusetheDB2Loadutilitytoloaddatain
parallelacrossallthedatabasepartitions,avoidingunnecessarynetworktrafficbetweendatanodes
duringtherecoveryprocess.ThesyntaxoruseoftheDB2LoadutilityisnotalteredbyHPUandall
featuresandparametersoperatenormally.
WhenusingtheDB2Loadutilitytocompletearecoveryscenarioitisrecommendedthatyouperforma
backupoftherecovereddatainlinewithyourservicelevelobjectivesforbackupandrecovery.When
usingtheLOADcommanditisrecommendedthatyouusetheLOAD_ONLY_VERIFY_PARTmode.HPU
doesnotgeneratepartitionheaderdatainoutputfiles.UseLOAD_ONLY_VERIFY_PARTratherthanthe
LOAD_ONLYmodetoindicatetotheLOADutilitythatthedataisalreadypartitionedbutdoesnotcontain
apartitionheader.

ControllingparallelismwiththeMAXSELECTSparameter
TheMAXSELECTSparameterdeterminesthenumberofSELECTstatementsandthereforethenumberof
tablestobeprocessedinparallelwhenunloadingdatafrombackupimages.UsingMAXSELECTSinthis
wayminimizesthenumberoftimesthebackupimageisreadbutincreasestheresourcesrequiredbythe
HPUprocess.
IfavalueforMAXSELECTSisnotspecified,HPUattemptstoprocessallselectstatementintheunload
block,oralltablesinaspecifiedtablespace.
ItisrecommendedthatyouincludeaMAXSELECTSentryinthedb2hpu.cfgconfigurationfileand
associateavalueof1.ThisactionpreventsanHPUprocessfromconsumingmoreresourcesthan
intended.Thisdefaultvaluecanthenbeoverriddeninanindividualcontrolfilewhereneeded.Usethe

Page:8

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

MAXSELECTScontrolfileconfigurationparametertorestrictthenumberoftablestobeunloadedfrom
inparallelwhereyouwanttoreducetheresourcesconsumed.

UsetheconfigurationandcontrolfileparameterstothrottleHPUusageofprocessorresources.

Controllingprocessorresourceswiththenbcpuconfigurationfile
parameter
Thenbcpuconfigurationparameterspecifiesthemaximumnumberofthreadsallowedwhenunloading
data.Defaultbehavioristostartaworkunitforeachprocessorcore.Thisparameterissetinthe
db2hpu.cfgconfigurationfileandcannotbeoverriddeninthecontrolfile.
Inascenarioinvolvingadatabaseoutage,youmightwanttoallowHPUtouseallavailableprocessor
resourcesinordertounloaddataasquicklyaspossible.Inanenvironmentwherequeriesarerunning
duringrecovery,configureHPUtorestricttheresourcesconsumed,reducingtheamountofprocessor
used.

Page:9

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Howthedb2hpucommandworks
TheHPUutilityusesacommandlineinterfacewithacontrolfiletoperformthedataunloadoperation.
DataunloadsfromthebackupimagetostagingfilesandthenwritestooutputfilesforusewiththeDB2
Loadutility.Employingaseparatestagingdirectoryandoutputfiledirectoryisrecommendedto
separatefilesandinputandoutputoperationsduringunloadprocessing.HPUprocessesonesingle
databasepartitionpernodeinsequenceoneachdatanodeinparallel.Allthetablesinthetablespace
unloadoneachdatanodeinthefollowingformat:file.NNN_<tablespace>_<schema>_<table>
whereNNNisdatabasepartitionand<schema>and<table>aretheschemaandtablesnames.

Avoidcontentionwhenunloadingdatafromtapebyensuringthatthesequenceofdatabase
partitionsreferencedintheunloadblocksmirrorsthebackupsequence.

ThesetopicsarediscussedinthefollowingsectionswithdetailedexamplesinappendixB:

UsingHPUcontrolfiles

Creatingacontrolfile

Issuingthedb2hpucommand

UsingHPUcontrolfiles
Thestructureofthecontrolfileconsistsoftwotypesofcontrolblocks:

GlobalBlock

UnloadBlocks

GlobalBlock
TheglobalcontrolblockcontainsconfigurationdatathatiscommontoallunloadblocksintheHPU
controlfile.Thereisonlyoneglobalblockpercontrolfileandtheglobalblockmustbethefirstblockin
thecontrolfile.
Thedb2hpucommandreferencesadatabasecatalogtogatherdetailsonthetablestobeunloaded.
SpecifytheUSINGBACKUPCATALOGclausewhentheobjectsbeingrecoveredarenotavailableonthe
existingdatabasecatalogcontainedinthedatabasereferenced.Scenariosforthisactionincludewhere
objectsweredropped,thecatalogiscorruptedoryouareexecutingthedb2hpucommandonanon
productionsystemwhereDB2softwareisnotinstalled.
Thefollowingexampleillustratesthecontentofacontrolblockwherethedatabasecatalogbackupimage
for the database TPCDSis to be used. The backup imagefor the database catalog to be used islocated on
disk and the backup image to use has all or partial timestamp 2011033108. A semicolon is used to
terminatethestatementandtheblock.

Page:10

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

-- Global Block specifies disk location for the database catalog


GLOBAL USING BACKUP CATALOG TPCDS from "/work0/HPU/catalog_BACKUP"
TAKEN AT 2011033108;
;

UnloadBlocks
Theunloadblockspecifiesthetablespace,tables,andSELECTstatementforthedatatobeunloaded.
Multipleunloadblockscanbeusedinasinglecontrolfiletoperformasequenceofunloadoperations.
Scenariosforthisusageincludewhenunloadingfrommultipletablespacesorfrommultipletablespace
backupimages.
HPUattemptstoreadthebackupimageonceperunloadblock.MultipleSELECTstatementsinasingle
unloadblockareprocessedinparallelsubjecttotheMAXSELECTSparametervalue.
WhencreatingacontrolfileinanIBMSmartAnalyticsSystem:

SpecifytheUSINGBACKUPDATABASEclauseasthelastoneintheUNLOADTABLESPACE
commandwhenunloadingthewholetablespaceortheHPUcommandwillfailwithincorrect
syntax.

Useaperiodafterthefilenameinthecontrolfile;thisnotationisrequiredfortheDB2Load
utilitytoloadthedatasuccessfully.

UsetheOUTFILEclauseinpreferencetotheOUTPUTclause.

Unloaddataforalltablesneeded;HPUdoesnotsupportJOINS.

Thefollowingexampleillustrateshowanunloadblockwouldbecreatedtounloaddatafromatable
spacebackupimagefromdatabasepartitions1and9inparallel:
-- Unload Block specifies backup image for partitions 1 and 9
-- A table space backup is used.
UNLOAD TABLESPACE
PART(1,9)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM ON SOURCE
HOST TAKEN AT 20110331080240;
-- Select statement specifies customer table
SELECT * FROM BCUAIX.CUSTOMER;
OUTFILE("%{source_host}:/work%{source_node}/HPU/bcuaix.customer.file.%{s
ource node}") FORMAT DEL
;
-- Select statement specifies customer_demographics table
SELECT * FROM BCUAIX.CUSTOMER_DEMOGRAPHICS;
OUTFILE("%{source_host}:/work%{source_node}/HPU/bcuaix.demographics.file
.%{source_node}") FORMAT DEL
;
Theprecedingexampleincorporatestheserecommendations:

TAKENAT

Page:11

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Usethisparametertospecifyapartialbackupimagetimestamptoreferencemultiplebackup
images,includingincrementalanddeltabackupimages.
Forexample,atimestampof20110630willinstructthedb2hpucommandtolookforallbackup
imagesonJune30th2011.Wheremultiplefullbackupimagescontainthepartialtimestamp,HPU
terminatesandoutputsamessagetothatmultiplebackupimageswiththesamepartial
timestampwerefound.ToallowHPUtodeterminethemostrecentbackupimagestouse,omit
theTAKENATclause.

ONSOURCEHOST
UsethisparametertoinstructHPUtounloaddatainparalleltoindividualoutputfilesoneach
databasepartitioninsteadofcreatingasinglelargefileontheadministrationnode.
Thisactionincreasesparallelisminasharednothingarchitecturesinceeachoutputfileiscreated
locallyoneachdatanode.EachdatanodeinvolvedrecoversthedataforitslocalDB2database
partitionstoitslocaloutputpathwiththecorrectfilepernodespecifiedbytheOUTFILEkey.

OUTFILEwith{source_host}and{source_node}keywords
UsetheOUTFILE(%{source_host}:/OUTPUTPATH/FILE.%{source_node})keywordsto
generatetheoutputfileonthecorrectfilesystemassociatedwitheachdatabasepartition.
Eachdatabasepartitionhasaseparateoutputfilecreatedwiththedatabasepartitionnumber
appendedtothenameofthefile.

Creatingacontrolfile
Followtheserecommendationswhencreatingacontrolfileforanunloadoperation:

Identifytheportionofdatathatneedstoberecovered.Thisactionspeedsuptherecoveryby
limitingtheamountofdatatobeunloadedtotheoutputpaths.

SpecifythedatatoberecoveredinthecontrolfilebyusingtheWHEREclausetospecifythe
rangeofvaluesfromcolumns,DATAPARTITIONIDtoreferenceparticulartablerange,PART
clausetoreferenceparticulardatabasepartitions.Thismethodissuitableforascenariowhere
corruptiononanindividualdatabasehasoccurred.

Referenceadatabasecatalogbackupimagethatisconsistentwiththebackupimage.For
example,ifyouareunloadingdataforadroppedtableyouneedtoreferenceadatabasecatalog
thathasthedefinitionofthatdroppedtable.

Verifythattheoutputpathsspecifiedinthecontrolfileforthestagingandoutputfileareasexist
andareaccessibletotheDB2instanceuserid.

ThrottletheresourcesusedbyHPUusingthenbcpuconfigurationparametertoreducethe
numberofthreadscreatedtomitigatetheeffectofdb2hpuonotherworkloads.

ControltheamountofmemorytobeusedbyHPUbyusingthebufsizeparameter.

Page:12

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Issuingthedb2hpucommand
Thedb2hpucommandisissuedasshowninthisexamplewhereiisthedb2instancenameandf
specifiesthecontrolfiletobeused:
db2hpu -i instname -f controlfile

Thecontrolfilesettingsoverridethedefaultssetintheproductconfigurationfile,db2hpu.cfg,whichis
locatedintheinstallationdirectory,typically/opt.

Ensurethatanybackup,ingest,orotheroperationsscheduledthatmightaffecttheunload
processhavebeenalteredforthedurationoftheunloadexercise.Avoidcontentionfortape
drivesandTSMresourcesbyensuringthatnootheroperationsareactiveatthetimeofrunning
HPU.

Ensurethatyoualwayshavethelatestbackupofthedatabasecatalogreflectinganychanges
availableondisk.UsinganuptodatecatalogreducestheneedforHPUtoaccessthebackup
imageviatape.
Unloaddatafrombackupimagesbyfollowingthesamepatternthatwasusedtocreatethe
backupimages.

Page:13

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

InstallingandconfiguringHPUinanIBMSmartAnalytics
System
HPUishighlyscalableandcanemployallprocessorandnetworkresourcesmadeavailabletounload
dataathighspeeds.AssesstheeffectonyourtestenvironmentbeforeimplementingHPUina
productionenvironment.

ConfigureyouroutputdirectoriestoallowHPUtounloaddatawithasinglecommandin
parallelacrossmultipledatabasepartitions.

InstallingHPUinanIBMSmartAnalyticsSystem
InstallandconfigureHPUoneachnodewhereyouintendtousetheproduct.Avoidcopyingthe
installationpackagetoeachindividualnodebylocatingitontheshared/db2homefilesystem.
Therearenoadditionalinstallationrequirementsoutsidethestandardproductinstallationinstructions.
WheninstalledinaDB2V9.7environment,HPUcanunloaddatafromaDB2v9.5backupimage.

ConfiguringHPUinanIBMSmartAnalyticsSystem
ConfigurationofHPUconsistsofthreetasks:

Creatingandsharingasingleconfigurationfileacrossallnodes

CreatingadirectorystructureforHPUstagingandoutputfiles

Settingconfigurationfileparameters

Creatingandsharingasingleconfigurationfileacrossallnodes
Minimizeadministrationofconfigurationfilesbycreatingasharedconfigurationfileonthe
administrationnodeandmodifyingthelocalconfigurationfileoneachnodetoreferenceit.Tocreatea
singleconfigurationfilethatissharedacrossallnodesonwhichHPUisinstalled:
1. Makeacopyofthedefaultconfigurationfile,customizeitasrequiredandsaveitonafile
systemthatisaccessibleacrossallnodes;/db2homeisrecommended.
2. Addthedir_cfgparametertothedefaultHPUconfigurationfileoneachdatanodewhere
HPUisinstalledtoreferencethesharedHPUconfigurationfile.
3. Makefurthercustomizationstothereferencedconfigurationfileonly.

ConfigureandshareasingleHPUconfigurationfileacrossallnodestoavoidconfusionwhen
operatingHPU.

CreatingadirectorystructureforHPUstagingandoutputfiles
Atableinatablespacethatis100GBinsizerequiresupto100GBofdiskspaceforstagingdata,
Additionaldiskspaceisrequiredforstagingdataifincrementalbackupimagesarereferenced.

Page:14

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

StagingArea
Youcanspecifyonlyonedirectoryforthestagingarea.Itisrecommendedthatyoucreatethesame
directorystructureoneachdatanodetoaccommodatestagingofdata.Wherepossible,locatetheoutput
andstagingdirectoriesforeachnodeonaseparatefilesystemonseparatelogicalunitnumber(LUNs).
Sizethestagingareatoaccommodatethelargesttablespaceinyourdatabaseandalsotakeintoaccount
yourincrementalanddeltabackuppolicy.
OutputArea
ToenableparallelismwhenusingHPU,itisrecommendedthatyoucreateanoutputdirectoryforeach
databasepartition.AppendixAshowshowtousesymboliclinkstosimplifytheuseofHPUwiththe
LOADutility.Sizetheoutputareatoaccommodatethelargesttablespaceinyourdatabase.
OnanIBMSmartAnalyticsSystem,theuseofthe/db2fsfilesystemisnotrecommendedforHPU
outputandstagingareasasitmightcompromisethedatabasecontainers.Theoptionsavailableonan
IBMSmartAnalyticsSystemdependonthemodelinstalled(refertoyourdocumentationforfurther
information):

TheIBMSmartAnalyticsSystem5600canbeconfiguredduringthebuildphasetoassignapre
determinedamountofdiskspacetoa/bkpfs/bculinux/NODE$Nfilesystem.Thisfilesystem
isconfiguredtobeonaseparatelogicalunitnumber(LUN)fromthe/db2fsfilesystem.

TheIBMSmartAnalyticsSystem7700R1.1and7600canbeconfiguredduringthebuildphaseto
assignapredeterminedamountofdiskspacetoa/workNfilesystemwhereNisthedatabase
partitionnumber.Thisspaceisreallocatedfromthe/db2fsfilesystem.

A/stagefilesystemisavailableontheadminnodeandcanbemountedviaNFSorGPFS
acrossthedatanodes.Thistacticissuitableforsmallersystemsonlyastheamountofspaceis
limitedandthenetworktrafficgeneratedinarecoverysituationcouldbeprohibitiveinlarger
environments.

Wherethesystemisalreadyinstalledandspaceisavailable,considerreconfiguringthestorageto
facilitatethecreationofafilesystemforHPUuse.Theconfigurationofthetestsystemuseisoutlinedin
AppendixAandsymboliclinksarerecommendedtoaccommodateamoreelegantsolution.

Settingconfigurationfileparameters
The product configuration file holds default parameter values that are referenced each time the HPU
utilityisused.
Recommendationsapplytotheseparameters:

nbcpu
Determinethenumberofworkthreadstobeinitiatedbyassessingtherecoverytimeobjective
requiredandtheresourcesavailable.Changetheconfigurationparameterasrequiredbefore
runningthedb2hpucommand.

stagedir
Useseparatedirectoriesforthestagingareaandoutputareawheretheloadformattedoutput
filesarewritten.Thestagedirparameterinthedb2hpu.cfgconfigurationfileissetto/tmpby

Page:15

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

default.Changethisentrytoreferenceadirectorythatexistsoneachdatanodeandhasenough
diskspacetoaccommodateyourHPUusagestrategy.

bufsize
Defaultmemoryusageof8MBperdatabasepartitionisrecommendedformost
implementations,whichiscalculatedas4MBforeachHPUbufferpool.Increasingthis
configurationparametervalueincreasestheamountofmemoryreservedbyHPUwithonlya
marginalincreaseinthroughputandisnotrecommended.

maxselects
Determinethenumberoftablestoprocessinparallelbasedontestingandtheamountof
resourcesallocatedtorecovery.

HPUdiskrequirements
Thestagingareamustbesizedtoaccommodatethetemporaryfilescreatedwhendataisunloaded.The
minimumsizeneededforthestagingareadependson:

TheDB2softwareversion.InDB2V9.7theentiretablespaceisstageduptotheHighWaterMark
(HWM)forDMStablespaces.Usethe"ALTER TABLESPACE <TSNAME> REDUCE"command
inDB2V9.7toavoidunnecessarylargeHWMonDMStablespaces.

Thetablespacetype.SMStablespacesdonotrequiretheentiretabletobestaged,stagingis
completewhenalltableinitializationdatahasbeenfound.

Itisrecommendedthatyouallocatespaceequivalenttothesizeofthetablespace.
Whenmultipletablesareunloadedinparallel,theHPUutilityattemptstominimizethenumberoftimes
the backup image is accessed. Additional processing is required for objects including LOB, XML, LONG,
LONGVARCHAR,andLONGVARGRAPHICandisdiscussedinAppendixE.

Page:16

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Conclusion
UseIBMInfoSphereOptimHighPerformanceUnloadasatooltoaddressrecoveryscenarioswhere
traditionalrestoreandrebuildoptionsarenotviable.
ThefollowingrecommendationsshouldbetakenintoaccountwhenusingHPUinyourenvironment:

InstallHPUonlyonthephysicalserverswhereyouintendtorunHPUtounloaddata.

Retainacopyofthemostrecentdatabasecatalogbackupimageondisktohelpincreaserecovery
speedwhenusingHPU.

Useofflinebackupimagesorconsistentonlinebackupimagestohelpensuretheintegrityofthe
dataunloaded.

Chooseyourrecoverymethodbasedonyourresourcepriority:usenamedpipeswherethereis
insufficientdiskspaceonthedatanodes,orunloadtooutputfileswhereprocessorusageis
limited.

UsetheconfigurationandcontrolfileparameterstothrottleHPUusageofprocessorresources.

Avoidcontentionwhenunloadingdatafromtapebyensuringthatthesequenceofdatabase
partitionsreferencedintheunloadblocksmirrorsthebackupsequence.

Unloaddatafrombackupimagesbyfollowingthesamepatternthatwasusedtocreatethe
backupimages.

ConfigureyouroutputdirectoriestoallowHPUtounloaddatawithasinglecommandin
parallelacrossmultipledatabasepartitions.

ConfigureandshareasingleHPUconfigurationfileacrossallnodestoavoidconfusionwhen
operatingHPU.

Page:17

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

AppendixA.Configurationoftestsystemused
ThetestsystemusedforthispaperwasanIBMSmartAnalyticsSystemE7100thatconsistedofthree
servers;anadministrationmoduleandtwodatamodules.Theadministrationmodulehadasingle
databasepartitionthatsupportedthecatalogfunction,thecoordinatorfunctionandnonpartitioned
metadata,staginganddatawarehousetables.Eachdatamodulehadeightdatabasepartitionsthat
containedpartitioneddatawarehousetables.

InfoSphereOptimHighPerformanceUnloadforDB2forLinux,UNIX,andWindowsversion32
bits04.01.003.01(100929)

DB2version:DB2V9.7withFixPack3installed.

AIXversion:6.1.0.0

TwotapedriveswereavailableontheTSMserver.Foronlinetablespacebackups,2databasepartitions
werebackedupatatime;startingwith1and9followedby2and10andcontinuinginthissequence.
Onlinetablesspacebackupswerecoordinatedwiththedataingestapplicationsothatnotransactions
occurredonthetablesduringtheonlinebackup.
StagingArea
Thedirectory/work1/hpu/stagewassetintheconfigurationfile.Symboliclinkswereusedtoensure
thatthisdirectorywasavailableoneachdatanodesothatdatabothunloadedandstagedoneachdata
node.ThestagingareaisatemporaryareaandHPUremovestemporaryfilesoncetheunloadoperation
finished.Theexamplebelowshowsthecommandsusedtocreatethesymboliclinksonthe
administrationnodeandtheseconddatanode.Thefirstdatanodealreadycontainedthedirectories
/work1through/work8.Notethatthesecommandswereusedforalldatabasepartitionsoneachnode.
ln s /work0 /work1
ln s /work9 /work1
mkdir /work1/hpu
mkdir /work1/hpu/stage
OutputArea
The/workNfilesystemwasusedtocontainHPUoutputfileslocaltoeachdatabasepartition.Because
theHPU %{source_node}parameterdenotesadatabasepartitionnumberasNODE0000,symboliclinks
werecreatedtoreferencethe/workNdirectorystructure.Directorieswerecreatedasfollows:
ln s /work1 /work001
mkdir /work1/HPU
ln s /work2 /work002
mkdir /work2/HPU
ln s /work3 /work003
mkdir /work3/HPU

Page:18

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

..
ln s /work9 /work009
mkdir /work9/HPU
ln s /work16 /work016
mkdir /work16/HPU
Tofacilitateparallelloadoftheoutputfilescreatedinthedirectoriesshownabovethefollowingsymbolic
linkswerecreatedontheseconddatanodesothateachdatanodehas/work1through/work8:
ln s /work9 /work1
ln s /work10 /work2
ln s /work11 /work3
..
ln s /work16 /work8
Tofacilitatetheunloadingofdatafrombackupimagesondiskthefollowingdirectorystructurewas
createdtocontainthebackupimages.
mkdir /work1/backup
mkdir /work2/backup
mkdir /work3/backup
..
Thebackupstrategyinplacewastobackupatablespaceononedatabasepartitionpernodeinparallel
untilalldatabasepartitionsonwhichthetablespaceresidedwerebackedup.
TheHPUconfigurationfileonthetestsystemusedwasasfollows:
# HPU default configuration
bufsize=4194304
db2dbdft=TPCDS
db2instance=BCUAIX
doubledelim=binary
netservice=db2hpudm412
#stagedir=/tmp
stagedir=/work1/hpu/stage
nbcpu=8
maxselects=10

Page:19

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

AppendixB.Recoveryscenariocontrolfileexamples
ThescenariosandexamplecontrolfilesinthissectionillustratehowHPUcanformapartofyour
recoverystrategyusingtherecommendationsmadeinthispaper.Theexamplesillustratetherecoveryof
partitionedtablesthroughbackupimagesstoredonTSM.Theseexamplescover:

RecoverdroppedpartitionedtableusingbackupimagesonTSM

Recoverexistingpartitionedtableusingbackupimagesondisk

RecoverdroppedpartitionedtableusingbackupimagesonTSMandnamedpipes

RecoverdroppedtablespaceusingbackupimagesonTSM

RecoverdatausingnonproductionsystemandbackupimagesonTSM

Thebackupstrategyforeachtablespacewastobackuponedatabasepartitionpernodeinparalleluntil
thetablespaceresidedwasbackedup.Intheexamplesbelowthesamesequencewasappliedwhen
unloadingdata.

RecoverdroppedpartitionedtablesusingbackupimagesonTSM
ThisscenariousedHPUtorecovertwopartitionedtables,CUSTOMERandCUSTOMER_DEMOGRAPHICS
fromonlinetablespacebackupimagesstoredonTSM.Thedatawasunloadedtooutputfilesoneach
datanodeandthentheDB2Loadutilitywascalledasaseparatesteptoloadthedataintothetarget
table.
Theoutputlocationondiskforeachdatabasepartitionwasspecifiedas/workN/HPU.Anexcerptfrom
thecontrolfileusedinthisscenariofollows:

-- Global Block specifying backup image on disk where catalog resides


GLOBAL USING BACKUP CATALOG TPCDS FROM "/work0/HPU/catalog_BACKUP"
TAKEN AT 2011033108;
;
-- Unload Block specifies backup image for partitions 1 and 9
UNLOAD TABLESPACE
PART(1,9)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM ON SOURCE
HOST TAKEN AT 20110331080240;
-- Select Blocks specifies customer table and output files
SELECT * FROM BCUAIX.CUSTOMER;
OUTFILE("%{source_host}:/work%{source_node}/HPU/bcuaix.customer.file.%{
source_node}") FORMAT DEL
-- Select Blocks specifies customer_demographics table and output files

Page:20

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

SELECT * FROM BCUAIX.CUSTOMER_DEMOGRAPHICS;


OUTFILE("%{source_host}:/work%{source_node}/HPU/bcuaix.demographics.fil
e.%{source_node}") FORMAT DEL
;
-- Unload Block specifies backup image for partitions 2 and 10
UNLOAD TABLESPACE
PART(2,10)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM ON SOURCE
HOST TAKEN AT 20110331084220;
SELECT * FROM BCUAIX.CUSTOMER;
OUTFILE("%{source_host}:/work%{source_node}/HPU/bcuaix.customer.file.%{
source_node}") FORMAT DEL
SELECT * FROM BCUAIX.CUSTOMER_DEMOGRAPHICS;
OUTFILE("%{source_host}:/work%{source_node}/HPU/bcuaix.demographics.fil
e.%{source_node}") FORMAT DEL
;
-- NB: Repeat sequence for database partitions 3 & 11 and on to 8 & 16.

Thedatawasunloadedinsequenceaccordingtothephysicaltapedrivesavailable.ThefollowingLOAD
commandswereusedtoloadthedatafilescreatedbytheHPUprocessintothetargetpartitionedtablein
parallelwithnonetworktrafficgenerated.Notalldatabasepartitionsareincludedintheexample:
db2 "LOAD from bcuaix.customer.file OF DEL INSERT
INTO BCUAIX.CUSTOMER PARTITIONED DB CONFIG MODE
LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION /work1/HPU
OUTPUT_DBPARTNUMS(1,9)"

db2 "LOAD from bcuaix.customer.file OF DEL INSERT


INTO BCUAIX.CUSTOMER PARTITIONED DB CONFIG MODE
LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION /work2/HPU
OUTPUT_DBPARTNUMS(2,10)"
-- Issue LOAD commands for all database partitions to be recovered

db2 "LOAD from bcuaix.demographics.file OF DEL INSERT INTO


bcuaix.customer_demographics PARTITIONED DB CONFIG MODE
LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION /work1/HPU
OUTPUT_DBPARTNUMS(1,9)"

db2 "LOAD from bcuaix.demographics.file OF DEL INSERT INTO


bcuaix.customer_demographics PARTITIONED DB CONFIG MODE
LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION /work2/HPU
OUTPUT_DBPARTNUMS(2,10)"
-- Issue LOAD commands for all database partitions to be recovered

Page:21

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

UsetheLOAD_ONLY_VERIFY_PARTmodeinsteadofLOAD_ONLYmodeasHPUdoesnotgenerate
theheaderswithpartitionnumber,partitionmap,andpartitioningkeycolumnswhichLOAD_ONLY
moderequires.TheappropriateheadersweregeneratedonlyforHPUrepartitioningandHPUmigration.

Recoverexistingpartitionedtablesusingbackupimagesondisk
ThisscenariousedHPUtorecoverapartitionedtablefromonlinetablespacebackupimagesstoredon
disk.Thisscenarioapplieswherethetableexistsinthedatabasebutthecontentshavebeencompromised
orcorruptionhasoccurred.
Theunloadblockspecifiedeachpathwherebackupimagesfilesexist.Becausethetabletoberecovered
existedinthedatabase,thedatabasecatalogisreferencedintheglobalcontrolblockratherthanacatalog
associatedwithabackupimage.Thisactionreducedthenumberofbackupimagestobereadand
thereforeincreasedthespeedoftheHPUoperation.Thecontrolfileusedinthisscenariowas:
-- Global Block uses local database catalog
GLOBAL CONNECT TO TPCDS;
-- Unload Block specifies backup images for partitions 1 - 16
UNLOAD TABLESPACE
PART(1:16)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") FROM
"/work1/backup","/work2/backup","/work3/backup","/work4/backup",
"/work5/backup","/work6/backup","/work7/backup","/work8/backup"
ON SOURCE HOST TAKEN AT 2011033108;
-- Select Blocks specifies customer table and output files
SELECT * FROM BCUAIX.CUSTOMER;
OUTFILE("%{source_host}:/work%{source_node}/HPU/bcuaix.customer.file.%{
source_node}") FORMAT DEL
;
TheLOADcommandissued:
db2 "LOAD from bcuaix.customer.file OF DEL INSERT INTO BCUAIX.CUSTOMER
PARTITIONED DB CONFIG MODE LOAD_ONLY_VERIFY_PART
PART_FILE_LOCATION /work1/HPU OUTPUT_DBPARTNUMS(1,9)"
db2 "LOAD from bcuaix.customer.file OF DEL INSERT INTO BCUAIX.CUSTOMER
PARTITIONED DB CONFIG MODE LOAD_ONLY_VERIFY_PART
PART_FILE_LOCATION /work2/HPU OUTPUT_DBPARTNUMS(2,10)"
-- Issue LOAD commands for all database partitions to be recovered

Page:22

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

RecoverdroppedpartitionedtableusingbackupimagesonTSMand
namedpipes
ThisscenariousedHPUtorecoverpartitionedtablesfromonlinetablespacebackupimagesstoredon
TSMand,byusingnamedpipes,simultaneouslyloadedthedataintothetargetdatabasetable.
ThefollowingcontrolfilewascreatedtouseinunloadingthetablefrombackupimagesonTSMfor
databasepartitions1and9whichwerethefirstdatabasepartitionsoneachdatanodeinthetest
environment.Asthetablehadbeendroppedontheproductiondatabasethecatalogonthecatalog
backupimagewasreferenced.
1. Thecontrolfilewascreated.Eachunloadblockprocessedtwodatabasepartitions.Thefollowing
exampleshowsthefirsttwounloadblocksfordatabasepartitions1,9and2,10.Thepattern
continueduntilalldatabasepartitionswereprocessed.

-- Global block uses backup image of catalog on disk


GLOBAL USING BACKUP CATALOG TPCDS FROM "/work0/HPU/catalog_BACKUP"
TAKEN AT 2011033108;
;
-- 1,9 specifies partitions 1 and 9
UNLOAD TABLESPACE PART(1,9)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM ON SOURCE
HOST TAKEN AT 20110331080240;
SELECT * FROM BCUAIX.CUSTOMER;
OUTFILE("%{source_host}:/work%{source_node}/HPU/pipe.%{source_node}")
FORMAT DEL
;
-- 2,10 specifies partitions 2 and 10 (continues to 8 and 16)
UNLOAD TABLESPACE PART(2,10)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM ON SOURCE
HOST TAKEN AT 20110331084220;
SELECT * FROM BCUAIX.CUSTOMER;
OUTFILE("%{source_host}:/work%{source_node}/HPU/pipe.%{source_node}")
FORMAT DEL
;
2. Thenamedpipeswerecreatedoneachdatanodeasspecifiedinthecontrolfile.Thenamesin
thisexamplehavetheformat:/workN/HPU/pipe.XXXwhereXXXistheappropriatedatabase
logicalnodenumber.
Thenamedpipeswerecreatedforthedatabasepartitionstobeprocessedbytheunloadblockin
thecontrolfile.Thecommandsusedtocreatethenamedpipesinthetestenvironmentare
illustratedasfollows:

Page:23

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

-- Data Node 1
mkfifo /work1/HPU/pipe.001
mkfifo /work2/HPU/pipe.002
mkfifo /work3/HPU/pipe.003
mkfifo /work4/HPU/pipe.004
mkfifo /work5/HPU/pipe.005
mkfifo /work6/HPU/pipe.006
mkfifo /work7/HPU/pipe.007
mkfifo /work8/HPU/pipe.008
-- Data Node 2 (Symbolic links for /work1 to /work8 created)
mkfifo /work1/HPU/pipe.009
mkfifo /work2/HPU/pipe.010
mkfifo /work3/HPU/pipe.011
mkfifo /work4/HPU/pipe.012
mkfifo /work5/HPU/pipe.013
mkfifo /work6/HPU/pipe.014
mkfifo /work7/HPU/pipe.015
mkfifo /work8/HPU/pipe.016

3.

TheHPUcommandspecifyingtherequiredcontrolfilewasexecuted:
db2hpu -f CUSTOMER_disk_pipes.ctl

4.

DB2Loadoperationwasstarted:
db2 "LOAD from pipe OF DEL INSERT INTO BCUAIX.CUSTOMER PARTITIONED DB
CONFIG MODE LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION /work1/HPU
OUTPUT_DBPARTNUMS(1,9)"
db2 "LOAD from pipe OF DEL INSERT INTO BCUAIX.CUSTOMER PARTITIONED DB
CONFIG MODE LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION /work2/HPU
OUTPUT_DBPARTNUMS(2,10)"
-- Issue LOAD commands for all database partitions to be recovered

Page:24

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

RecoverdroppedtablespaceusingbackupimagesonTSM
ThisscenariousedHPUtorecoverallthetablesinatablespacefrombackupimagesonTSM.Thetarget
tablesdidnothavetousethesametablespacename.
ThefollowingcontrolfileunloadsallthetablesinthetablespaceHASHTS.ItalsoinstructstheHPU
processtousetablespacebackupimages.TheUSING BACKUP CATALOGkeywordisneededasinthis
scenariothetablespacewasdroppedandsonotvisibleinthedatabasecataloganymore.
-- Global Block
GLOBAL USING BACKUP CATALOG TPCDS FROM "/work0/HPU/catalog_BACKUP"
TAKEN AT 20111117094257;
;
-- Unload Block 1,9
UNLOAD TABLESPACE HASHTS PART(1,9)
OUTFILE("%{source_host}:/work%{source_node}/HPU/file.%{source_node}")
FORMAT DEL
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM ON SOURCE
HOST TAKEN AT 20111117105244;
;

-- Unload Block (2,10)


UNLOAD TABLESPACE HASHTS PART(2,10)
OUTFILE("%{source_host}:/work%{source_node}/HPU/file.%{source_node}")
FORMAT DEL
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM ON SOURCE
HOST TAKEN AT 20111117105244;
;
-- continue process for other database partitions

Page:25

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

RecoverdatausingnonproductionsystemandbackupimagesonTSM
Inthisscenario,thecontentsofacolumninaproductiontablehadbeencompromised.Backupimagesof
theproductiondatabasewerelocatedontheTSMserver.Anonproductionsystemwasusedtorecover
andpreparethedatabeforeitwasreappliedtotheproductionsystem.
Theproductionenvironmentcontainedtwodatanodesandatotalof16databasepartitions.Thenon
productionsystemcontainedonedatanodeandeightdatabasepartitions.Thereweretwotapedrives
available.
HPUwasinstalledandconfiguredonthenonproductionsystemonlyandthenonproductionsystem
wasconfiguredtouseTSM.Acopyofthebackupimageforthecatalogpartitionontheproduction
systemwasmadeavailableonthenonproductionsystem.Becauseonlyasinglecolumnwas
compromised,HPUwasusedtounloadjusttheprimarykeyandthecontentsoftheaffectedcolumn.
Thecontrolfileforthisscenariounloadeddatafromeachbackupimageinsequence.TheTSMNODE
parameterinthecontrolfilewasusedtoidentifythecorrectTSMnodewherethebackupimagefile
exists.
TheTARGETENVIRONMENTandTARGETKEYScontrolfileparametersdirectoutputdataforeach
targetdatabasepartitiontoaseparatefile.TheTARGETENVIRONMENTparametervaluespecifiesthe
instancename,databasename,andtheservernamewherethedatabasecatalogresidesonthenon
productionsystem.TheTARGETKEYSparametervaluespecifiesthedatabasepartitionsonwhichthe
tableexistsinthenonproductionsystem.
Eachdatanodeonthenonproductionsystemused/workN/HPUdirectoryfortheoutputfiles.The
APPENDparameterintheOUTFILEclauseensuredthateachsubsequentunloadblockdidnotoverwrite
theoutputdatafilealreadycreated.
-- Global Block specifying catalog partition backup image on disk
GLOBAL USING BACKUP CATALOG TPCDS from "/work0/HPU/catalog_BACKUP"
TAKEN AT 2011033108;
;
-- Unload Block specifies backup image for database partition 1 and 2 -- from TSMNODE tsm_datanode1
UNLOAD TABLESPACE
PART(1,2)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM TSMNODE
"tsm_datanode1" TAKEN AT 2011033109;
-- Select Blocks specifies customer table and output files
SELECT * FROM BCUAIX.CUSTOMER;
TARGET ENVIRONMENT (INSTANCE "bcuaix" ON "perfbwadm_test" IN TPCDS)
TARGET KEYS(CURRENT PARTS(1:8))
OUTFILE

Page:26

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

("%{target_host}:/work%{target_node}/HPU/BCUAIX.CUSTOMER.file.%{target_
node}") FORMAT DEL
;
-- Unload Block specifies backup image for database partitions 9 and 10
-- from TSMNODE tsm_datanode2
UNLOAD TABLESPACE
PART(9,10)
USING BACKUP DATABASE TPCDS TABLESPACE ("HASHTS") USE TSM TSMNODE
"tsm_datanode2" TAKEN AT 2011033109;
-- Select Blocks specifies customer table and output files
SELECT * FROM BCUAIX.CUSTOMER;
TARGET ENVIRONMENT (INSTANCE "bcuaix" ON "perfbwadm_test" IN TPCDS)
TARGET KEYS(CURRENT PARTS(1:8))
OUTFILE
("%{target_host}:/work%{target_node}/HPU/BCUAIX.CUSTOMER.file.%{target_
node}" APPEND) FORMAT DEL
;
Datawasloadedintononproductionsystem:
db2 "LOAD from BCUAIX.CUSTOMER.file OF DEL INSERT INTO BCUAIX.CUSTOMER
PARTITIONED DB CONFIG MODE LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION
/work1/HPU OUTPUT_DBPARTNUMS(1)"

db2 "LOAD from BCUAIX.CUSTOMER.file OF DEL INSERT INTO BCUAIX.CUSTOMER


PARTITIONED DB CONFIG MODE LOAD_ONLY_VERIFY_PART PART_FILE_LOCATION
/work2/HPU OUTPUT_DBPARTNUMS(2)"
-- Issue LOAD commands for all database partitions to be recovered
Datawasunloadedfromnonproductionsystemtofilesinpreparationfortransfertotheproduction
system.Onlythecolumntoberecoveredisspecifiedintheselectblock.
GLOBAL CONNECT TO TPCDS;
UNLOAD TABLESPACE
PART(1:8)
select customer_address_id,ca_zip FROM BCUAIX.CUSTOMER where ca_zip
like 'NA%4';
OUTFILE("/work1/HPU/customer_recovered_data.csv") FORMAT DEL
;
Thedatawasappliedtotheproductionsystembyfirstbeingloadedintoatemporarytableandthen
appliedtothetargettablethroughanUPDATEstatement.

Page:27

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

AppendixC.LOBandXMLobjects
HPUsupportsLargeObjects(LOB)andXMLdatathroughanintermediatestepintheunload/load
process.
IfthetableislocatedinanSMStablespace,thedatafilescontainingtheexternalizeddata(LOBandXML
orboth)areentirelystagedwhilereadingthebackupafirsttime.Thebackupisreadasecondtimebythe
HPUoperationtoprocessthemaindatapagesofthetable,containingreferencestoLOBandXMLor
bothdatastorage.Duringthissecondpass,thismaindatafilecanbepartiallystaged,untiltheinternal
recordsdescribingthetablehavebeenfound.
IfthetableislocatedinaDMStablespace,themaindataandtheexternalizedonesareentirelystaged
whilereadingthebackup.Thisactioncanresultinseveraltablespacesbeingstaged,iftheLOBorXML
dataisstoredinaseparatetablespace.Theunloadprocedureisstartedagainstthestagedfiles.

Page:28

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Furtherreading
VisitthebestpracticespageondeveloperWorksforpapersonphysicaldatabasedesign,datalifecycle
management,databasebackup,compression,andmanyothertopics:
http://www.ibm.com/developerworks/data/bestpractices/
Refertothefollowinglinksforadditionalinformationabouttopicsdiscussedinthispaper:

IBMInfoSphereOptimHighPerformanceUnload
http://www01.ibm.com/software/data/optim/highperformanceunloaddb2luw/

DB2LoadUtility
http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.admin.
dm.doc/doc/c0004616.html

BuildingarecoverystrategyforanIBMSmartAnalyticsSystemDataWarehouse
http://www.ibm.com/developerworks/data/bestpractices/isasrecovery/index.html

Traditionaldroppedtablerecoverymethod

(http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.admin
.ha.doc/doc/t0006318.htmlFirefoxHTML\Shell\Open\Command

Contributors
AliceMa
ClientTechnicalProfessional,EnterpriseContentManagement,IBM
AustinClifford
DB2DataWarehouseQASpecialist,IBM
BillMinor
InformationManagementTooling&Development,IBM
DaleMcInnis
DB2AvailabilityArchitect&SeniorTechnicalStaffMember,IBM
JaimeBotellaOrdinas
ITSpecialist&AcceleratedValueLeader,SoftwareGroup,IBM
VincentArrat
HPUDevelopmentTeam

Page:29

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

Notices
This information was developed for products and services offered in the U.S.A.
IBM may not offer the products, services, or features discussed in this document in other
countries. Consult your local IBM representative for information on the products and services
currently available in your area. Any reference to an IBM product, program, or service is not
intended to state or imply that only that IBM product, program, or service may be used. Any
functionally equivalent product, program, or service that does not infringe any IBM
intellectual property right may be used instead. However, it is the user's responsibility to
evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in
this document. The furnishing of this document does not grant you any license to these
patents. You can send license inquiries, in writing, to:
IBM Director of Licensing

IBM Corporation

North Castle Drive

Armonk, NY 10504-1785

U.S.A.
The following paragraph does not apply to the United Kingdom or any other country where
such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES
CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON
INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do
not allow disclaimer of express or implied warranties in certain transactions, therefore, this
statement may not apply to you.
Without limiting the above disclaimers, IBM provides no representations or warranties
regarding the accuracy, reliability or serviceability of any information or recommendations
provided in this publication, or with respect to any results that may be obtained by the use of
the information or observance of any recommendations provided herein. The information
contained in this document has not been submitted to any formal IBM test and is distributed
AS IS. The use of this information or the implementation of any recommendations or
techniques herein is a customer responsibility and depends on the customers ability to
evaluate and integrate them into the customers operational environment. While each item
may have been reviewed by IBM for accuracy in a specific situation, there is no guarantee
that the same or similar results will be obtained elsewhere. Anyone attempting to adapt
these techniques to their own environment do so at their own risk.
This document and the information contained herein may be used solely in connection with
the IBM products discussed in this document.
This information could include technical inaccuracies or typographical errors. Changes are
periodically made to the information herein; these changes will be incorporated in new

Page:30

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

editions of the publication. IBM may make improvements and/or changes in the product(s)
and/or the program(s) described in this publication at any time without notice.
Any references in this information to non-IBM Web sites are provided for convenience only
and do not in any manner serve as an endorsement of those Web sites. The materials at
those Web sites are not part of the materials for this IBM product and use of those Web sites is
at your own risk.
IBM may use or distribute any of the information you supply in any way it believes
appropriate without incurring any obligation to you.
Any performance data contained herein was determined in a controlled environment.
Therefore, the results obtained in other operating environments may vary significantly. Some
measurements may have been made on development-level systems and there is no
guarantee that these measurements will be the same on generally available systems.
Furthermore, some measurements may have been estimated through extrapolation. Actual
results may vary. Users of this document should verify the applicable data for their specific
environment.
Information concerning non-IBM products was obtained from the suppliers of those products,
their published announcements or other publicly available sources. IBM has not tested those
products and cannot confirm the accuracy of performance, compatibility or any other
claims related to non-IBM products. Questions on the capabilities of non-IBM products should
be addressed to the suppliers of those products.
All statements regarding IBM's future direction or intent are subject to change or withdrawal
without notice, and represent goals and objectives only.
This information contains examples of data and reports used in daily business operations. To
illustrate them as completely as possible, the examples include the names of individuals,
companies, brands, and products. All of these names are fictitious and any similarity to the
names and addresses used by an actual business enterprise is entirely coincidental.
COPYRIGHT LICENSE:
This information contains sample application programs in source language, which illustrate
programming techniques on various operating platforms. You may copy, modify, and
distribute these sample programs in any form without payment to IBM, for the purposes of
developing, using, marketing or distributing application programs conforming to the
application programming interface for the operating platform for which the sample
programs are written. These examples have not been thoroughly tested under all conditions.
IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these
programs.

Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International
Business Machines Corporation in the United States, other countries, or both. If these and

Page:31

HPUaspartofarecoverystrategyinanIBMSmartAnalyticsSystem

other IBM trademarked terms are marked on their first occurrence in this information with a
trademark symbol ( or ), these symbols indicate U.S. registered or common law
trademarks owned by IBM at the time this information was published. Such trademarks may
also be registered or common law trademarks in other countries. A current list of IBM
trademarks is available on the Web at Copyright and trademark information at
www.ibm.com/legal/copytrade.shtml
UNIX is a registered trademark of The Open Group in the United States and other countries.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.

Page:32

You might also like