Example: barber

IBM DB2 Utility Update - Best Practices

Bryan F. SmithIBMM onday, August 13, 2007 Session 1302 IBM DB2 Utility Update : best Practices2 Abstract This presentation reviews the features of the DB2 Version 8 for z/OS Utilities, discusses the features of DB2 9 for z/OS Utilities, including the use of the System z9 Integrated Information Processor (IBM zIIP), reviews a set of performance, availability, and usability best Practices when using the Utility suite, and previews the futures of the IBM DB2 Utilities. Upon completion of this session, the attendee, whose skill level may range from low to high, will be able to identify new Utility functions and apply them in their DB2 V8 for z/OS Utilities IBM s Unload Products best Practices A scenario of best Practices zIIP (IBM System z9 Integrated Information Processor) DB2 9 for z/OS Utilities DB2 Utilities futures4DB2 V8 for z/OS Utilities5 Version 8 (1 of 3) New utilities BACKUP SYSTEM and RESTORE SYSTEM Delimited data support for LOAD and UNLOAD New

2 Abstract • This presentation reviews the features of the DB2 Version 8 for z/OS Utilities, discusses the features of DB2 9 for z/OS Utilities,

Tags:

  Utility, Practices, Update, Best, Db2 utility update best practices

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of IBM DB2 Utility Update - Best Practices

1 Bryan F. SmithIBMM onday, August 13, 2007 Session 1302 IBM DB2 Utility Update : best Practices2 Abstract This presentation reviews the features of the DB2 Version 8 for z/OS Utilities, discusses the features of DB2 9 for z/OS Utilities, including the use of the System z9 Integrated Information Processor (IBM zIIP), reviews a set of performance, availability, and usability best Practices when using the Utility suite, and previews the futures of the IBM DB2 Utilities. Upon completion of this session, the attendee, whose skill level may range from low to high, will be able to identify new Utility functions and apply them in their DB2 V8 for z/OS Utilities IBM s Unload Products best Practices A scenario of best Practices zIIP (IBM System z9 Integrated Information Processor) DB2 9 for z/OS Utilities DB2 Utilities futures4DB2 V8 for z/OS Utilities5 Version 8 (1 of 3)

2 New utilities BACKUP SYSTEM and RESTORE SYSTEM Delimited data support for LOAD and UNLOAD New defaults for better "out of the box" performance SORTKEYS for LOAD/REORG/REBUILD SORTDATA for REORG SORTDATA now allowed for 32K records with DFSORT APAR PK18059 allows SORTDATA NO REORG SHRLEVEL NONE/REFERENCE REBALANCE"Smith, Bob",4973, "Jones, Bill",12345, "Williams, Sam",452, P1 P2 P3 .. P6 P71111 3333 5555 .. 8888 9999 P1 P2 P3 .. P6 P71125 2845 5367 .. 7934 9999 6 Version 8 (2 of 3) Non-uniform statistics on non-indexed columns Current technique is separate DSTATS program Significant performance improvements possible Collected with the FREQVAL keyword on a specified group of columns (COLGROUP) HISTORY statistics without updating main statistics -- Update NONE HISTORY ALL REORG SHRLEVEL CHANGE allow DISCARD REORG SHRLEVEL REFERENCE catalog tables with links Online Concurrent Copy support for 32K pages 0204060801001stQtr2ndQtr3rdQtr4thQtrEast NorthEastWestNorth7 Version 8 (3 of 3)

3 DFSORT V8 removes the pre-req for an external sort product Utilities only use the DFSORT package: SORT, MERGE functions only Aim to improve reliability and performance DFSORT code is part of a standard z/OS install DB2 Utilities Suite has a licensed API to use DFSORT Must have access to R14 DFSORT or V1R5 DFSORT (or higher) plus APAR PQ68263 applied If your primary sort product is not DFSORT, then informational APAR II14047 (periodically updated) is mandatory Post GA CHECK INDEX SHRLEVEL CHANGE APARs PQ92749 (DB2 base) and PQ96956 ( Utility Suite) (PTF avail for V8) Cross Loader support for > 32K LOBs APAR PQ90263 (PTFs avail for V7/V8) LOB Handling for LOAD/UNLOAD using File Reference Variables APAR PK22910 (PTFs avail for V7/V8)

4 Automatically display CLAIMERS when REORG receives resource unavailable APAR PK00213 (PTFs avail for V7/V8) zIIP-enablement for index maintenance See InfoAPAR II14219 (PTFs avail for V8) LOAD via BATCHPIPE APAR PK34251 and z/OS APAR PK37032 (PTF avail for V8) Switch to UTRW during UTILTERM for REORG SHRLEVEL CHANGE APAR PK34441 (PTF avail for V8) Reduce switch phase time on table space with COPY NO indexes APAR PK35390 (PTFs avail for V7/V8)Covered in subsequent slides9 CHECK INDEX SHRLEVEL CHANGE Current CHECK INDEX causes data and indexes are unavailable for Update for the duration CHECK INDEX SHR CHG different design than REORG SHR CHG Claim as reader for target data and indexes Create shadow datasets Same dataset naming convention as REORG SHR CHG Cannot run CHECK INDEX SHR CHG on two logical parts of NPI Drain writers for target data and indexes Copy datasets with DFSMSdss ADRDSSU with FCNOCOPY to shadows Uses dataset-level FlashCopy2 if available Else, traditional media copy still smaller r/o outage than SHR REF After logical complete for datasets.

