Spark重启并优化转储巨大的表工作

时间:2017-03-15 13:09:28

标签: java apache-spark apache-spark-sql spark-dataframe apache-spark-standalone

我正在使用Spark Standalone集群管理器。我使用runDumpJob方法(参见下面的代码)转储了一个巨大的表格。要并行启动一些runDumpJob - 我从不同的线程调用runDumpJob

问题

部分runDumpJob失败并且自动重新启动。

问题

  1. 如何自动重启失败的作业?
  2. 如何从某个检查点自动恢复失败的作业?
  3. 代码

    public void runDumpJob(SparkSession sparkSession, MyParams params) {
    
        final Dataset<Row> dataset = sparkSession
                .sqlContext()
                .read()
                .format("jdbc")
                .option("url", params.getJdbcUrl())
                .option("driver", params.getDriver())
                .option("dbtable", params.getSqlQuery())
                .option("fetchSize", params.getJobParam("fetchSize"))
                .load();
        dataset
            .coalesce(1)
            .write()
            .parquet(params.getPath());
    }
    

0 个答案:

没有答案