Apache Flink: периодически загружать конфигурацию для функции - PullRequest
0 голосов
/ 06 мая 2019

Допустим, в БД хранятся динамические настройки для фильтрации занесенных в черный список событий из потока.

Функция фильтра использует эту конфигурацию и должна перезагрузить / обновить новую конфигурацию через некоторый интервал времени (10 минут).

В каждом вызове окна можно вызывать функцию для перезагрузки конфигурации и переназначения переменной конфигурации.

ПРИМЕЧАНИЕ. Поскольку этот вызов функции в окне не зависит от данных событий потока, поэтому не нужно буферизовать / удерживать события потока в памяти до тех пор, пока окно не будет запущено.

Есть ли отведения?

1 Ответ

1 голос
/ 06 мая 2019

Вы можете поместить ProcessFunction перед окном, и она будет выполнять фильтрацию. Я предлагаю ProcessFunction, потому что он может иметь таймер, который срабатывает каждые 10 минут, чтобы вызвать перезагрузку / обновление данных конфигурации.

Таким образом, все события, которые достигают окна, будут предварительно отфильтрованы по версии конфигурации выпадающего списка, которая была активна на момент получения каждого события.

Вы можете воспользоваться дополнительными преимуществами потоковой передачи и потоковой передачи изменений конфигурации выпадающего списка по мере их возникновения, а не опрашивать их каждые 10 минут.

...