"Database Index" viittaa erityiseen tietorakenteeseen, joka nopeuttaa tietueiden hakemista tietokantataulukosta. Tietokantaindeksit varmistavat, että voit löytää ja käyttää tietokantataulukon tietoja tehokkaasti tarvitsematta etsiä jokaisesta rivistä joka kerta, kun tietokantakyselyä käsitellään.
Tietokannan hakemistoa voidaan verrata kirjan hakemistoon. Tietokantojen indeksit viittaavat tietokannasta etsimääsi tietueeseen, aivan kuten kirjan hakusivu osoittaa haluamasi aiheen tai luvun.
Vaikka tietokantaindeksit ovat välttämättömiä nopealle ja tehokkaalle tiedonhakulle ja pääsylle, ne vievät lisää kirjoitus- ja muistitilaa.
Mikä on hakemisto?
Tietokannan hakemistot ovat erityisiä hakutaulukoita, jotka koostuvat kahdesta sarakkeesta. Ensimmäinen sarake on hakunäppäin ja toinen sarake. Avaimet ovat arvoja, jotka haluat etsiä ja hakea tietokantataulukosta, ja osoitin tai viite tallentaa levylohkon osoitteen tietyn tietyn hakunäppäimen tietokantaan. Avainkentät on lajiteltu siten, että se nopeuttaa kaikkien kyselyidesi tietojen hakutoimintoa.
Miksi käyttää tietokannan indeksointia?
Aion näyttää sinulle tietokantaindeksit yksinkertaistetulla tavalla täällä. Oletetaan, että sinulla on tietokantataulukko kahdeksasta yrityksessä työskentelevästä työntekijästä ja haluat etsiä tietoja taulukon viimeisestä merkinnästä. Nyt voit etsiä edellisen merkinnän hakemalla tietokannan jokaisesta rivistä.
Oletetaan kuitenkin, että olet lajitellut taulukon aakkosjärjestyksessä työntekijöiden etunimen perusteella. Joten tässä hakemistonäppäimet perustuvat "nimisarakkeeseen". Jos siinä tapauksessa haet viimeisimmästä merkinnästä,Zack", Voit hypätä taulukon keskelle ja päättää, tuleeko merkinnämme ennen saraketta vai sen jälkeen.
Kuten tiedät, se tulee keskirivin jälkeen, ja voit jälleen jakaa keskirivin jälkeiset rivit puoliksi ja tehdä samanlainen vertailu. Tällä tavoin sinun ei tarvitse kulkea kutakin riviä viimeisen merkinnän löytämiseksi.
Jos yrityksellä olisi 1 000 000 työntekijää ja viimeinen merkintä oli "Zack", sinun olisi etsittävä 50000 riviä löytääksesi hänen nimensä. Aakkosellisen indeksoinnin avulla voit tehdä sen muutamassa vaiheessa. Voit nyt kuvitella, kuinka paljon nopeampi tiedonhaku ja käyttö voi tulla tietokannan indeksoinnin avulla.
Liittyvät: 13 tärkeintä SQL-komentoa, jotka jokaisen ohjelmoijan tulisi tietää
Erilaiset tiedostojärjestelymenetelmät tietokantaindekseille
Indeksointi riippuu suuresti käytetystä tiedostojärjestelymekanismista. Tietojen tallentamiseen käytetään yleensä kahden tyyppisiä tiedostojärjestelymenetelmiä, joita käytetään tietokannan indeksoinnissa. Niitä käsitellään alla:
1. Järjestetty hakemistotiedosto: Tämä on perinteinen menetelmä hakemistotietojen tallentamiseksi. Tässä menetelmässä avainarvot lajitellaan tietyssä järjestyksessä. Järjestetyn hakemistotiedoston tiedot voidaan tallentaa kahdella tavalla.
- Harvinainen indeksi: Tämän tyyppisessä indeksoinnissa jokaiselle tietueelle luodaan hakemistomerkintä.
- Tiheä indeksi: Tiheässä indeksoinnissa luodaan hakemistomerkintä joillekin tietueille. Jos haluat löytää tietueen tällä menetelmällä, sinun on ensin löydettävä merkittävin hakunäppäimen arvo hakemistomerkinnöistä, jotka ovat pienempiä tai yhtä suuria kuin etsimäsi hakunäppäimen arvo.
2. Hash-tiedosto-organisaatio: Tässä tiedostojärjestelymenetelmässä hash-toiminto määrittää sijainnin tai levylohkon, johon tietue on tallennettu.
Tietokannan indeksoinnin tyypit
Tietokantaindeksointiin on yleensä kolme menetelmää. He ovat:
- Klusteroitu indeksointi
- Ryhmittymätön indeksointi
- Monitasoinen indeksointi
1. Klusteroitu indeksointi
Klusteroidussa indeksoinnissa yksi yksittäinen tiedosto voi tallentaa enemmän kuin kaksi tietuetta. Järjestelmä pitää todelliset tiedot klusteroidussa indeksoinnissa osoittimien sijaan. Haku on kustannustehokasta, kun indeksointi on klusteroitu, koska se tallentaa kaikki siihen liittyvät tiedot samaan paikkaan.
Ryhmittelyhakemisto käyttää järjestettyjä datatiedostoja määrittelemään itsensä. Myös useiden tietokantataulukkojen yhdistäminen on hyvin yleistä tämäntyyppisen indeksoinnin yhteydessä.
On myös mahdollista luoda hakemisto, joka perustuu muihin kuin ensisijaisiin sarakkeisiin, jotka eivät ole ainutlaatuisia kullekin avaimelle. Tällaisissa tilanteissa se yhdistää useita sarakkeita muodostaen klusteroitujen hakemistojen ainutlaatuiset avainarvot.
Lyhyesti sanottuna klusterointihakemistoihin ryhmitellään samanlaiset tietotyypit ja luodaan niille indeksit.
Esimerkki: Oletetaan, että yrityksessä on yli 1000 työntekijää 10 eri osastolla. Tässä tapauksessa yrityksen tulisi luoda klusterointi-indeksointi DBMS: äänsä samalla osastolla työskentelevien työntekijöiden indeksoimiseksi.
Jokainen samassa osastossa työskentelevä klusteri määritellään yhdeksi klusteriksi, ja indekseissä olevat dataosoittimet viittaavat klusteriin kokonaisuutena.
Liittyvät: Mitä ovat ulkomaiset avaimet SQL-tietokannoissa?
2. Ryhmittymätön indeksointi
Ryhmittymätön indeksointi tarkoittaa indeksointityyppiä, jossa hakemistorivien järjestys ei ole sama kuin alkuperäisten tietojen fyysinen tallennus. Sen sijaan ryhmittymätön hakemisto osoittaa tietokannan tietovarastoon.
Esimerkki: Ryhmittymätön indeksointi on samanlainen kuin kirja, jolla on järjestetty sisältösivu. Tässä dataosoitin tai viite on järjestetty sisältösivu, joka on lajiteltu aakkosjärjestyksessä, ja todelliset tiedot ovat kirjan sivujen tietoja. Sisällyssivu ei tallenna kirjan sivuilla olevia tietoja niiden järjestyksessä.
3. Monitasoinen indeksointi
Monitasoista indeksointia käytetään, kun indeksien määrä on erittäin suuri, eikä se voi tallentaa ensisijaista indeksiä päämuistiin. Kuten ehkä tiedätte, tietokantaindeksit sisältävät hakunäppäimet ja datan osoittimet. Kun tietokannan koko kasvaa, myös indeksien määrä kasvaa.
Nopean hakutoiminnon varmistamiseksi hakemistotietueita on kuitenkin pidettävä muistissa. Jos yksitasoista hakemistoa käytetään, kun indeksin numero on suuri, on epätodennäköistä, että kyseistä hakemistoa tallennetaan muistiin sen koon ja useiden pääsyjen vuoksi.
Tässä tulee esiin monitasoinen indeksointi. Tämä tekniikka jakaa yhden tason indeksin useisiin pienempiin lohkoihin. Hajoamisen jälkeen ulkotason lohko muuttuu niin pieneksi, että se voidaan helposti tallentaa päämuistiin.
Liittyvät: Yhteyden muodostaminen MySQL-tietokantaan Java-sovelluksella
Mikä on SQL-indeksin sirpaloituminen?
Jos jokin hakemistosivujen järjestys ei vastaa datatiedoston fyysistä järjestystä, aiheuttaa SQL-hakemiston pirstoutumisen. Aluksi kaikki SQL-indeksit ovat pirstoutumattomia, mutta kun käytät tietokantaa (Lisää / Poista / Muuta tietoja) toistuvasti, se voi aiheuttaa pirstoutumista.
Tietokannan pirstoutumisen lisäksi tietokanta voi kohdata myös muita tärkeitä asioita, kuten tietokannan vioittuminen. Se voi johtaa tietojen menetykseen ja vahingoittuneeseen verkkosivustoon. Jos teet liiketoimintaa verkkosivustosi kanssa, se voi olla kohtalokas isku sinulle.
SQL Serverin palautustyökalut auttavat korjaamaan MS SQL Serverin vioittuneet MDF-tiedostot kaikille versioille.
Lue seuraava
- Ohjelmointi
- SQL
- Tietojen analysointi
- tietokanta
Zadhid Powell on tietokoneinsinööri, joka luopui koodauksesta aloittaakseen kirjoittamisen! Rinnalla hän on digitaalinen markkinoija, tekniikan harrastaja, SaaS-asiantuntija, lukija ja innokas ohjelmistosuuntausten seuraaja. Usein saatat löytää hänen rokkaavan keskustan klubeja kitarallaan tai tarkastelemalla merenpohjan sukellusta.
Tilaa uutiskirjeemme
Liity uutiskirjeeseemme, jossa on teknisiä vinkkejä, arvosteluja, ilmaisia e-kirjoja ja erikoistarjouksia!
Vielä yksi askel !!!
Vahvista sähköpostiosoitteesi juuri lähettämässäsi sähköpostiviestissä.