IMS DB SECONDARY INDEXING

Sekundær indeksering brukes når vi ønsker å få tilgang til en database uten å bruke komplett sammensatt nøkkel eller når vi ikke ønsker å bruke sekvens primære felt.

Index Pointer Segment
< p> DL /I lagrer pekeren til segmenter av indeksert database i en egen database. Indeksen peker segment er den eneste typen sekundær indeks. Den består av to deler:

Prefix Element

Data Element

Prefix Element

Prefikset delen av indeksen peker segmentet inneholder en peker til Index Target Segment. Index målet segmentet er det segmentet som er tilgjengelig ved hjelp av sekundær indeksen.

Data Element

dataelement inneholder nøkkelen verdien fra segmentet i indeksert database over hvilke indeksen er bygget. . Dette er også kjent som indeksen kilde segmentet

Her er de viktigste punktene å merke om Sekundær Indeksering:

Indeksen kilde segmentet og målkilden segmentet trenger ikke være det samme .

Når vi setter opp en sekundær indeks, blir den automatisk vedlikeholdt av DL /I.

Den DBA definerer mange sekundære indekser som per flere tilgangsbaner. Disse sekundære indekser lagres i en egen indeks database.

  • Vi skal ikke lage mer sekundære indekser, som de innføre mer prosessorytelse på DL /I.


    Sekundære Keys

    Viktige punkter:.

    Den feltet i indeksen kilde segmentet over hvilke sekundærindeksen er bygget kalles som sekundær nøkkel


    Alle felt kan brukes som en sekundær nøkkel. Det trenger ikke være den segmenter sekvens feltet.

  • Sekundære nøkler kan være en hvilken som helst kombinasjon av enkelt felt innenfor indeksen kilde segmentet.

  • Sekundær nøkkelen verdier trenger ikke å være unikt

    Sekundære datastrukturer

    punkter å merke seg:.

    Når vi bygger en sekundær indeks, tilsynelatende hierarkisk struktur av databasen er også endret.

    Indeksen målsegmentet blir den tilsynelatende root segmentet. Som vist i følgende bilde, blir Engineering segmentet roten segmentet, selv om det ikke er en rot segment.

  • Den omorganisering av databasestrukturen forårsaket av sekundær-indeksen er kjent som sekundærdatastruktur.

    Sekundære datastrukturer ikke gjør noen endringer i hoved fysisk databasestrukturen på disken. Det er bare en måte å endre database struktur foran applikasjonen

    Independent og operatør

    Viktige punkter:.

  • Når en AND (* eller &) operatør brukes med sekundære indekser, er det kjent som en avhengig og operatør.

    En uavhengig AND (#) tillater oss å angi kvalifikasjoner som ville være umulig med en avhengig AND.

    Denne operatøren kan brukes kun for sekundære indekser hvor indeksen kilde segmentet er avhengig indeksen målet segmentet.

    Vi kan kode en SSA med en selvstendig og å spesifisere at en forekomst av målet segmentet bli behandlet basert på feltene i to eller flere avhengige kilde segmenter.
    01 SAK-VALG-SSA . 05 FILLER PIC X (8). 05 FILLER PIC X (1) VERDI '('. 05 FILLER PIC X (10). 05 SSA-KEY-en PIC X (8). 05 FILLER PIC X VERDI '#'. 05 FILLER PIC X (10). 05 SSA-KEY-2 PIC X (8). 05 FILLER PIC X VERDI ')'.
    Sparse Sequencing

    Viktige punkter:

    Sparse sekvensering er også kjent som Sparse indeksering. Vi kan fjerne noen av indeksen kilde segmenter fra indeksen bruker sparsom sekvensering med sekundær indeks database.

  • Sparse sekvensering brukes for å forbedre ytelsen. Når noen forekomster av indeksen kilde segmentet ikke blir brukt, kan vi fjerne det.

  • DL /jeg bruker en undertrykkelse verdi eller en undertrykkelse rutine eller begge deler for å avgjøre om et segment skal indekseres .

    Hvis verdien av en sekvens felt i indeksen kilde segmentet samsvarer med en undertrykkelse verdi, så ingen indeks forholdet er etablert.

    undertrykkelse rutine er en brukerskrevne program som evaluerer segmentet og avgjør hvorvidt det skal bli indeksert.

    Når sparsom indeksering brukes, dens funksjoner håndteres av DL /I. Vi trenger ikke å gi særlige bestemmelser for det i programmet.

    DBDGEN Krav

    Som omtalt i tidligere moduler, er DBDGEN brukes til å lage en DBD. Når vi skaper sekundære indekser, er to databaser involvert. En DBA må lage to DBDS ved hjelp av to DBDGENs for å skape en relasjon mellom en indeksert database og en sekundær indeksert database.

    PSBGEN Krav

    Etter å ha laget den sekundære indeksen for en database, DBA behov å skape de PSBs. PSBGEN for programmet spesifiserer den riktige behandlingssekvens for databasen på PROCSEQ parameteren med PSB makroen. For PROCSEQ parameter, DBA koder DBD navn for den sekundære indeksen databasen. Anmeldelser