Mi az index?
Az Index az adatbázis egy vagy több oszlopából felépített kulcs, amely felgyorsítja a sorok beolvasását a táblából vagy a nézetből. Ez a kulcs segít egy olyan adatbázisnak, mint az Oracle, az SQL Server, a MySQL stb., Hogy gyorsan megtalálja a kulcsértékekhez társított sort.
Kétféle index van:
- Fürtözött index
- Nem fürtözött index
Ebben az oktatóanyagban megtudhatja:
- Mi az index?
- Mi az a fürtözött index?
- Mi az a nem fürtözött index?
- A fürtözött index jellemzője
- A nem fürtözött indexek jellemzői
- Példa fürtözött indexre
- Példa nem fürtözött indexre
- Különbségek a fürtözött index és a nem csoportosított index között
- A fürtözött index előnyei
- A nem fürtözött index előnyei
- A fürtözött index hátrányai
- A nem fürtözött index hátrányai
Mi az a fürtözött index?
A fürtindex egy olyan indextípus, amely a táblázat adatsorait a legfontosabb é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 meghatározza az adatok tárolási sorrendjét a táblázatban, amelyek csak egyféleképpen rendezhetők. 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 az adott oszlop alapján fürtözött index létrehozását.
Mi az a nem fürtözött index?
A nem fürtözött index az adatokat egy helyen tárolja, az indexeket pedig egy másik helyen. Az index mutatókat tartalmaz az adatok helyére. Egyetlen tábla sok nem fürtözött indexet tartalmazhat, mivel a nem fürtözött index indexét különböző helyeken tárolják.
Például egy könyvnek több indexe lehet, az egyik az elején, amely a könyvegység tartalmát bölcsen jeleníti meg, míg a második index a kifejezések indexét ábécé sorrendben mutatja.
Nem fürtöző indexet a táblázat nem sorrend mezőjében definiálunk. Ez a fajta indexelési módszer segít javítani azon lekérdezések teljesítményét, amelyek kulcsokat használnak, amelyek nem elsődleges kulcsok. A nem fürtözött index lehetővé teszi egyedi kulcs hozzáadását egy táblához.
FŐ KÜLÖNBSÉG
- A fürtindex egy olyan indextípus, amely a táblázat adatsorait rendezi a legfontosabb értékeiken, míg a nem fürtözött index az adatokat egy helyen tárolja, az indexeket pedig egy másik helyen.
- A fürtözött index az adatlapokat az index levélcsomópontjaiban tárolja, míg a Nem fürtözött index módszer soha nem tárolja az adatlapokat az index levélcsomópontjaiban.
- A fürtindex nem igényel további lemezterületet, míg a nem fürtözött index további lemezterületet igényel.
- A klaszterindex gyorsabb adatelérést kínál, másrészt a nem fürtözött index lassabb.
A fürtözött index jellemzője
- Alapértelmezett és rendezett adattárolás
- Csak egy vagy több oszlopot használjon egy indexhez
- Segít az adatok és az index együttes tárolásában
- Töredezettség
- Tevékenységek
- Fürtözött index szkennelés és index keresés
- Kulcskeresés
A nem fürtözött indexek jellemzői
- Csak a kulcsértékek tárolása
- Mutatók a kupac / fürtözött index sorokhoz
- Engedélyezi a másodlagos adatokhoz való hozzáférést
- Híd az adatokhoz
- Az Index Scan és az Index Seek műveletei
- Nem fürtözött indexet hozhat létre egy táblázat vagy nézet számára
- A nem fürtözött index minden indexe tárolja a nem fürtözött kulcs értékét és egy sor lokátorát
Példa fürtözött indexre
Az alábbi példában a SalesOrderDetailID a fürtözött index. Minta lekérdezés az adatok lekéréséhez
SELECT CarrierTrackingNumber, UnitPriceFROM SalesDataWHERE SalesOrderDetailID = 6
Példa 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 a ProductID rendszeren az alábbiak szerint
CREATE INDEX myIndex ONSalesData (ProductID, OrderQty)
A következő lekérdezés gyorsabban lesz lekérve a fürtözött indexhez képest.
SELECT Product ID, OrderQtyFROM SalesDataWHERE ProductID = 714
Különbségek a fürtözött index és a nem csoportosított index között
Paraméterek | Fürtözött | Nem fürtözött |
---|---|---|
Használ | Rendezheti a rekordokat és a fürtözött indexeket fizikailag tárolhatja a memóriában a megrendelésnek megfelelően. | A nem fürtözött index segít létrehozni az adatsorok logikai sorrendjét, és mutatókat használ a fizikai adatfájlokhoz. |
Tárolási módszer | Lehetővé teszi az adatlapok tárolását az index levél csomópontjaiban. | Ez az indexelési módszer soha nem tárolja az adatlapokat az index levélcsomópontjaiban. |
Méret | A fürtözött index mérete meglehetősen nagy. | A nem fürtözött index mérete kicsi a fürtözött indexhez képest. |
Adathozzáférés | Gyorsabban | Lassabban a fürtözött indexhez képest |
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 egy fürtözött index. | Egyedi korlátozásokkal használható az asztalon, amely összetett kulcsként működik. |
Fő jellemzője | A fürtözött index javíthatja az adatkeresés teljesítményét. | Az összekapcsolásoknál használt oszlopokon kell létrehozni. |
A fürtözött index előnyei
A fürtözött index előnyei / előnyei:
- A fürtözött indexek ideális lehetőséget kínálnak tartomány vagy csoportosítás céljából max, min, count típusú lekérdezésekkel
- Az ilyen típusú indexben a keresés egyenesen az adatok egy meghatározott pontjára juthat, így onnantól folyamatosan folytathatja az olvasást.
- A fürtözött index módszer helymeghatározó mechanizmust használ az index bejegyzésének megkeresésére a tartomány elején.
- Hatékony módszer a tartomány-keresésekhez, amikor egy keresési kulcs értéktartományt igényelnek.
- 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 nem fürtöző index segít az adatok gyors lekérésében az adatbázis táblából.
- Segít elkerülni a fürtözött indexhez kapcsolódó általános költségeket
- Egy táblának több nem fürtözött indexe lehet az RDBMS-ben. Tehát több index létrehozására is használható.
A fürtözött index hátrányai
Itt vannak 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 magában foglalja az adatlapokat és az indexoldalakat is.
- Extra munka az SQL-be beszúrásokhoz, frissítésekhez és törlésekhez.
- A fürtözött index hosszabb ideig tart a rekordok frissítéséhez, ha a fürtözött index mezőit megváltoztatják.
- A levélcsomópontok többnyire adatlapokat tartalmaznak a fürtözött indexben.
A nem fürtözött index hátrányai
Itt vannak 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 index keresési folyamata költségessé válik.
- A fürtözési kulcs minden egyes frissítésekor 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.