Есть ли способ обновить боковые входы в Apache Beam? - PullRequest
0 голосов
/ 14 января 2019

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

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

Есть ли способ обновить таблицу поиска и затем передать обновление всем другим работникам?

Обновление: одна из возможностей - использовать управляемый данными триггер, чтобы сигнализировать об окончании текущего окна, когда входящая запись обновляет боковой ввод. Боковой ввод автоматически обновляется в начале следующего окна? В моем случае я получаю боковой вход из внешнего источника.

1 Ответ

0 голосов
/ 15 января 2019

Если таблица соответствия связана с ключом и окном, вы можете попробовать использовать состояние https://beam.apache.org/blog/2017/02/13/stateful-processing.html

В противном случае вам может понадобиться внешнее хранилище данных. База данных или в кэш-памяти. Просто помните о том, что DoFns являются сериализуемыми, и открывать / закрывать соединения нужно осторожно.

...