Sobes.tech
Junior — Middle

Milyen esetekben érdemes hash-alapú indexet alkalmazni PostgreSQL adatbázisban?

sobes.tech MI

Válasz az MI-től

A PostgreSQL-ben akkor célszerű hash-alapú indexet használni, amikor nagyon gyorsan kell egy adott oszlopon az egyenlőség (=) műveleteket végrehajtani. Ezek az indexek hatékonyak a pontos egyezések keresésében, például egy egyedi azonosító vagy kulcs alapján.

Azonban figyelembe kell venni:

  • A hash indexek nem támogatják a tartomány alapú kereséseket (<, >, BETWEEN).
  • A PostgreSQL újabb verzióiban (10-től kezdődően) a hash indexek megbízhatóbbá váltak, és támogatják a WAL-t (tranzakciós napló).
  • A legtöbb esetben jobb a B-trees index használata, mivel sokoldalúbb.

Hash index használatának példája:

CREATE INDEX idx_hash_userid ON users USING hash(user_id);

Ideális, ha gyakran futtat ilyen típusú lekérdezéseket:

SELECT * FROM users WHERE user_id = 12345;

Ha tartomány alapú lekérdezések vagy rendezés szükséges, akkor jobb a B-trees indexet választani.