Python "dict" как состояние / контекст для функции ParDo - PullRequest
1 голос
/ 20 марта 2019

Как я могу написать функцию ParDo с некоторым состоянием (максимальная куча) и таймерами, чтобы при каждом срабатывании таймера я мог извлекать / извлекать значения тайм-аута из кучи и выводить их в узлы обработки потока ниже по потоку / ParDo функции?

Итак, чтобы быть ясно; Я хочу, чтобы все передавалось в потоковом режиме, с «глобальным» окном, если хотите, и триггерами / таймерами, которые позволяют мне выводить промежуточное состояние (и очищать его также постоянно). Не могли бы вы дать мне пример состояния + таймер в Python, который делает это?

Исследования выполнены:

  • окна сессий довольно разбиты или настолько сложны в использовании, что я не смог заставить их работать; но точность алгоритма, о которой я забочусь, достаточно проста, если у меня есть таймеры, состояние и нижняя отметка
  • документы говорят, что это не поддерживается, но средство отслеживания проблем говорит, что https://issues.apache.org/jira/browse/BEAM-2687 и https://github.com/apache/beam/pull/6349/files и https://github.com/apache/beam/pull/6433/commits/cf85ded024d27f20ccedb3c135b5e8e785285aec также указывают, что это было сделано; но так как это мой первый питон, мне сложно определить, как его написать, даже с помощью тестовых примеров
...