Waiting for input calculation...
Executors
--
Cores / Ex
--
RAM / Ex
--
Parallelism
--
Adjust specs and click calculate...
Choosing the right executor memory and cores is crucial. The optimal number of executor cores typically falls between 3 to 7 (with 5 being the sweet spot). Here's why "Tiny" or "Fat" approaches fail, and how a "Balanced" approach maximizes throughput.
E.g., 1 Core per Executor = 16 Executors per Node
E.g., 16 Cores per Executor = 1 Executor per Node
E.g., 5 Cores per Exec = 3 Executors per Node
--executor-cores=5 is the established sweet spot for maintaining excellent HDFS throughput.
We must reserve 1 core per node for background processes (OS, DataNode, NodeManager daemons).
Assign 5 cores per executor. Then reserve 1 total executor for the ApplicationMaster.
Divide RAM among executors, then deduct ~15% for off-heap and YARN overhead.
Final Result: --num-executors 29 | --executor-memory 18G | --executor-cores 5