5 Dedrain target data and indexes Run parallel check index on shadow data and indexes Same parallel design as REBUILD INDEX At utilterm delete shadow datasets when DB2 managed10 Checking all indexes in parallelFast replication: Flashcopy/SnapshotUNLOADSORTCHKTS Part 1IX1 Part 1IX1 Part 2IX1 Part 3IX2 NPIIX3 NPIIX3 NPIIX2 NPIUTILINITIX1 Part 1IX1 Part 2IX1 Part 3 ShadowsTS Part 2TS Part 3 SORTTS Part 1TS Part 2TS Part 311 Cross Loader for >32K rows with LOBs Architectural limits within LOAD/UNLOAD did not allow for a record greater than 32K to be loaded or unloaded New buffering scheme for LOB values to bypass the 32K limit Will be constrained by region size Cross Load of 2GB LOBs will still not be possible Cross Loader will also allow for conversion between CLOBs and DBCLOBs (not currently supported when loaded from file)

6 12 LOB Handling in LOAD/UNLOADw/FRVs Requirement is to move LOBs from one z/OS system to another z/OSsystem Need to support millions of rows Typical LOB sizes are 25K, 200K, 1MB Need to allow user to limit LOAD at target with WHEN clause LOB column values will be stored as separate PDS member, PDS/E member, or HFS directory member. LOB column values from each row will have identical member namesin each PDS, PDS/E, or HFS Data set name stored in output record Design fits well with File Reference Variables where LOB values are in individual datasets13 LOB Handling in LOAD/UNLOADw/FRVs LOAD is changed to allow an input field value to contain the name of file containing a LOB column value.

7 The LOB is loaded from that DD *"000001"," (AI3WX3JT)"," (AI3WX3JT)""000002"," (AI3WX5BS)"," (AI3WX5BS)""000003"," (AI3WX5CC)"," (AI3WX5CC)""000004"," (AI3WX5CK)"," (AI3WX5CK)"LOAD DATA FORMAT DELIMITEDINTO TABLE MY_EMP_PHOTO_RESUME (EMPNOCHAR, RESUMEVARCHAR CLOBF,PHOTOVARCHAR BLOBF)new syntax14 LOB Handling in LOAD/UNLOADw/FRVs UNLOAD is changed to store the value of a LOB column in a file and record the name of the file in the unloaded record of the base LOBFRV1 DSN DSNTYPE(PDS)UNIT(SYSDA)TEMPLATE LOBFRV2 DSN DSNTYPE(PDS)UNIT(SYSDA)UNLOAD DATAFROM TABLE (EMPNO CHAR(6),RESUME VARCHAR(255) CLOBFLOBFRV1,PHOTO VARCHAR(255) BLOBFLOBFRV2) DELIMITEDO utput:"000001"," (AI3WX3JT)"," (AI3WX3JT)""000002"," (AI3WX5BS)"," (AI3WX5BS)""000003"," (AI3WX5CC)"," (AI3WX5CC)""000004"," (AI3WX5CK)"," (AI3WX5CK).

8 Creates PDS with member for each LOBnew syntax15 Display CLAIMERS when REORG receives RNA Before AfterDSNUGUTC - REORG TABLESPACE COPYDDN(SYSCOPY) SHRLEVEL CHANGE STATISTICSDSNUGBAC - RESOURCE UNAVAILABLEREASON 00C200 EATYPE 00000200 NAME - REORG TABLESPACE COPYDDN(SYSCOPY) SHRLEVEL NONE STATISTICS) **) * DISPLAY DATABASE SUMMARY* GLOBAL CLAIMERS) **..NAME TYPE PART STATUS CONNID CORRID CLAIMINFO-------- ---- ----- ----------------- -------- ------------ --------TS1 TS RW,UTRO BATCH CAPP (WR,C)- AGENT TOKEN 10- MEMBER NAME V91 ATS1 TS RW,UTRO BATCH CAPP (RR,C)- AGENT TOKEN 10- MEMBER NAME V91A** DISPLAY OF DATABASE DB1 ENDED **) DSNTDDIS 'DISPLAY DATABASE' NORMAL COMPLETIONDSNUGBAC - RESOURCE UNAVAILABLEREASON 00C200 EATYPE 00000200 NAME via Batchpipes, or MVS USS pipe Can be used locally by specifying pipe on TEMPLATE.

9 Or remotely:Look for article on this in the next IDUG Solutions Journal!AIX, Linux, Windows, p, x, i, tableSystem zCALL systemFileSource fileApplicationReadReadTransfer data via ftpBatchPipesorUSS pipeLOAD Utility with TEMPLATE option SUBSYS17 IBM s Unload Products18 IBM s Unload Products Two products from IBM DB2 UNLOAD Utility (in the IBM DB2 Utilities Suite) DB2 High Performance Unload (HPU) Utility HPU was delivered before the UNLOAD Utility had this not been the case, we would never have used the words High Performance In elapsed time, both are comparable (sometimes UNLOAD is faster, sometimes HPU is faster) In CPU time, HPU consumes approximately half the CPU in many situations (but not always)

10 It s OK (and we have client examples) to have both and use both UNLOAD is geared towards user of DB2 Utilities (Utilities interface) HPU is geared towards application developers (SQL interface) Don t expect significant new functions in the UNLOAD Utility beyond supporting DB2 functionality19 best Practices20 COPY/RECOVER/QUIESCEBest Practices COPY PARALLEL keyword provides parallelism for lists of objects (including partitions) CHECKPAGE YES Incremental copy rule-of-thumb: Consider using incremental image copy if <5% of pages are randomly updated (typically means less than 1% of rows updated) <80% of pages are sequentially updated Incremental image copies use list prefetch, so monitor for rid list pool full conditions Copy indexes on your most critical tables to speed up recovery (NPIs only?)


Related search queries