Build:Divide R into chunksConstruct a bloom filter for each chunkProbe Join:For each value in S:
Probe all Bloom filters and perform join for qualifying chunks
Evaluation
Radix Hash
4567
0x 0000000123
RH
0x 0000000123
Bloom filter joins in NUMA Hash joins in NUMA
BFJ in modern hardwareBloom filter internals
Using radix hashes improved performance without impacting accuracy As opposed to hash joins, Bloom filter joins scale linearly in
NUMA environments
Joins with low selectivity
Bloom Filters are flexible and light-weight structures
Hash tables require multiple passes, concurrency control and more space
30%
70%
Join Other
Motivation
Bloom Filter JoinsAbdul Wasay, Manos Athanassoulis, Stratos Idreos
Comparing Bloom Filters
Bloom Filter Join
Preliminary ResultsNUMA: Non-uniform Memory access
BFJ perform comparably to hash joins for smaller size of S
Performance comparison of various implementations of BFJs vs. number of BF
1
2
For higher selectivity the performance of BFJ degrade very fast