Enel: Context-Aware Dynamic Scaling of Distributed Dataflow Jobs using Graph Propagation
arXiv:2108.12211 · doi:10.1109/IPCCC51483.2021.9679361
Abstract
Distributed dataflow systems like Spark and Flink enable the use of clusters for scalable data analytics. While runtime prediction models can be used to initially select appropriate cluster resources given target runtimes, the actual runtime performance of dataflow jobs depends on several factors and varies over time. Yet, in many situations, dynamic scaling can be used to meet formulated runtime targets despite significant performance variance. This paper presents Enel, a novel dynamic scaling approach that uses message propagation on an attributed graph to model dataflow jobs and, thus, allows for deriving effective rescaling decisions. For this, Enel incorporates descriptive properties that capture the respective execution context, considers statistics from individual dataflow tasks, and propagates predictions through the job graph to eventually find an optimized new scale-out. Our evaluation of Enel with four iterative Spark jobs shows that our approach is able to identify effective rescaling actions, reacting for instance to node failures, and can be reused across different execution contexts.
8 pages, 5 figures, 3 tables
References in corpus (2)
Cited by in corpus (5)
- Get Your Memory Right: The Crispy Resource Allocation Assistant for Large-Scale Data Processing
- Training Data Reduction for Performance Models of Data Analytics Jobs in the Cloud
- Perona: Robust Infrastructure Fingerprinting for Resource-Efficient Big Data Analytics
- Collaborative Cluster Configuration for Distributed Data-Parallel Processing: A Research Overview
- Experimentally Evaluating the Resource Efficiency of Big Data Autoscaling