Sobes.tech
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);