Советы по стратегии оконной работы Apache Beam - PullRequest
0 голосов
/ 28 сентября 2019

У меня есть много IoT-устройств, которые отправляют сообщения с переменной скоростью.Используя эти сообщения, мне нужно рассчитать некоторые значения для каждого устройства и доставлять их каждую минуту в фиксированном окне времени-события.У меня есть три минуты, чтобы передать эти значения, поэтому сообщения, которые приходят слишком поздно, отбрасываются (скорость выше правильности).Из-за этого и изменяющейся скорости сообщений у меня не всегда достаточно сообщений для вычисления значений;Я все еще могу выполнять вычисления, используя сообщения за 30 минут до фиксированного окна и 90 секунд (90 секунд выбрано, потому что мне нужно некоторое время, оставленное для обработки в течение 3-минутного срока) после.

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

Я думал о 30-минутном сдвижном окне с интервалом в 1 минуту с задержкой запуска, но тогда я, вероятно, не смогу получить доступ к сообщениям в 90 сек до этого.В качестве альтернативы, я мог бы иметь фиксированные окна за 1 минуту и ​​иметь какое-то другое окно в качестве sideinput.И я предполагаю, что глобальные окна с фильтрацией также возможны.

Поскольку я новичок в Beam, Dataflow, GCP и Java :-), у меня есть трудности, чтобы понять, каковы последствия выбора любой из этих стратегий управления окнами.является.Так что может быть хорошей стратегией управления окнами?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...