В реальном времени и пакетная обработка вместе с несколькими окнами для пакетной обработки в конвейере потока данных - PullRequest
0 голосов
/ 29 апреля 2019

Я пытаюсь написать какой-нибудь конвейер потока данных, конвейер будет

  1. Чтение из потоковых данных pubsub.
  2. Выполнение некоторой обработки в реальном времени и вывод большого запроса.
  3. В то же время используйте один и тот же источник pubsub для некоторой агрегации, используя несколько скользящих окон разного размера независимо.Агрегация из разных окон не влияет друг на друга.Результаты агрегации будут выводиться на большой запрос.
  4. Мой вопрос таков: могу ли я написать все это внутри одного и того же потока данных?Или, по крайней мере, я мог бы написать все агрегаты в одном конвейере?

Я новичок в потоке данных.Не уверен, что он может сделать.

Что-то, о чем я думаю:

pipeline.create()
pcollection = pubsub.read()
pcollection.apply(someRealtimeProcess()).apply(writeToBigQuery())
pcollection.apply(firstWindow()).apply(wrtiteToBigQuery)
pcollection.apply(secondWindow()).apply(writeToBigQuery)
pipeline.run()
...