首页 文章

Spark:Executor Lost Failure(添加groupBy作业后)

提问于
浏览
4

我正在尝试在Yarn客户端上运行Spark工作 . 我有两个节点,每个节点都有以下配置 .
enter image description here

我得到“ExecutorLostFailure(遗失执行人1)” .

我已经尝试了大部分Spark调优配置 . 我已经减少了一个执行者丢失,因为最初我有6个 Actuator 失败 .

这些是我的配置(我的spark-submit):

HADOOP_USER_NAME = hdfs spark-submit --class genkvs.CreateFieldMappings --master yarn-client --driver-memory 11g --executor-memory 11G --total-executor-cores 16 --num-executors 15 --conf“spark .executor.extraJavaOptions = -XX:UseCompressedOops -XX:PrintGCDetails -XX:PrintGCTimeStamps“--conf spark.akka.frameSize = 1000 --conf spark.shuffle.memoryFraction = 1 --conf spark.rdd.compress = true - conf spark.core.connection.ack.wait.timeout = 800 my-data / lookup_cache_spark-assembly-1.0-SNAPSHOT.jar -h hdfs://hdp-node-1.zone24x7.lk:8020 -p 800

我的数据大小为6GB,我在工作中正在做一个小组 .

def process(in: RDD[(String, String, Int, String)]) = {
    in.groupBy(_._4)
}

我是Spark的新手,请帮我找出错误 . 我现在至少要挣扎一周了 .

非常感谢你提前 .

1 回答

  • 1

    弹出两个问题:

    • spark.shuffle.memoryFraction设置为1.为什么选择它而不是保留0.2?这可能会使其他非洗牌行动挨饿

    • 您只有11G可用于16个核心 . 只有11G,我会将你工作中的 Worker 数量设置为不超过3 - 并且最初(为了超越遗嘱执行人丢失问题)只需尝试1.有16个执行者,每个人得到700mb - 这就不足为奇了OOME /执行者丢失了 .

相关问题