Spark覆盖模式和并发执行

时间:2018-12-04 01:08:36

标签: scala apache-spark

在使用覆盖模式时,我会产生火花:

  .repartition(10)
      .write
      .mode("overwrite")

这可以正常工作,但是由于一些代码错误,我们最终开始同时执行同一作业的多个操作,并最终在s3文件夹中使用重复数据。

  • 有没有办法处理并发和覆盖模式?

如果否,

  • 有没有办法快速失败?

2 个答案:

答案 0 :(得分:0)

  

有没有办法处理并发和覆盖模式?

并非没有更高层次的协调

  

有没有办法快速失败?

请勿使用覆盖

一般约定是“写某处然后重命名到位”,依靠重命名是专门提交工作的快速原子手段。但是由于S3不能那样工作,因此您也不能依赖它。

答案 1 :(得分:0)

在Spark中,默认最大尝试次数为两次。在Spark提交命令--conf spark.yarn.maxAppAttempts = 1

中将此设置为1。