Batch data processing is growing in scale and importance as organizations continue to adopt data-driven knowledge discovery and decision making. Distributed dataflow systems, such as Spark and Flink, enable data-parallel batch processing of large datasets on clusters of commodity hardware by providing mechanisms for task distribution across cluster nodes and error handling. However, selecting the appropriate computational resources for dataflow jobs is often challenging. For efficient execution, individual resource allocations, such as memory and CPU cores, must meet the job's specific resource demands. Meanwhile, the choices for resource configurations are often plentiful, especially in public clouds, and the current cost of the available resource options can fluctuate. Adherence to user-defined performance targets can further complicate the selection process. This thesis addresses the inherent challenges of selecting suitable computational resources for batch processing jobs, while focusing on limiting the selection overhead. To this end, we present a collaborative system for sharing execution-context-aware performance data and performance models among collaborating users globally. Supplementary to this, we introduce a low-overhead method of job characterization combined with infrastructure profiling, to derive suitable resource configurations when globally available performance data for a given job is still insufficient for accurately predicting its execution duration on a given cluster. All systems and methods have been prototypically implemented, evaluated in public cloud environments using representative distributed dataflow jobs and comprehensive execution traces, and peer-reviewed for presentation at well-established international conferences. Our work contributes to the field of resource management for batch processing jobs by reducing the overhead for learning job performance models and the configuration space, compared with state-of-the-art approaches in related work.
Jonathan Will (Thu,) studied this question.