Skew-Aware Collective Communication for MapReduce Shuffling

Harunobu DAIKOKU  Hideyuki KAWASHIMA  Osamu TATEBE  

IEICE TRANSACTIONS on Information and Systems   Vol.E102-D   No.12   pp.2389-2399
Publication Date: 2019/12/01
Publicized: 2019/07/29
Online ISSN: 1745-1361
DOI: 10.1587/transinf.2019PAP0019
Type of Manuscript: Special Section PAPER (Special Section on Parallel and Distributed Computing and Networking)
Category: Computer System
MapReduce,  Shuffle,  Skew,  libfabric,  Intel Omni-Path,  

Full Text: PDF>>
Buy this Article

This paper proposes and examines the three in-memory shuffling methods designed to address problems in MapReduce shuffling caused by skewed data. Coupled Shuffle Architecture (CSA) employs a single pairwise all-to-all exchange to shuffle both blocks, units of shuffle transfer, and meta-blocks, which contain the metadata of corresponding blocks. Decoupled Shuffle Architecture (DSA) separates the shuffling of meta-blocks and blocks, and applies different all-to-all exchange algorithms to each shuffling process, attempting to mitigate the impact of stragglers in strongly skewed distributions. Decoupled Shuffle Architecture with Skew-Aware Meta-Shuffle (DSA w/ SMS) autonomously determines the proper placement of blocks based on the memory consumption of each worker process. This approach targets extremely skewed situations where some worker processes could exceed their node memory limitation. This study evaluates implementations of the three shuffling methods in our prototype in-memory MapReduce engine, which employs high performance interconnects such as InfiniBand and Intel Omni-Path. Our results suggest that DSA w/ SMS is the only viable solution for extremely skewed data distributions. We also present a detailed investigation of the performance of CSA and DSA in various skew situations.