DoFn.
рабатываю лучевой конвейер для бегуна потока данных. Мне нужна ниже функциональность в моем случае использования.
Прочитайте входные события из темы Кафки. Каждое значение сообщения Кафки получено[userID, Event]
пара.Для каждогоuserID
Мне нужно поддерживатьprofile
и на основании текущегоEvent
возможное обновлениеprofile
возможно. Еслиprofile
обновлено:обновленныйprofile
записывается в выходной поток.СледующийEvent
для этогоuserID
в конвейере следует ссылаться на обновленный профиль.Я думал об использовании предоставленной функциональности состояния в Beam, без зависимости от внешнего хранилища значений ключей для поддержания профиля пользователя. Это возможно с текущей версией луча (2.1.0
) а такжеdataflow
бегун? Если я правильно понимаю, состояние распространяется на элементы в одном окне (т.е. даже дляGlobalWindow
состояние будет отображаться для элементов за один запуск окна, вызванный триггером). Я что-то здесь упускаю?