Как реализовать однократную обработку при чтении чтения из каталога с использованием Spark Structured Streaming? - PullRequest
0 голосов
/ 25 февраля 2019

Я бы хотел использовать концепцию потоковой обработки для чтения файлов из локального каталога и последующей публикации в Apache Kafka.Я думал об использовании структурированной потоковой передачи Spark.

Как реализована контрольная точка при сбое потоковой передачи после чтения 50 строк файла.Будет ли он начинаться с 51-й строки файла при следующем запуске или снова будет считываться с начала файла?

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

1 Ответ

0 голосов
/ 26 февраля 2019

при сбое потоковой передачи после чтения 50 строк файла.Будет ли он начинаться с 51-й строки файла при запуске в следующий раз или будет снова считываться с начала файла.

Либо весь файл полностью обработан, либо его нет вообще.Вот как FileFormat работает в целом в Spark SQL и имеет мало общего с Spark Structured Streaming, в частности (поскольку они совместно используют базовую инфраструктуру выполнения).начало файла. "

Это также говорит о том, что при обработке файлов в Spark Structured Streaming нет концепции единой строки.Вы обрабатываете потоковый DataFrame, который представляет собой целый файл (или даже пару файлов) одновременно, и хотите ли вы обрабатывать набор данных построчно или полностью, решать вам, разработчик Spark.

Кроме того, возникнут ли у нас какие-либо проблемы, если мы будем использовать контрольные точки в структурированной потоковой передаче при любом обновлении или любом изменении в коде.

Теоретически этого не следует делать.Целью нового механизма контрольных точек в Spark Structured Streaming (по сравнению с устаревшей Spark Streaming) было обеспечение возможности перезапусков и обновлений более удобным способом.Контрольная точка использует немного информации (обычно хранится в файлах JSON) для возобновления обработки с точки последней успешной контрольной точки.

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