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)
}