Indeksering i DBMS: Hvad er, typer af indekser med EKSEMPLER

Hvad er indeksering?

Indeksering er en datastrukturteknik, som giver dig mulighed for hurtigt at hente poster fra en databasefil. Et indeks er en lille tabel med kun to kolonner. Den første kolonne omfatter en kopi af den primære eller kandidatnøgle i en tabel. Dens anden kolonne indeholder et sæt af pointers for at holde adressen på diskblokken, hvor den specifikke nøgleværdi er gemt.

Et indeks –

  • Tager en søgetast som input
  • Returnerer effektivt en samling af matchende poster.

Typer af indeksering i DBMS

Typer af indeksering i DBMS
Type af indekser i databasen

Indeksering i databasen er defineret ud fra dens indekseringsattributter. To hovedtyper af indekseringsmetoder er:

  • Primær indeksering
  • Sekundær indeksering

Primært indeks i DBMS

Primary Index er en ordnet fil, som har en fast længdestørrelse med to felter. Det første felt er det samme som en primær nøgle, og det andet felt peges på den specifikke datablok. I det primære indeks er der altid et til et forhold mellem indtastningerne i indekstabellen.

Den primære Indeksering i DBMS er også yderligere opdelt i to typer.

  • Tæt indeks
  • Sparsomt indeks

Tæt indeks

I et tæt indeks oprettes en post for hver søgenøgle, der er værdisat i databasen. Dette hjælper dig med at søge hurtigere, men har brug for mere plads til at gemme indeksposter. I denne indeksering indeholder metodeposter søgenøgleværdi og peger på den rigtige post på disken.

Tæt indeks

Sparsomt indeks

Det er en indekspost, der kun vises for nogle af værdierne i filen. Sparse Index hjælper dig med at løse problemerne med tæt indeksering DBMS. I denne metode til indekseringsteknik gemmer en række indekskolonner den samme datablokadresse, og når data skal hentes, vil blokadressen blive hentet.

Sparse Index gemmer dog kun indeksposter for nogle søgenøgleværdier. Det har brug for mindre plads, mindre vedligeholdelsesomkostninger til indsættelse og sletninger, men det er langsommere sammenlignet med det tætte indeks til at lokalisere poster.

Nedenfor er et databaseindeks Eksempel på Sparse Index

Sparsomt indeks

Sekundært indeks i DBMS

Det sekundære indeks i DBMS kan genereres af et felt, som har en unik værdi for hver post, og det bør være en kandidatnøgle. Det er også kendt som et ikke-klyngeindeks.

Denne to-niveau database indekseringsteknik bruges til at reducere kortlægningsstørrelsen af ​​det første niveau. For det første niveau vælges et stort antal tal på grund af dette; kortlægningsstørrelsen forbliver altid lille.

Eksempel på sekundært indeks

Lad os forstå sekundær indeksering med et databaseindekseksempel:

I en bankkontodatabase lagres data sekventielt af acc_no; du vil måske finde alle konti i en bestemt filial af ABC-bank.

Her kan du have et sekundært indeks i DBMS for hver søgenøgle. Indekspost er et postpunkt til en bucket, der indeholder pointere til alle posterne med deres specifikke søgenøgleværdi.

Eksempel på sekundært indeks

ClusterIndeks i DBMS

I et klynget indeks gemmes selve poster i indekset og ikke pegepinde. Nogle gange oprettes indekset på ikke-primære nøglekolonner, som måske ikke er unikke for hver post. I en sådan situation kan du gruppere to eller flere kolonner for at få de unikke værdier og oprette et indeks, som kaldes clustered Index. Dette hjælper dig også med at identificere posten hurtigere.

Eksempel:

Lad os antage, at en virksomhed rekrutterede mange medarbejdere i forskellige afdelinger. I dette tilfælde bør der oprettes klyngeindeksering i DBMS for alle medarbejdere, der tilhører samme afd.

Det betragtes i en enkelt klynge, og indekspunkter peger på klyngen som helhed. Her er afdeling _nr en ikke-unik nøgle.

Hvad er Multilevel Index?

Indeksering på flere niveauer Database oprettes, når et primært indeks ikke passer i hukommelsen. I denne type indekseringsmetode kan du reducere antallet af diskadgange for at forkorte enhver post og opbevares på en disk som en sekventiel fil og oprette en sparsom base på den fil.

Indeks på flere niveauer

B-Tree-indeks

B-træindeks er de meget anvendte datastrukturer til træbaseret indeksering i DBMS. Det er et multilevel-format af træbaseret indeksering i DBMS-teknik, som har balanceret binære søgetræer. Alle bladknuder i B-træet angiver faktiske datapegere.

Desuden er alle bladknuder forbundet med en linkliste, som tillader et B-træ at understøtte både tilfældig og sekventiel adgang.

B-Tree-indeks

  • Lead noder skal have mellem 2 og 4 værdier.
  • Hver vej fra rod til blad er for det meste lige lang.
  • Ikke-bladknuder bortset fra rodknuden har mellem 3 og 5 børneknuder.
  • Hver knude, der ikke er en rod eller et blad, har mellem n/2] og n børn.

Fordele ved indeksering

Vigtige fordele/fordele ved indeksering er:

  • Det hjælper dig med at reducere det samlede antal I/O-operationer, der er nødvendige for at hente disse data, så du ikke behøver at få adgang til en række i databasen fra en indeksstruktur.
  • Tilbyder hurtigere søgning og hentning af data til brugere.
  • Indeksering hjælper dig også med at reducere tablespace, da du ikke behøver at linke til en række i en tabel, da der ikke er behov for at gemme ROWID i Index. Således vil du være i stand til at reducere bordpladsen.
  • Du kan ikke sortere data i lead noderne, da værdien af ​​den primære nøgle klassificerer dem.

Ulemper ved indeksering

Vigtige ulemper/ulemper ved indeksering er:

  • For at udføre indekseringsdatabasestyringssystemet skal du have en primær nøgle på bordet med en unik værdi.
  • Du kan ikke udføre andre indekser i databasen på de indekserede data.
  • Du har ikke tilladelse til at partitionere en indeksorganiseret tabel.
  • SQL-indeksering Reducer ydeevnen i INSERT-, DELETE- og UPDATE-forespørgslen.

Resumé

  • Indeksering er en lille tabel, der består af to kolonner.
  • To hovedtyper af indekseringsmetoder er 1) Primær indeksering 2) Sekundær indeksering.
  • Primary Index er en ordnet fil, som har en fast længdestørrelse med to felter.
  • Den primære indeksering er også yderligere opdelt i to typer 1) tæt indeks 2) sparsom indeks.
  • I et tæt indeks oprettes en post for hver søgenøgle, der er værdisat i databasen.
  • En sparsom indekseringsmetode hjælper dig med at løse problemerne med tæt indeksering.
  • Det sekundære indeks i DBMS er en indekseringsmetode, hvis søgenøgle angiver en rækkefølge, der er forskellig fra den sekventielle rækkefølge af filen.
  • Clustering-indeks er defineret som en ordredatafil.
  • Multilevel Indexing oprettes, når et primært indeks ikke passer i hukommelsen.
  • Den største fordel ved indeksering er, at det hjælper dig med at reducere det samlede antal I/O-operationer, der er nødvendige for at hente disse data.
  • Den største ulempe ved at udføre indekseringsdatabasestyringssystemet, du har brug for en primær nøgle på bordet med en unik værdi.