Сохраните файл из кода, чтобы он был доступен каждому исполнителю - PullRequest
0 голосов
/ 19 апреля 2019

У меня есть файл в каком-то отдаленном месте.

Я бы хотел получить это. Прямо сейчас я делаю это, используя spark.sparkContext.wholeTextFiles("...").map(_._2)

Затем я сохраняю его локально, используя: ...toDF.write.mode(SaveMode.Overwrite).text("./localFile.txt")

Но при попытке прочитать это от исполнителей я получаю java.io.FileNotFoundException.

Есть идеи, как сделать файл доступным для всех исполнителей?

Я тоже пытался что-то вроде:

Spark.range(0, 1000000).repartition(100000)
.mapPartitions{ _ =>
  // write files using java classes
  Seq(1).toIterator
}

но я получаю сообщение об ошибке сериализации для классов файлов.

Я знаю, что могу broadcast содержимое файла, но я использую стороннюю библиотеку, которая ожидает файл в заданном месте, поэтому сейчас это не вариант.

Спасибо.

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