Title
Distributed Join Algorithms on Thousands of Cores.
Abstract
Traditional database operators such as joins are relevant not only in the context of database engines but also as a building block in many computational and machine learning algorithms. With the advent of big data, there is an increasing demand for efficient join algorithms that can scale with the input data size and the available hardware resources. In this paper, we explore the implementation of distributed join algorithms in systems with several thousand cores connected by a low-latency network as used in high performance computing systems or data centers. We compare radix hash join to sort-merge join algorithms and discuss their implementation at this scale. In the paper, we explain how to use MPI to implement joins, show the impact and advantages of RDMA, discuss the importance of network scheduling, and study the relative performance of sorting vs. hashing. The experimental results show that the algorithms we present scale well with the number of cores, reaching a throughput of 48.7 billion input tuples per second on 4,096 cores.
Year
DOI
Venue
2017
10.14778/3055540.3055545
PVLDB
Field
DocType
Volume
Data mining,Joins,Scheduling (computing),Computer science,Distributed computing,Hash join,Supercomputer,Tuple,Parallel computing,Algorithm,Sorting,Hash function,Big data,Database
Journal
10
Issue
ISSN
Citations 
5
2150-8097
10
PageRank 
References 
Authors
0.45
19
5
Name
Order
Citations
PageRank
Claude Barthels1422.26
Gustavo Alonso25476612.79
Torsten Hoefler32197163.64
Timo Schneider431218.39
Ingo Müller518512.41