Index klastra vs. index bez klastra
Indexy sú v každej databáze veľmi dôležité. Používajú sa na zlepšenie výkonu získavania údajov z tabuliek. Sú logicky a fyzicky nezávislé od údajov v súvisiacich tabuľkách. Preto je možné indexy zrušiť, znovu vytvoriť a znovu zostaviť bez ovplyvnenia údajov základných tabuliek. Server Oracle môže automaticky udržiavať svoje indexy bez akéhokoľvek zapojenia DBA, keď sú súvisiace tabuľky vložené, aktualizované a odstránené. Existuje niekoľko typov indexov. Tu sú niektoré z nich.
1. Indexy B-stromu
2. Indexy bitmap
3. Indexy založené na funkciách
4. Indexy reverzného kľúča
5. Indexy klastra B-stromov
Čo je neklastrový index?
Z vyššie uvedených typov indexov sú nasledujúce nezhlukované indexy.
• Index B-stromu
• Index bitmapy
• Index založený na funkcii
• Indexy s opačným kľúčom
Indexy B-stromu sú najpoužívanejším typom indexových databáz. Ak je v databáze zadaný príkaz CREATE INDEX bez zadania typu, server Oracle vytvorí index b-stromu. Keď sa v konkrétnom stĺpci vytvorí index b-stromu, server Oracle uloží hodnoty stĺpca a ponechá odkaz na skutočný riadok tabuľky.
Bitmapové indexy sa vytvárajú, keď údaje stĺpca nie sú veľmi selektívne. To znamená, že údaje stĺpca majú nízku mohutnosť. Tieto sú špeciálne navrhnuté pre dátové sklady a nie je dobré používať bitmapové indexy na vysoko aktualizovateľných alebo transakčných tabuľkách.
Funkčné indexy pochádzajú z Oracle 8i. Tu sa v indexovanom stĺpci používa funkcia. Preto vo funkčnom indexe nie sú údaje stĺpcov zoradené bežným spôsobom. Po použití funkcie zoradí hodnoty stĺpcov. Tieto sú veľmi užitočné, keď sa funkcia WHERE close z výberového dotazu používa.
Indexy s obráteným kľúčom sú veľmi zaujímavým typom indexu. Predpokladajme, že stĺpec obsahuje veľa jedinečných reťazcových údajov, ako napríklad „mestoA“, „mestoB“, „mestoC“atď. Všetky hodnoty majú vzor. Prvé štyri postavy sú rovnaké a ďalšie časti sú zmenené. Takže keď sa v tomto stĺpci vytvorí index kľúča REVERSE, Oracle obráti reťazec a obnoví ho v indexe b-stromu.
Vyššie uvedené typy indexov sú indexy NEZKLUSTROVANÉ. To znamená, že indexované údaje sa ukladajú mimo tabuľky a uchováva sa triedený odkaz na tabuľku.
Čo je to zoskupený index?
Zhlukové indexy sú špeciálnym typom indexov. Údaje ukladá podľa spôsobu fyzického ukladania tabuľkových údajov. Takže pre jednu tabuľku nemôže byť veľa zoskupených indexov. Jedna tabuľka môže mať iba jeden zoskupený index.
Aký je rozdiel medzi zoskupenými a neklastrovanými indexmi?
1. Tabuľka môže mať iba jeden klastrovaný index, ale v jednej tabuľke môže byť až 249 nezhlukovaných indexov.
2. Klastrovaný index sa vytvorí automaticky pri vytvorení primárneho kľúča, ale nezhlukovaný index sa vytvorí pri vytvorení jedinečného kľúča.
3. Logické poradie klastrovaného indexu sa zhoduje s fyzickým poradím údajov tabuľky, ale v nezhlukovaných indexoch nie.