Spark SQL Структурированные данные Запись атомарных файлов - PullRequest
0 голосов
/ 24 октября 2018

Итак.По сути, это моя проблема.

Я установил структурированные данные Spark SQL

val hiveQ = filteredDF.writeStream
  .trigger(Trigger.ProcessingTime(5, TimeUnit.SECONDS))
  .outputMode("append")
  .format("csv")
  .option("header", "false")
  .option(
    "path",
    conf.getString("dest.hdfs.prefix") + msgType + "/" + tableName)
  .option("checkpointLocation",
          conf.getString("dest.hdfs.temp.prefix") + tableName)
  .start()

Я пытаюсь как-то добиться, чтобы файл, написанный на hdf, был "атомарным"Я имею в виду, поскольку на сервере есть другая работа, которая читает из того же каталога и перемещает файлы из этой папки в другую, я сталкиваюсь с ошибками, потому что Spark добавляет данные в те же файлы.

Есть ли способ иметь что-то вроде файлов .tmp, и только когда он завершает их, пусть меняют расширения на .csv?

Честно говоря, я понятия не имею, как перемещать, может быть раздел как-тоПомоги мне?добавить как какой-то столбец currentTimestamp и использовать его в качестве раздела?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...