Leksykon IT › Bazy danych › Hash join

Hash join

Bazy danych Svenska → Zaktualizowano: 2026-10-06

Algorytm złączenia: buduje tablicę mieszającą z mniejszej relacji (faza budowania), po czym przegląda większą i wyszukuje w niej dopasowania (faza sondowania). O(N+M) — najszybszy dla złączeń równościowych na średnich i dużych danych bez indeksów.

Wymaga pamięci na tablicę mieszającą. Jeśli relacja budująca przekracza work_mem (PostgreSQL), dane trafiają na dysk (hash spill, wiele przebiegów). Preferowany plan w obciążeniach analitycznych (hurtownie danych). Adaptacyjny hash join zaczyna w pamięci i przechodzi na dysk, gdy brakuje RAM-u. Konkurenci: nested loop (dobry dla małych, indeksowanych danych) i merge join (dobry, gdy obie strony są posortowane). Planista PostgreSQL wybiera na podstawie szacowanego kosztu. Hash join nie działa dla predykatów nierównościowych (zakresy, dopasowanie rozmyte).

← Wróć do leksykonu