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.