Emergency management weather-alert joins spill memory during peak storms. What compute change should the data engineer make first?
Select an answer to reveal the explanation.
Short Explanation
When joins spill, the cluster is basically running out of desk space—give the workers a bigger memory desk, not a smaller one. Memory-optimized node types and enough capacity keep storm-alert joins in memory instead of thrashing to disk.
Full Explanation
When emergency-management weather-alert joins spill memory during peak storms, the first compute change is to select a larger memory-optimized worker node type and increase cluster capacity for the join-heavy workload. Spill means executors are writing shuffle/join intermediates to disk because RAM is insufficient; memory-optimized SKUs and enough workers/executor memory keep civic alert joins in memory, reduce spill I/O, and restore timely storm-response SLAs. Sizing for the peak join shape is the direct remediation implied by the symptom.
Disabling Photon and forcing single-threaded Python UDFs worsens CPU efficiency and removes vectorized acceleration that often helps SQL joins; it does not add memory headroom and can amplify storm-time latency. Switching all storm joins to a tiny SQL warehouse with one concurrent query slot throttles concurrency and may still lack the memory profile needed for large Spark join spills if the workload belongs on a properly sized job/all-purpose cluster. Removing autoscaling and permanently setting workers to one core node deliberately under-provisions capacity at the worst possible moment—peak storm load—guaranteeing more spill and slower alerts.
Exam caveat: memory spill points to memory/capacity first; do not jump to exotic runtime changes or Photon toggles as the primary fix when the stem states spill. Photon can help query performance but is not a substitute for undersized executors. Also distinguish driver OOM from executor spill—worker memory-optimized types address executor-side join pressure called out here.
Operational check: inspect Spark UI for spill metrics on the weather-alert job, switch the cluster policy to memory-optimized workers with a higher max workers bound, re-run a storm-peak replay, and confirm spill drops and alert latency meets emergency-management targets before the next weather event.
Prefer to study offline? Printable PDF study book + test engine ($7.50, unofficial). These questions stay free here.