Encyclopedia of Database Systems

2018 Edition
| Editors: Ling Liu, M. Tamer Özsu

Hash Join

  • Jingren ZhouEmail author
Reference work entry
DOI: https://doi.org/10.1007/978-1-4614-8265-9_869


Hash join


The hash join is a common join algorithm in database systems using hashing. The join predicate needs to be an equality join predicate. The classic algorithm consists of two phases: the “build” phase and the “probe” phase. In the “build” phase, the algorithm builds a hash table on the smaller relation, say R, by applying a hash function to the join attribute of each tuple. In the “probe” phase, the algorithm probes the hash table using tuples of the larger relation, say S, to find matches.

Key Points

The classic algorithm is simple, but it requires that the smaller join relation fits into memory. If there is no enough memory to hold all the tuples in R, an additional “partition” phase is required. There are several variants of the classic hash join algorithm. They differ in terms of utilizing memory and handling overflow.

Grace Hash Join The idea behind grace hash join is to hash partition both relations on the join attribute, using the samehash function....

This is a preview of subscription content, log in to check access.

Recommended Reading

  1. 1.
    Mishra P, Eich MH. Join processing in relational databases. ACM Comput Surv. 1992;24(1):63–113.CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Alibaba GroupHangzhouChina

Section editors and affiliations

  • Evaggelia Pitoura
    • 1
  1. 1.Department of Computer Science and EngineeringUniversity of IoanninaIoanninaGreece