开发者社区> 问答> 正文

MaxCompute Spark中磁盘空间不足的表现形式是什么?

MaxCompute Spark中磁盘空间不足的表现形式是什么?

展开
收起
xin在这 2021-12-12 23:03:05 771 0
1 条回答
写回答
取消 提交回答
  • 在Executor/Driver的日志中发现了No space left on device错误

    解决方案:

    最简单的方法是直接增加更多的磁盘空间,调大 spark.hadoop.odps.cupid.disk.driver.device_size 如果增加到100g之后依然出现该错误,可能是由于存在数据倾斜,shuffle或者cache过程中数据集中分布在某些block,也可能是单个Executor的shuffle数据量确实过大,可以尝试:

    对数据重分区,解决数据倾斜问题

    增加executor的数量spark.executor.instances需要注意:

    缩小读表并发spark.hadoop.odps.input.split.size

    缩小单个Executor的任务并发spark.executor.cores

    同样由于在JVM启动前就需要挂载磁盘,因此该参数必须配置在spark-defaults.conf文件或者dataworks的配置项中,不能配置在用户代码中

    此外需要注意该参数的单位为g,不能省略g

    很多时候由于用户配置位置有误或者没有带单位g,导致参数实际并没有生效,任务运行依然失败

    2021-12-12 23:03:42
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Hybrid Cloud and Apache Spark 立即下载
Scalable Deep Learning on Spark 立即下载
Comparison of Spark SQL with Hive 立即下载