我们正在使用 Spark 运行批处理,并使用 spark-submit
来提交带有选项的作业
--deploy-mode cluster \
--master yarn-cluster \
我们基本上采用 csv 文件并对这些文件进行一些处理,然后从中创建 Parquet 文件。我们使用配置文件在同一个 Spark Submit 命令中运行多个文件。现在假设我们正在处理 10 个文件,如果进程失败,假设文件 6 Spark 尝试再次重新运行该进程,它将处理直到文件 6 为止的所有文件,并在之前为所有这 5 个文件写入重复记录失败。我们正在创建 Parquet 文件,因此我们无法控制 Spark 如何命名这些文件,但它总是创建唯一的名称。
有没有办法可以更改 Spark 属性以不重新执行失败的进程?
最佳答案
属性spark.yarn.maxAppAttempts
在我的例子中有效,我将其值设置为1,如下所示在我的spark提交命令中:
--conf“spark.yarn.maxAppAttempts=1”
关于apache-spark - 如何防止在集群模式下运行spark Submit两次失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43102314/