Sisällysluettelo:
Määritelmä - Mitä indeksi (IDX) tarkoittaa?
Tietokantajärjestelmissä hakemisto (IDX) on tietokantataulukon sarakkeisiin määritelty datarakenne nopeuttaakseen tiedon hakuoperaatioita merkittävästi. Hakemisto on pieni kopio tietokantataulusta, joka on lajiteltu avainarvojen mukaan. Ilman hakemistoa kyselykielet, kuten SQL, voivat joutua skannaamaan koko taulukon ylhäältä alas ja valitsemaan osuvia rivejä.
Techopedia selittää hakemiston (IDX)
Hakemisto tietokantataulukkoon on luotava huolellisesti, koska hakemistot vievät tilaa ja tallennetaan tietokantaan. Hakemisto voi myös aiheuttaa kirjoitustoimintojen vievän enemmän aikaa, koska hakemisto on päivitettävä, kun alla oleva taulukko päivitetään.
Hakemistojen luomiseen käytetyt erilaiset tietorakenteet ovat B + -puut, tasapainotetut puut ja räsut. Näitä tietorakenteita käyttämällä koko tietokantataulun skannaus on suhteellisen helppoa.
Hakemistot voidaan luoda myös funktioille tai lausekkeille. Ainutlaatuinen hakemisto estää päällekkäisiä merkintöjä hakemistossa ja siihen liittyvässä taulukossa toimien siten rajoituksena. Sarakejärjestys on myös tärkeä osa indeksointia. Ensimmäisellä indeksoidulla sarakkeella on aina prioriteetti; rivitunnisteet noudetaan ensimmäisten indeksoitujen sarakkeiden perusteella. Normaalissa tilanteessa hakemistot eivät palauta arvoa, vaan paikallistavat vain tietueet.
Hakemistoarkkitehtuuria on yleensä kahta tyyppiä:
- Klusteroitut hakemistot: Klusteroidut hakemistot tallentavat rivitiedot järjestyksessä. Vain yksi klusteroitu hakemisto voidaan luoda tietokantataulukkoon. Tämä toimii tehokkaasti vain, jos tiedot lajitellaan kasvavaan ja laskevaan järjestykseen tai jos taulukon sarakkeille on määritetty raja. Tällainen levyjen datan peräkkäinen järjestely vähentää lohkojen lukumäärää.
- Klusteroimattomat hakemistot: Ryhmittelemättömissä indekseissä tiedot on järjestetty satunnaisella tavalla, mutta indeksi määrittelee sisäisesti loogisen järjestyksen. Siten hakemistojärjestys ei ole sama kuin tietojen fyysinen järjestys. "Luo hakemisto" -lausunto luo oletuksena klusteroimattoman hakemiston, joka luo myös klusteroidun hakemiston ensisijaiseen avaimeen. Hakemistonäppäimet lajitellaan tänne siten, että lehti sisältää osoittimen sivulle. Ryhmittelemättömät hakemistot toimivat hyvin taulukkojen kanssa, joissa tietoja muutetaan usein ja hakemisto luodaan sarakkeisiin, joita käytetään WHERE- ja JOIN-lauseiden järjestyksessä.
