EN - FR - DE - ES - IT - PT -

LexiconDream

📇 Index

Datová struktura, která urychluje načítání záznamů v databázi.

Index

Index urychluje vyhledávání dat. Bez něj databáze prohledává každý řádek a hledá odpovídající záznamy. S indexem se přeskočí přímo na příslušné řádky. Index je samostatná datová struktura, která mapuje hodnoty na umístění. Index knih funguje stejným způsobem. Vyhledáte termín a najdete číslo stránky. Nečtete každou stránku, abyste ho našli. Databáze dělá totéž.

Indexy mají svou cenu. Zabírají místo. Zpomalují vkládání, aktualizace a mazání, protože i index se musí aktualizovat. Každý zápis se stává dražším. Výhodou je rychlejší čtení. Pro úlohy s velkým čtením jsou indexy nezbytné. Pro úlohy s velkým zápisem příliš mnoho indexů snižuje výkon. Výběr sloupců k indexování vyžaduje pochopení vzorců dotazů. Sloupce použité v klauzulích WHERE, podmínkách JOIN a klauzulích ORDER BY jsou dobrými kandidáty. Sloupce s nízkou mohutností, jako je booleovský příznak, jsou špatnými kandidáty, protože index vyhledávání příliš nezužuje. Kompozitní indexy pokrývají více sloupců a mohou obsluhovat dotazy, které filtrují podle několika polí. Pořadí sloupců v kompozitním indexu je důležité. Databáze může použít kompozitní index pro dotazy na úvodním sloupci, ale ne pouze na koncových sloupcích. Návrh indexu je kompromis. Cílem je zrychlit dotazy, na kterých záleží, aniž by se zápisy zpomalily více, než je nutné.

Typy indexů

Index je zkratka. Vyměňuje rychlost zápisu a úložiště za rychlost čtení. Používejte ho tam, kde na čtení záleží nejvíce.

Comments (3)

  1. Derek S.
    Database indexes are a tradeoff. They speed up reads but slow down writes and take up space. Knowing when to add one is an art.
  2. Pam L.
    A primary key automatically creates an index. That's something a lot of beginners don't realize.
  3. Chris T.
    Without an index the database has to scan every row. With one it can jump straight to the data. Huge performance difference.

Leave a comment