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.