Erotus Clustered ja Ei-klusteroitu indeksi
Keskeinen ero Clustered ja Ei-klusteroitu indeksi
- Klusteriindeksi on indeksityyppi, joka lajittelee taulukon tietorivit niiden avainarvojen mukaan, kun taas klusteroitumaton indeksi tallentaa tiedot yhteen paikkaan ja indeksit toiseen sijaintiin.
- Clustered index tallentaa tietosivut hakemiston lehtisolmuihin, kun taas ei-klusteroitu indeksimenetelmä ei koskaan tallenna tietosivuja indeksin lehtisolmuihin.
- Klusterihakemisto ei vaadi lisää levytilaa, kun taas ei-klusteroitu indeksi vaatii lisää levytilaa.
- Cluster indeksi tarjoaa nopeamman tiedonsaannin, toisaalta klusteroitumaton indeksi on hitaampi.

Mikä on hakemisto?
Hakemisto on yhdestä tai useammasta tietokannan sarakkeesta muodostettu avain, joka nopeuttaa rivien hakemista taulukosta tai näkymästä. Tämä avain auttaa tietokannassa, kuten Oracle, SQL-palvelin, MySQLjne. löytääksesi avainarvoihin liittyvän rivin nopeasti.
Kahden tyyppisiä indeksejä ovat:
- Clustered Index
- Ei-Clustered Index
Mikä on a Clustered indeksi?
Cluster indeksi on indeksityyppi, joka lajittelee taulukon tietorivit niiden avainarvojen mukaan. Tietokannassa on vain yksi klusteroitu indeksi taulukkoa kohden.
Klusteroitu indeksi määrittää järjestyksen, jossa tiedot tallennetaan taulukkoon, joka voidaan lajitella vain yhdellä tavalla. Joten jokaiselle taulukolle voi olla vain yksi klusteroitu indeksi. Yleensä RDBMS:ssä ensisijaisen avaimen avulla voit luoda klusteroidun indeksin kyseisen sarakkeen perusteella.
Mikä on klusteroitumaton indeksi?
Ei-klusteroitu indeksi tallentaa tiedot yhteen paikkaan ja indeksit toiseen paikkaan. Hakemisto sisältää osoittimia näiden tietojen sijaintiin. Yhdessä taulukossa voi olla useita klusteroimattomia indeksejä, koska klusteroimattoman indeksin indeksi on tallennettu eri paikkoihin.
Esimerkiksi kirjassa voi olla useampi kuin yksi hakemisto, yksi alussa, joka näyttää kirjan yksikön sisällön, kun taas toinen hakemisto näyttää termien hakemiston aakkosjärjestyksessä.
Ei-klusteroiva indeksi määritellään taulukon ei-järjestyskentässä. Tämäntyyppinen indeksointimenetelmä auttaa parantamaan sellaisten kyselyiden suorituskykyä, jotka käyttävät avaimia, joita ei ole määritetty ensisijaiseksi avaimeksi. Klusteroimattoman hakemiston avulla voit lisätä taulukkoon ainutlaatuisen avaimen.
Tyypillinen Clustered Index
- Oletus- ja lajiteltu tietojen tallennus
- Käytä hakemistossa vain yhtä tai useampaa saraketta
- Auttaa tallentamaan tietoja ja indeksejä yhdessä
- Hajanaisuus
- OperaTIONS
- Clustered index skannaus ja indeksihaku
- Avaimen haku
Ei-klusteroitujen indeksien ominaisuudet
- Tallenna vain avainarvot
- Osoittimet kasaan/Clustered Hakemistorivejä
- Sallii toissijaisen tiedon käytön
- Silta dataan
- OperaIndex Scan ja Index Seek
- Voit luoda klusteroimattoman indeksin taulukolle tai näkymälle
- Jokainen klusteroimattoman indeksin indeksirivi tallentaa klusteroimattoman avaimen arvon ja rivipaikantimen
Clustered vs ei-klusteroitu indeksi SQL:ssä: keskeiset erot
| parametrit | Clustered | Ei klusteroitu |
|---|---|---|
| Käyttää | Voit lajitella tietueita ja tallentaa klusteroituja indeksejä fyysisesti muistiin tilauksen mukaan. | Klusteroimaton indeksi auttaa luomaan loogisen järjestyksen tietoriville ja käyttää osoittimia fyysisille datatiedostoille. |
| Tallennusmenetelmä | Mahdollistaa tietosivujen tallentamisen hakemiston lehtisolmuihin. | Tämä indeksointimenetelmä ei koskaan tallenna tietosivuja indeksin lehtisolmuihin. |
| Koko | Klusteriindeksin koko on melko suuri. | Klusteroimattoman indeksin koko on pieni verrattuna klusteroituun indeksiin. |
| Tietojen käyttö | Nopeampi | Hitaampi verrattuna klusteroituun indeksiin |
| Lisää levytilaa | Ei vaadittu | Tarvitaan indeksin tallentamiseen erikseen |
| Avaimen tyyppi | Oletuksena taulukon ensisijaiset avaimet on a Clustered Index. | Sitä voidaan käyttää ainutlaatuisella rajoituksella taulukossa, joka toimii yhdistelmäavaimena. |
| Pääominaisuus | Klusteroitu indeksi voi parantaa tiedonhaun suorituskykyä. | Se tulisi luoda sarakkeille, joita käytetään liitoksissa. |
Esimerkki klusteroidusta indeksistä
Alla olevassa esimerkissä SalesOrderDetailID on klusteroitu indeksi. Esimerkkikysely tietojen hakemiseksi
SELECT CarrierTrackingNumber, UnitPrice FROM SalesData WHERE SalesOrderDetailID = 6
Esimerkki klusteroimattomasta indeksistä
Alla olevassa esimerkissä klusteroitumaton indeksi luodaan tilausmäärälle ja tuotetunnukselle seuraavasti
CREATE INDEX myIndex ON SalesData (ProductID, OrderQty)
Seuraava kysely haetaan nopeammin kuin klusteroitu indeksi.
SELECT Product ID, OrderQty FROM SalesData WHERE ProductID = 714
Edut Clustered Index
Klusteroidun indeksin edut/edut ovat:
- Clustered-indeksit ovat ihanteellinen vaihtoehto alueen tai ryhmittelyn mukaan max-, min-, count-tyyppisillä kyselyillä
- Tämän tyyppisessä hakemistossa haku voi mennä suoraan tiettyyn datapisteeseen, jotta voit jatkaa lukemista peräkkäin sieltä.
- Clustered index -menetelmä käyttää sijaintimekanismia paikantaakseen indeksimerkinnän alueen alusta.
- Se on tehokas menetelmä aluehauille, kun pyydetään hakuavaimen arvoaluetta.
- Auttaa minimoimaan sivujen siirrot ja maksimoimaan välimuistin osumat.
Ei-klusteroidun indeksin edut
Klusteroimattoman indeksin käytön edut ovat:
- Ei-klusteroiva indeksi auttaa sinua hakemaan tiedot nopeasti tietokantataulukosta.
- Auttaa sinua välttämään klusteroituun indeksiin liittyvät yleiskustannukset
- Taulukossa voi olla useita klusteroimattomia indeksejä RDBMS. Joten sitä voidaan käyttää useamman kuin yhden indeksin luomiseen.
Haitat Clustered Index
Tässä on klusteroidun indeksin käytön haittoja/haittoja:
- Paljon lisäosia ei-peräkkäisessä järjestyksessä
- Klusteroitu hakemisto luo paljon jatkuvia sivujakoja, jotka sisältävät tietosivun sekä hakemistosivut.
- Ylimääräistä työtä SQL lisäyksiä, päivityksiä ja poistoja varten.
- Klusteroidun indeksin tietueiden päivittäminen kestää kauemmin, kun klusteroidun indeksin kenttiä muutetaan.
- Lehtisolmut sisältävät enimmäkseen tietosivuja klusteroidussa hakemistossa.
Ei-klusteroidun indeksin haitat
Tässä on klusteroimattoman indeksin käytön haittoja/haittoja:
- Klusteroimaton indeksi auttaa sinua tallentamaan tiedot loogisessa järjestyksessä, mutta se ei salli tietorivien fyysistä lajittelua.
- Hakuprosessi ei-klusteroidussa indeksissä tulee kalliiksi.
- Joka kerta kun klusterointiavain päivitetään, vastaava päivitys vaaditaan ei-klusteroituun indeksiin, koska se tallentaa klusterointiavaimen.



