A különbség köztük Clustered és Nem fürtözött index
Kulcs különbség között Clusterszerk. és Nem fürtözött index
- A fürt index egy olyan típusú index, amely a tábla adatsorait a kulcsértékeik szerint rendezi, míg a nem fürtözött index az adatokat egy helyen, az indexeket pedig egy másik helyen tárolja.
- ClusterAz ed index az adatlapokat az index levélcsomópontjaiban tárolja, míg a Nem fürtözött index módszer soha nem tárol adatlapokat az index levélcsomópontjaiban.
- A fürt index nem igényel további lemezterületet, míg a nem fürtözött index további lemezterületet igényel.
- Cluster index gyorsabb adatelérést kínál, másrészt a Nem fürtözött index lassabb.
Mi az index?
Az index az adatbázis egy vagy több oszlopából felépített kulcs, amely felgyorsítja a sorok lekérését a táblázatból vagy a nézetből. Ez a kulcs segít egy adatbázishoz hasonló Oracle, SQL szerver, MySQLstb., hogy gyorsan megtalálja a kulcsértékekhez társított sort.
Az indexek két típusa:
- Clusterszerk Index
- Nem-Clusterszerk Index
Mi az a Clustered index?
Cluster Az index egy olyan típusú index, amely a táblázat adatsorait kulcsértékeik szerint rendezi. Az adatbázisban táblánként csak egy fürtözött index található.
A fürtözött index határozza meg az adatok tárolási sorrendjét a táblában, amely csak egyféleképpen rendezhető. Tehát minden táblához csak egyetlen fürtözött index lehet. Az RDBMS-ben általában az elsődleges kulcs lehetővé teszi egy fürtözött index létrehozását az adott oszlop alapján.
Mi az a nem fürtözött index?
A nem fürtözött index az adatokat egy helyen, az indexeket pedig egy másik helyen tárolja. Az index mutatókat tartalmaz az adatok helyére. Egyetlen táblában több nem fürtözött index is lehet, mivel a nem fürtözött indexben lévő indexek különböző helyeken vannak tárolva.
Például egy könyvnek több indexe is lehet, az egyik az elején, amely egy könyvegység tartalmát jeleníti meg, míg a második index a kifejezések indexét ábécé sorrendben.
A tábla nem rendezési mezőjében egy nem fürtöző indexet határoz meg. Az ilyen típusú indexelési módszer segít javítani az olyan lekérdezések teljesítményét, amelyek olyan kulcsokat használnak, amelyek nincsenek elsődleges kulcsként hozzárendelve. A nem fürtözött index lehetővé teszi egyedi kulcs hozzáadását egy táblához.
Jellemző Clusterszerk Index
- Alapértelmezett és rendezett adattárolás
- Egy indexhez csak egy vagy több oszlopot használjon
- Segít az adatok és az index együttes tárolásában
- Szilánkosodás
- OperaTIONS
- Clustered index scan és index search
- Kulcskeresés
A nem klaszterezett indexek jellemzői
- Csak a kulcsértékeket tárolja
- Mutatók a kupacra/Clustered Index sorok
- Lehetővé teszi a másodlagos adathozzáférést
- Híd az adatokhoz
- OperaIndex Scan és Index Seek
- Létrehozhat nem fürtözött indexet egy táblázathoz vagy nézethez
- A nem fürtözött index minden indexsora tárolja a nem fürtözött kulcsértéket és egy sorkeresőt
Clustered vs nem fürtözött index az SQL-ben: kulcsfontosságú különbségek
paraméterek | Clustered | Nem fürtözött |
---|---|---|
Használ | A rekordokat rendezheti, és a fürtözött indexet fizikailag tárolhatja a memóriában a sorrendnek megfelelően. | A nem fürtözött indexek segítségével logikai sorrendet hozhat létre az adatsorokhoz, és mutatókat használ a fizikai adatfájlokhoz. |
Tárolási mód | Lehetővé teszi az adatlapok tárolását az index levél csomópontjaiban. | Ez az indexelési módszer soha nem tárol adatoldalakat az index levélcsomópontjaiban. |
Méret | A klaszterezett index mérete meglehetősen nagy. | A nem klaszterezett index mérete kicsi a fürtözött indexhez képest. |
Adathozzáférés | Gyorsabb | A klaszteres indexhez képest lassabb |
További lemezterület | Nem szükséges | Az index külön tárolásához szükséges |
A kulcs típusa | Alapértelmezés szerint a táblázat elsődleges kulcsai a Clusterszerk Index. | Egyedi megszorításokkal használható a táblán, amely összetett kulcsként működik. |
Fő jellemzője | A fürtözött index javíthatja az adatvisszakeresés teljesítményét. | Az illesztéseknél használt oszlopokon kell létrehozni. |
Példa fürtözött indexre
Az alábbi példában a SalesOrderDetailID a fürtözött index. Mintalekérdezés az adatok lekéréséhez
SELECT CarrierTrackingNumber, UnitPrice FROM SalesData WHERE SalesOrderDetailID = 6
Példa egy nem fürtözött indexre
Az alábbi példában egy nem fürtözött index jön létre a OrderQty és ProductID értékeken az alábbiak szerint
CREATE INDEX myIndex ON SalesData (ProductID, OrderQty)
A következő lekérdezés gyorsabban lesz lekérve, mint a fürtözött index.
SELECT Product ID, OrderQty FROM SalesData WHERE ProductID = 714
Előnyei Clusterszerk Index
A fürtözött index előnyei/előnyei a következők:
- ClusterAz ed indexek ideális lehetőséget jelentenek a tartomány vagy csoportosításhoz max, min, count típusú lekérdezések esetén
- Az ilyen típusú indexekben a keresés közvetlenül az adatok egy adott pontjára tud menni, így onnan folytathatja az olvasást.
- ClusterAz ed index metódus helymechanizmust használ az indexbejegyzés megkeresésére egy tartomány elején.
- Hatékony módszer a tartománykereséshez, amikor a keresési kulcsértékek tartományát kérik.
- Segít minimalizálni az oldalátvitelt és maximalizálni a gyorsítótár találatait.
A nem fürtözött index előnyei
A nem fürtözött index használatának előnyei a következők:
- A nem fürtözött index segít gyorsan lekérni az adatokat az adatbázistáblából.
- Segít elkerülni a fürtözött indexhez kapcsolódó általános költségeket
- Egy táblában több, nem fürtözött index is lehet RDBMS. Tehát egynél több index létrehozására is használható.
Hátrányai Clusterszerk Index
Íme a fürtözött index használatának hátrányai/hátrányai:
- Sok betét nem szekvenciális sorrendben
- A fürtözött index sok állandó oldalfelosztást hoz létre, amely adatoldalakat és indexoldalakat is tartalmaz.
- Extra munka SQL beszúrásokhoz, frissítésekhez és törlésekhez.
- A fürtözött indexnél hosszabb ideig tart a rekordok frissítése, ha a fürtözött index mezői megváltoznak.
- A levél csomópontjai többnyire adatlapokat tartalmaznak a fürtözött indexben.
A nem klaszterezett index hátrányai
Íme a nem fürtözött index használatának hátrányai/hátrányai:
- A nem fürtözött index segít az adatok logikai sorrendben történő tárolásában, de nem teszi lehetővé az adatsorok fizikai rendezését.
- A nem fürtözött indexen végzett keresési folyamat költségessé válik.
- Minden alkalommal, amikor a fürtözési kulcsot frissítik, megfelelő frissítésre van szükség a nem fürtözött indexen, mivel az tárolja a fürtözési kulcsot.