Sobes.tech
Middle

Milyen típusú indexek vannak az adatbázisokban, mik a különbségek közöttük, és hogyan döntöd el, mikor alkalmazod őket?

sobes.tech MI

Válasz az MI-től

Az adatbázisokban különböző típusú indexek léteznek, amelyek közül a főbbek:

  • B-Tree index — a legelterjedtebb, gyors keresésre, rendezésre és tartományi lekérdezésekhez alkalmas.
  • Hash index — hatékony pontos kereséshez kulcs szerint, de nem támogat tartományi lekérdezéseket.
  • Bitmap index — kis számú egyedi értékkel rendelkező oszlopokra használják, jó analitikus lekérdezésekhez.
  • Teljes szöveg index — gyors szöveges kereséshez.

Struktúrájukban és használati forgatókönyveikben különbségek:

  • A B-Tree univerzális.
  • A Hash gyorsabb pontos egyezés esetén.
  • A Bitmap alacsony kardinalitásnál hatékony.

Mikor alkalmazzuk:

  • Az indexeket olyan oszlopokra helyezzük, amelyeket gyakran szűrnek, rendeznek vagy összekapcsolnak.
  • Ne indexeljünk túl sok oszlopot, hogy ne lassítsuk az beszúrás vagy frissítés műveleteket.
  • Elemezze a lekérdezés terveket, hogy megértse, mely indexekre van szükség.

Példa PostgreSQL-ben:

CREATE INDEX idx_users_email ON users(email);

Ez az index felgyorsítja a felhasználók keresését email szerint.