You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spark standalone模式下external shuffle服务运行方法及版本支持问题

Spark 3.1 Standalone模式External Shuffle Service支持说明

首先明确结论:Spark 3.1 完全支持Standalone模式下运行External Shuffle Service,没有取消该特性,只是2.x版本中单独的start-shuffle-service.sh启动脚本在3.x版本中被移除了,改为整合到Worker启动逻辑或支持通用命令启动。

两种启动方式
  • 方式1:随Worker节点自动启动(推荐)
    1. 在所有Worker节点的conf/spark-env.sh文件中添加如下配置:
    export SPARK_WORKER_OPTS="-Dspark.shuffle.service.enabled=true -Dspark.shuffle.service.port=7337"
    
    1. 正常启动Standalone集群即可,Worker进程启动时会自动拉起对应的External Shuffle Service进程,无需额外执行启动命令。
  • 方式2:单独启动External Shuffle Service进程
    不需要依赖单独的启动脚本,直接执行通用daemon命令即可:
    ./sbin/spark-daemon.sh start org.apache.spark.deploy.ExternalShuffleService 1
    
作业使用配置

提交作业时,只需在提交参数或conf/spark-defaults.conf中添加如下配置,即可调用Standalone集群的External Shuffle Service:

spark.shuffle.service.enabled true
常见疑问说明

Spark 3.x版本仅保留了Mesos模式专属的start-mesos-shuffle-service.sh脚本,是因为Mesos模式的Shuffle Service实现逻辑和通用版本有差异,并不是Standalone模式不再支持该特性。

内容的提问来源于stack exchange,提问作者Dagang Wei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 17:24:00