Spark перезапустить и оптимизировать дамп огромную работу таблицы

Я использую Spark Standalone менеджер кластера. Я сбрасываю огромные столы с runDumpJob метод (см. код ниже). Чтобы запустить несколько runDumpJobпараллельно - звоню runDumpJob из разных тем.

Эта проблема

Некоторые из runDumpJobсбои и не перезапускаются Spark автоматически.

Вопросы

  1. Как я могу перезапустить неудачную работу автоматически?
  2. Как я могу возобновить неудачную работу автоматически с некоторой контрольной точки?

Код

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 ответов

Другие вопросы по тегам