Sobes.tech
Junior

Na čo sa používa indexovanie a čo to je?

sobes.tech AI

Odpoveď od AI

Indexovanie v databázach sa používa na zrýchlenie vykonávania dotazov typu SELECT. Index je dátová štruktúra (napríklad B-strom), ktorá obsahuje odkazy na riadky alebo dátové bloky v hlavnej tabuľke.

Pri vykonávaní dotazu s podmienkami na indexovanom poli môže systém správy databáz (DBMS) použiť index na rýchle nájdenie potrebných dát, namiesto prehľadávania celej tabuľky (sekvenčné prezeranie všetkých riadkov).

Výhody:

  • Rýchle vyhľadávanie: Výrazne zrýchľuje operácie získavania dát.
  • Rýchle zoradenie: Pomáha rýchlejšie vykonávať zoradenia podľa indexovaných polí.
  • Rýchle spojenie: Zrýchľuje operácie JOIN.

Nevýhody:

  • Vyžaduje miesto na disku: Index zaberá dodatočné miesto na disku.
  • Spomaľuje zápisové operácie: Pri operáciách INSERT, UPDATE a DELETE je potrebné aktualizovať aj index, čo môže spomaliť tieto operácie.
  • Nie vždy je efektívny: Môže byť neefektívny pre tabuľky s malým objemom dát alebo pre dotazy bez podmienok na indexované polia.

Výber polí pre indexovanie vyžaduje analýzu vzorov dotazov. Zvyčajne sa indexujú polia používané v podmienkach WHERE, JOIN a ORDER BY.