Efficient Fuzz Testing for Apache Spark Using Framework Abstraction

03/08/2021
by   Qian Zhang, et al.
0

The emerging data-intensive applications are increasingly dependent on data-intensive scalable computing (DISC) systems, such as Apache Spark, to process large data. Despite their popularity, DISC applications are hard to test. In recent years, fuzz testing has been remarkably successful; however, it is nontrivial to apply such traditional fuzzing to big data analytics directly because: (1) the long latency of DISC systems prohibits the applicability of fuzzing, and (2) conventional branch coverage is unlikely to identify application logic from the DISC framework implementation. We devise a novel fuzz testing tool called BigFuzz that automatically generates concrete data for an input Apache Spark program. The key essence of our approach is that we abstract the dataflow behavior of the DISC framework with executable specifications and we design schema-aware mutations based on common error types in DISC applications. Our experiments show that compared to random fuzzing, BigFuzz is able to speed up the fuzzing time by 1477X, improves application code coverage by 271 errors. The demonstration video of BigFuzz is available at https://www.youtube.com/watch?v=YvYQISILQHs feature=youtu.be.

READ FULL TEXT
03/22/2019

On Testing of Data-Intensive Software Systems

Today's software systems like cyber-physical production systems or big d...
03/22/2019

On Testing Data-Intensive Software Systems

Today's software systems like cyber-physical production systems or big d...
08/05/2019

Toward Efficient In-memory Data Analytics on NUMA Systems

Data analytics systems commonly utilize in-memory query processing techn...
08/07/2018

MaRe: Container-Based Parallel Computing with Data Locality

Application containers are emerging as key components in scientific proc...
01/13/2022

FuzzingDriver: the Missing Dictionary to Increase Code Coverage in Fuzzers

We propose a tool, called FuzzingDriver, to generate dictionary tokens f...
07/26/2022

FP4: Line-rate Greybox Fuzz Testing for P4 Switches

Compared to fixed-function switches, the flexibility of programmable swi...
07/10/2020

COBRA: Compression via Abstraction of Provenance for Hypothetical Reasoning

Data analytics often involves hypothetical reasoning: repeatedly modifyi...