Cluster vs Non Cluster Index
Indexy sú veľmi dôležité v každej databáze. Používajú sa na zlepšenie výkonu získavania údajov z tabuliek. Sú logicky a fyzicky nezávislé od údajov v pridružených tabuľkách. Preto indexy môžu byť zrušené, znovu vytvorené a znovu zostavené bez ovplyvnenia údajov základných tabuliek. Server Oracle môže automaticky udržiavať svoje indexy bez zapojenia DBA po vložení, aktualizácii a odstránení súvisiacich tabuliek. Existuje niekoľko typov indexov. Tu sú niektoré z nich.
1. Indexy B-stromu
2. Bitmapové indexy
3. Funkčné indexy
4. Indexy reverzných kľúčov
5. Indexy klastrov B-stromov
Čo je index bez klastrov?
Z vyššie uvedených typov indexov sú to klastrové indexy.
• Index B-stromu
• Bitmapový index
• Index založený na funkcii
• Indexy reverzných kľúčov
Indexy B-stromov sú najpoužívanejšími typmi databáz indexov. Ak je príkaz CREATE INDEX vydaný v databáze bez zadania typu, server Oracle vytvorí index stromu b. Keď sa vytvorí index b-stromu v konkrétnom stĺpci, server Oracle Server uloží hodnoty stĺpca a uchová odkaz na skutočný riadok tabuľky..
Rastrové indexy sa vytvárajú, keď údaje stĺpcov nie sú príliš selektívne. To znamená, že údaje v stĺpcoch majú nízku mohutnosť. Sú špeciálne navrhnuté pre dátové sklady a nie je dobré používať bitmapové indexy vo vysoko aktualizovateľných alebo transakčných tabuľkách..
Funkčné indexy pochádzajú z Oracle 8i. Funkcia sa tu používa v indexovanom stĺpci. Preto vo funkčnom indexe nie sú údaje stĺpcov usporiadané normálnym spôsobom. Po použití funkcie triedi hodnoty stĺpcov. Sú veľmi užitočné, keď sa pri výbere dotazu použije funkcia.
Indexy reverzných kľúčov sú veľmi zaujímavým typom indexov. Predpokladajme, že stĺpec obsahuje veľa jedinečných údajov o reťazcoch, ako sú „cityA“, „cityB“, „cityC“… atď. Všetky hodnoty majú vzor. Prvé štyri znaky sú rovnaké a ďalšie časti sa menia. Keď sa v tomto stĺpci vytvorí index kľúča REVERSE, Oracle vráti reťazec a obnoví ho v indexe stromov b.
Vyššie uvedené typy indexov sú NEZÁVISLÉ indexy. To znamená, že indexované dáta sú uložené mimo tabuľky a je usporiadaný odkaz na tabuľku.
Čo je klastrovaný index?
Klastrované indexy sú špeciálnym typom indexov. Údaje ukladá podľa spôsobu fyzického ukladania údajov tabuľky. 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 klastrovanými a neskupenými indexmi? 1. Tabuľka môže mať iba jeden zoskupený index, ale v jednej tabuľke môže byť až 249 ne zoskupených indexov. 2. Klastrovaný index sa automaticky vytvorí pri vytvorení primárneho kľúča, ale pri vytvorení jedinečného kľúča sa vytvorí index bez klastrov.. 3. Logické poradie zoskupeného indexu sa zhoduje s fyzickým poradím údajov tabuľky, ale v prípade ne zoskupených indexov. |