IBM
IBM logoIBM · Feature trail

Spark Performance Optimization

3 posts · Sep 2018 – May 2024

What this trail covers

This post details how to use the Spark `explain` API and Spark UI to analyze and debug Spark SQL query execution plans. It covers understanding physical plans, logical plans, and the impact of configurations like `spark.sql.codegen.wholeStage`. The post also explains how to interpret the output of `explain` and `explain(true)` and how to use the Spark UI's SQL tab for visualization and debugging of completed jobs. This complements existing content on Spark performance optimization by providing specific guidance on reducing network I/O, disk I/O, optimizing CPU utilization, and leveraging in-memory computation. It also covers file formats, parallelism, reducing shuffle, filtering data, caching, join optimization, tuning cluster resources, avoiding expensive operations, handling data skew, and using UDFs effectively.

All IBM trails