Sobes.tech
Junior

K čemu je indexace a co to je?

sobes.tech AI

Odpověď od AI

Indexace v databázích se používá ke zrychlení vykonávání dotazů SELECT. Index je datová struktura (například B-strom), která obsahuje odkazy na řádky nebo datové bloky v hlavní tabulce.

Při provádění dotazu s podmínkami na indexovaném poli může systém správy databází (DBMS) použít index k rychlému nalezení potřebných dat místo úplného skenování celé tabulky (sekvenční prohlížení všech řádků).

Výhody:

  • Rychlé hledání: Výrazně urychluje operace získávání dat.
  • Rychlé třídění: Pomáhá rychleji provádět třídění podle indexovaných polí.
  • Rychlé spojování: Zrychluje operace JOIN.

Nevýhody:

  • Vyžaduje místo na disku: Index zabírá další místo na disku.
  • Zpomaluje zápisové operace: Při operacích INSERT, UPDATE a DELETE je třeba aktualizovat i index, což může zpomalit tyto operace.
  • Ne vždy je efektivní: Může být neefektivní pro tabulky s malým objemem dat nebo pro dotazy bez podmínek na indexovaná pole.

Výběr polí pro indexaci vyžaduje analýzu vzorů dotazů. Obvykle se indexují pole používaná v podmínkách WHERE, JOIN a ORDER BY.