Middle
Aké druhy indexov existujú?
sobes.tech AI
Odpoveď od AI
Typy indexov závisia od kontextu ich použitia, zvyčajne v databázach.
Podľa štruktúry uloženia:
- B-strom (B-Tree): Najbežnejší typ, používa sa na zoradené ukladanie dát a rýchle vyhľadávanie rozsahov.
- B+ strom (B+ Tree): Varianta B-stromu, kde sú všetky dáta uložené v listových uzloch, čo optimalizuje sekvenčné čítanie.
- Hash index: Založený na hash tabuľkách, efektívny pre vyhľadávanie presných zhôd, ale nie je vhodný pre vyhľadávanie rozsahov alebo zoradenie.
- R-strom (R-Tree): Používa sa na indexovanie viacrozmerných dát, napríklad geografických súradníc.
Podľa účelu:
- Index primárneho kľúča: Automaticky sa vytvára pre primárny kľúč, zabezpečuje jedinečnosť a slúži ako identifikátor záznamu.
- Sekundárny index: Vytvára sa na jednej alebo viacerých stĺpcoch na zrýchlenie dopytov, ktoré nie sú primárnym kľúčom.
- Unikátny index: Zaručuje jedinečnosť hodnôt v indexovanom stĺpci (alebo kombinácii stĺpcov).
- Full-textový index: Používa sa na vyhľadávanie v texte v rámci stĺpcov.
- Priestorový index: Používa sa na indexovanie priestorových dát.
Podľa spôsobu vytvárania:
- Klastrický index: Určuje fyzické poradie ukladania dát v tabuľke. Tabuľka môže mať iba jeden klastrický index.
- Neklastrický index: Ukladá ukazovatele na skutočné dáta, ktoré môžu byť usporiadané v inom poradí.
Príklad vytvárania indexov v SQL:
-- Vytvorenie bežného indexu
CREATE INDEX idx_lastname ON Employees (LastName);
-- Vytvorenie unikátneho indexu
CREATE UNIQUE INDEX idx_employeeid ON Employees (EmployeeID);
-- Vytvorenie zloženého indexu
CREATE INDEX idx_name_city ON Customers (FirstName, City);