Identify memory bottlenecks and resolve executor OOM errors in Spark before diving into full pipeline tuning.