5/16/2024 · Sunitha Kambhampati
What this post added
This post details performance optimization guidelines for Apache Spark applications. It covers reducing network and disk I/O, improving CPU utilization, and leveraging in-memory computation. Key areas discussed include: lazy loading behavior, file formats (Parquet, ORC), parallelism tuning (partitions, tasks), reducing shuffle operations, filtering data early, appropriate caching strategies, optimizing joins (BroadcastHashJoin), tuning cluster resources, avoiding expensive operations (e.g., select *, unnecessary count), addressing data skew, and using efficient UDFs (pandas UDFs).