#java #apache-flink #flink-streaming #flink-batch
Вопрос:
Я практикуюсь в чтении файлов с помощью механизма пакетной обработки flink на компьютере с Windows 10.
Я скачал flink-1.7.2-bin-hadoop24-scala_2.12.tgz с официального сайта flink и выполнил запуск-cluster.bat .
Я загрузил банку через пользовательский интерфейс Flink и смог выполнить задание, но оно было выполнено за считанные секунды.
Я хочу, чтобы работа выполнялась непрерывно, чтобы я мог протестировать свой вариант использования .
Можете ли вы подсказать мне возможные пути достижения этой цели?
Комментарии:
1. Что значит постоянно выполнять пакетное задание?
2. @DavidAnderson: Работа должна выполняться непрерывно до тех пор, пока я не остановлю ее вручную.
3. Почему бы вместо этого не запустить его с помощью API потока данных?
Ответ №1:
В Flink пакетные задания выполняются до тех пор, пока не будут обработаны все их входные данные, после чего они завершаются и завершаются. Если вы хотите непрерывной обработки, то вам следует либо
- используйте некоторую автоматизацию развертывания (за пределами Flink), чтобы организовать создание новых пакетных заданий по мере необходимости, или
- реализовать потоковое задание
В вашем случае это звучит так, как будто вы, возможно, ищете FileProcessingMode.PROCESS_CONTINUOUSLY
опцию на StreamExecutionEnvironment.readfile
— смотрите документы для получения дополнительной информации.
Комментарии:
1. Есть ли у вас какая-нибудь примерная программа для ее использования?
2. К пункту № 2 «реализация потоковой работы» : какая реализация может быть выполнена. Не могли бы вы поподробнее?