Ste*_*han 5 scala shuffle dynamic-allocation ceph apache-spark
在 Spark 2.2.0 上执行我的 scala 作业时,我不时遇到以下错误:
引起:java.io.FileNotFoundException:/spark/temporary/spark-927d72b5-154d-4fd5-a18e-4aefc0e05a59/executor-cdd8da76-bb86-4e4c-bf26-55acbcc761bf15cbc761bf/spark-927fd5-a18e-4aefc0e05a59 0f/shuffle_1_0_0.index(没有那个文件或目录)
我的 spark-submit 命令如下所示:
/spark/bin/spark-submit --verbose --conf spark.local.dir=/spark/temporary --conf spark.dynamicAllocation.enabled=true --conf spark.shuffle.service.enabled=true --conf spark.dynamicAllocation.executorIdleTimeout=2m --conf spark.shuffle.service.index.cache.entries=4096 --conf spark.memory.offHeap.enabled=true --conf spark.memory.offHeap.size=3g --conf spark.executor.extraJavaOptions="-XX:ParallelGCThreads=4 -XX:+UseParallelGC" --conf spark.file.transferTo=false --conf spark.shuffle.file.buffer=5MB --conf spark.shuffle.unsafe.file.output.buffer=5MB --conf spark.unsafe.sorter.spill.reader.buffer.size=1MB --conf spark.io.compression.lz4.blockSize=512KB --conf spark.shuffle.registration.timeout=2m --conf spark.shuffle.registration.maxAttempts=5 --conf spark.memory.useLegacyMode=true --conf spark.shuffle.memoryFraction=0.32 --conf spark.storage.memoryFraction=0.18 --conf spark.shuffle.io.maxRetries=10 --conf spark.dynamicAllocation.maxExecutors=3 --conf spark.dynamicAllocation.initialExecutors=3 --conf spark.task.cpus=2 --conf spark.hadoop.mapreduce.fileoutputcommitter.algorithm.version=2 --master spark://spark-master.spark:7077 --deploy-mode client --class control.TimeLensDriver --executor-cores 2 --executor-memory 2g --driver-memory 2g /spark/spark-job.jar /spark/s3Credential.conf 2017-09-08 7 /spark/public-holydays.json /spark/school-holydays.json /spark/de_postal_codes.json prometheus-pushgateway.monitoring-mida:9091
Run Code Online (Sandbox Code Playgroud)
我在独立模式下使用 Spark Master 和 3 个工人。在每个工人上,我启动了外部 shuffle 服务。spark 作业从 Ceph S3 读取数据,将它们转换并以 parquet 格式将它们保存回 Ceph S3。上面错误消息中的 shuffle 文件保存在 worker 本身而不是 Ceph S3 中。
这是一种奇怪的行为,因为在 10 次运行中有 7 次它运行良好。但在其他情况下,作业失败并显示上述错误消息。
到目前为止我测试了一些东西:
我不确定我的spark作业的实现是否有必要解决这个问题,因为在我看来这一定是spark的配置问题。
| 归档时间: |
|
| 查看次数: |
651 次 |
| 最近记录: |