Apache Beam: настраиваемое управление окнами (windowfn) - PullRequest
0 голосов
/ 05 июня 2018

Гуру - я новичок в Apache Beam и пытаюсь реализовать то, что кажется довольно простым вариантом использования.У меня есть данные по акциям, и мне нужно найти скользящую среднюю цену акций за последние 10 транзакций.

Теперь, поскольку не существует фиксированной продолжительности, в течение которой может происходить 10 транзакций (иногда это может быть несколько миллисекунд, а иногда - несколько секунд), я не думаю, что смогу использоватьоснованный на времениУ меня было два вопроса:

  1. Является ли это верным вариантом использования Beam или мне не хватает точки здесь?
  2. Есть ли достаточно простой / законный / не взломанный способ написать функции / класс Windowing (в Python SDK), которые могут оконные данные на основе количества записей?

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

a.Это действительно взломанное решение, которое кажется таким неподходящим для чего-то вроде луча, который должен быть таким мощным и элегантно спроектированным

b.Какой смысл использовать высокопроизводительный конвейер лучей (без сервера), если вы собираетесь в первую очередь удушить производительность, используя программу для последовательного добавления фальшивых отметок времени

Wonder, если управление окнами внутриЛуч может быть более элегантным решением

...