MainframeSupports
tip uge 45/2001:

Jeg deltog for nylig i IDUG's european conference. Her gjorde IBM opmærksom på, at brugen af option SORTKEYS på LOAD og REORG ikke er ret udbredt. Derudover har jeg selv konstateret, at brugen af options SORTDEVT og SORTNUM absolut heller ikke er særlig udbredt. Det vil jeg derfor nu råde bod på.

Option SORTKEYS kom til i DB2 version 5 og bevirker, at opbygningen af indexes foretages parallelt, samt at sorteringer så vidt muligt foretages i storage. Det betyder kort og godt meget kortere elapse tid. Paralleliteten udnyttes først, når der er mere end et index tilknyttet det tablespace, der loades eller reorganiseres.

SORTKEYS accepterer en integer som parameter. Man kan eksempelvis skrive SORTKEYS 5. I kapitlet om LOAD i Utility Guide and Reference er det nærmere beskrevet, hvordan denne parameter skal beregnes. Formlen er i mine øjne alt for kompliceret, så jeg nøjes generelt med at anvende SORTKEYS uden parametre. SORTKEYS med parameter er i øvrigt kun nødvendigt på LOAD, hvis man gerne vil udnytte paralleliteten. REORG vil altid opbygge parallelt.

Option SORTDEVT gør, at man ikke behøver at allokere sortwork datasets i JCL'en. Det synes jeg er en kæmpe fordel og giver langt mere overskuelige jobs. Desuden giver det utilitien mulighed for selv at estimere og allokere sortwork datasets. SORTDEVT skal have et UNIT-navn som parameter, og her kan man næsten altid benytte SYSDA. Mange installationer har dog særlige UNIT-navne netop til work datasets, så find ud af, hvad dette UNIT-navn hedder og brug det i stedet. Endnu en fordel ved SORTDEVT er, at man automatisk får parallelitet ved opbygning af indexerne sammen med SORTKEYS. Hvis man allokerer sortwork datasettene i JCL'en skal man benytte DD-navne med syntaksen //SWnnWKmm for at udnytte paralleliteten. Det betyder, at hvis man bruger SORTKEYS sammen med //SORTWKnn, så får man ingen parallel opbygning af indexes.

Option SORTNUM har kun mening sammen med SORTDEVT og angiver, hvor mange sortwork datasets, der skal allokeres. Eksempelvis betyder SORTNUM 6, at der allokeres 6 sortwork datasets til sortering. Jeg vil ikke anbefale brugen af SORTNUM sammen med SORTKEYS, men nøjes med at angive SORTDEVT. Så vil LOAD/REORG selv allokere det mest fornuftige antal sortwork datasets.

Forrige danske tip        Last tip in english        Tip oversigten