Indeksering i DBMS: Hva er, typer indekser med EKSEMPLER

Hva er indeksering?

Indeksering er en datastrukturteknikk som lar deg raskt hente poster fra en databasefil. En indeks er en liten tabell med bare to kolonner. Den første kolonnen består av en kopi av primær- eller kandidatnøkkelen til en tabell. Den andre kolonnen inneholder et sett med pekere for å holde adressen til diskblokken der den spesifikke nøkkelverdien er lagret.

En indeks –

  • Tar en søketast som input
  • Returnerer effektivt en samling av samsvarende poster.

Typer indeksering i DBMS

Typer indeksering i DBMS
Type indekser i databasen

Indeksering i databasen er definert basert på dens indekseringsattributter. To hovedtyper av indekseringsmetoder er:

  • Primær indeksering
  • Sekundær indeksering

Primærindeks i DBMS

Primærindeks er en ordnet fil som har en fast lengdestørrelse med to felt. Det første feltet er det samme som en primærnøkkel og det andre, arkivert, peker på den spesifikke datablokken. I primærindeksen er det alltid ett til ett forhold mellom oppføringene i indekstabellen.

Den primære indekseringen i DBMS er også videre delt inn i to typer.

  • Tett indeks
  • Sparsom indeks

Tett indeks

I en tett indeks opprettes en post for hver søkenøkkel som er verdsatt i databasen. Dette hjelper deg å søke raskere, men trenger mer plass til å lagre indeksposter. I denne indekseringen inneholder metodeposter søkenøkkelverdi og peker på den virkelige posten på disken.

Tett indeks

Sparsom indeks

Det er en indekspost som vises for bare noen av verdiene i filen. Sparse Index hjelper deg med å løse problemene med tett indeksering DBMS. I denne metoden for indekseringsteknikk lagrer en rekke indekskolonner den samme datablokkadressen, og når data må hentes, vil blokkadressen bli hentet.

Sparse Index lagrer imidlertid indeksposter for bare noen søkenøkkelverdier. Den trenger mindre plass, mindre vedlikeholdskostnader for innsetting og slettinger, men den er tregere sammenlignet med den tette indeksen for å finne poster.

Nedenfor er en databaseindeks Eksempel på Sparse Index

Sparsom indeks

Sekundærindeks i DBMS

Sekundærindeksen i DBMS kan genereres av et felt som har en unik verdi for hver post, og det bør være en kandidatnøkkel. Det er også kjent som en ikke-klyngende indeks.

Denne to-nivå databaseindekseringsteknikken brukes til å redusere kartleggingsstørrelsen til det første nivået. For det første nivået er et stort utvalg av tall valgt på grunn av dette; kartleggingsstørrelsen forblir alltid liten.

Sekundærindekseksempel

La oss forstå sekundær indeksering med et databaseindekseksempel:

I en bankkontodatabase lagres data sekvensielt av acc_no; Det kan være lurt å finne alle kontoer i en bestemt filial av ABC-bank.

Her kan du ha en sekundær indeks i DBMS for hver søkenøkkel. Indekspost er et postpunkt til en bøtte som inneholder pekere til alle postene med deres spesifikke søkenøkkelverdi.

Sekundærindekseksempel

Clustering Index i DBMS

I en gruppert indeks lagres selve postene i indeksen og ikke pekere. Noen ganger opprettes indeksen på ikke-primære nøkkelkolonner som kanskje ikke er unike for hver post. I en slik situasjon kan du gruppere to eller flere kolonner for å få de unike verdiene og lage en indeks som kalles clustered Index. Dette hjelper deg også å identifisere posten raskere.

Eksempel:

La oss anta at en bedrift rekrutterte mange ansatte i ulike avdelinger. I dette tilfellet bør klyngeindeksering i DBMS opprettes for alle ansatte som tilhører samme avdeling.

Det vurderes i en enkelt klynge, og indekspunkter peker på klyngen som helhet. Her er Avdeling _nr en ikke-unik nøkkel.

Hva er Multilevel Index?

Indeksering på flere nivåer Database opprettes når en primær indeks ikke passer i minnet. I denne typen indekseringsmetode kan du redusere antall disktilganger for å forkorte enhver post og holdes på en disk som en sekvensiell fil og lage en sparsom base på den filen.

Flernivåindeks

B-treindeks

B-tree index er de mye brukte datastrukturene for trebasert indeksering i DBMS. Det er et flernivåformat for trebasert indeksering i DBMS-teknikk som har balansert binære søketrær. Alle bladnoder i B-treet angir faktiske datapekere.

Dessuten er alle bladnoder sammenkoblet med en lenkeliste, som lar et B-tre støtte både tilfeldig og sekvensiell tilgang.

B-treindeks

  • Avledningsnoder må ha mellom 2 og 4 verdier.
  • Hver vei fra roten til bladet er stort sett like lang.
  • Ikke-bladnoder bortsett fra rotnoden har mellom 3 og 5 barnnoder.
  • Hver node som ikke er en rot eller et blad har mellom n/2] og n barn.

Fordeler med indeksering

Viktige fordeler/fordeler med indeksering er:

  • Det hjelper deg å redusere det totale antallet I/O-operasjoner som trengs for å hente disse dataene, slik at du ikke trenger å få tilgang til en rad i databasen fra en indeksstruktur.
  • Tilbyr raskere søk og gjenfinning av data til brukere.
  • Indeksering hjelper deg også med å redusere tabellplass siden du ikke trenger å koble til en rad i en tabell, siden det ikke er nødvendig å lagre ROWID i indeksen. Dermed vil du kunne redusere bordplassen.
  • Du kan ikke sortere data i lead-nodene ettersom verdien til primærnøkkelen klassifiserer dem.

Ulemper med indeksering

Viktige ulemper/ulemper med indeksering er:

  • For å utføre indekseringsdatabasestyringssystemet trenger du en primærnøkkel på bordet med en unik verdi.
  • Du kan ikke utføre andre indekser i databasen på de indekserte dataene.
  • Du har ikke lov til å partisjonere en indeksorganisert tabell.
  • SQL-indeksering Reduser ytelsen i INSERT-, DELETE- og UPDATE-spørringen.

Sammendrag

  • Indeksering er en liten tabell som består av to kolonner.
  • To hovedtyper av indekseringsmetoder er 1) Primær indeksering 2) Sekundær indeksering.
  • Primærindeks er en ordnet fil som har en fast lengdestørrelse med to felt.
  • Den primære indekseringen er også videre delt inn i to typer 1) Tett indeks 2) Sparsom indeks.
  • I en tett indeks opprettes en post for hver søkenøkkel som er verdsatt i databasen.
  • En sparsom indekseringsmetode hjelper deg med å løse problemene med tett indeksering.
  • Den sekundære indeksen i DBMS er en indekseringsmetode hvis søkenøkkel spesifiserer en rekkefølge som er forskjellig fra den sekvensielle rekkefølgen til filen.
  • Clustering-indeks er definert som en ordredatafil.
  • Multilevel Indexing opprettes når en primær indeks ikke passer i minnet.
  • Den største fordelen med indeksering er at det hjelper deg å redusere det totale antallet I/O-operasjoner som trengs for å hente disse dataene.
  • Den største ulempen med å utføre indekseringsdatabasestyringssystemet, du trenger en primærnøkkel på bordet med en unik verdi.