Improving I/O Performance Through Colocating Interrelated Input Data and Near-Optimal Load Balancing

accepted for publication
  • Most distributed file systems assign new files to storage servers randomly. While working well in some situations, this does not help to optimize the input performance for most MapReduce computations’ data access patterns. In this work, we consider an access pattern where input files are partitioned into groups of heterogeneous size. Each group is accessed by exactly one process. We design and implement a data placement strategy that places these file groups together on the same storage server. This colocation approach is combined with near-optimal storage load balancing. To do so, we use a classical scheduling approximation algorithm to solve the NP hard group assignment problem. We argue that local processing is not only beneficial because of reduced network traffic, but especially because it imposes an even resource schedule. Our experiments, based on the parallel processing of remote sensing images, reveal an enormous reduction of network traffic and up to 39 % faster input read times. Further, simulations show that our approximate assignments limit storage server imbalances to less than 5 % above the theoretical minimum, in contrast to more than 85 % with random assignment.
Author:Felix SeibertORCiD, Mathias Peters, Florian Schintke
Document Type:Article
Parent Title (English):Proceedings of the IPDPSW; Fourth IEEE International Workshop on High-Performance Big Data, Deep Learning, and Cloud Computing (HPBDC)
First Page:448
Last Page:457
Year of first publication:2018
Best Paper Award