Sobes.tech
Junior — Middle

Tudná magyarázni, hogy mi az a hash index és milyen szerepet játszik az adatok keresésének optimalizálásában?

sobes.tech MI

Válasz az MI-től

A hash index egy adatszerkezet, amelyet arra használnak, hogy gyorsan megtalálják a rekordokat egy adatbázisban kulcs alapján. Egy hash függvényen alapul, amely a kulcs értékét indexre (hash) alakítja, így gyorsan megtalálható a szükséges rekord.

A hash index szerepe a keresés optimalizálásában:

  • Lehetővé teszi a keresés, beszúrás és törlés műveletek átlagosan állandó időben (O(1)) történő végrehajtását, ami sokkal gyorsabb, mint a szekvenciális keresés.
  • Különösen hatékony pontos kulcs szerinti keresés esetén, de nem alkalmas tartományi lekérdezésekhez (pl. minden érték keresése egy intervallumban).

Példa: ha van egy felhasználói táblád egyedi azonosítóval, akkor egy hash index ezen az azonosítón gyorsan megtalálja a felhasználót anélkül, hogy végig kellene nézni az összes rekordot.

Go-ban egy egyszerű hash index implementációt lehet bemutatni beépített térkép segítségével:

// Egyszerű hash index példája
felhasznalok := make(map[int]string) // kulcs - felhasználói azonosító, érték - név

// Hozzáadás
felhasznalok[101] = "Ivan"

// Keresés
nev, letezik := felhasznalok[101]
if letezik {
    fmt.Println("Felhasználó megtalálva:", nev)
}