When the Spark system runs applications that contain a shuffle process, an executor process also writes shuffle data and provides shuffle data for other executors in addition to running tasks. If the executor is heavily loaded and GC is triggered, the executor cannot provide shuffle data for other executors, affecting task running.
The external shuffle service is an auxiliary service in NodeManager. It captures shuffle data to reduce the load on executors. If GC occurs on an executor, tasks on other executors are not affected.
Parameter |
Default Value |
Changed To |
---|---|---|
spark.shuffle.service.enabled |
false |
true |
To use the External Shuffle Service function on the Spark2x client, you need to download and install the Spark2x client again.