У меня есть тема Pub / Sub, которая будет периодически (обычно один раз в несколько дней или недель, но иногда чаще) получать пакеты сообщений.Я хотел бы запустить пакетное задание Dataflow, чтобы прочитать эти сообщения, выполнить некоторые преобразования, записать результат в Datastore, а затем прекратить работу.Когда выходит новая партия сообщений, я хочу начать новую работу.Я прочитал документы Apache Beam Python SDK и много вопросов SO, но все еще не уверен в некоторых вещах.
Может ли Pub / Sub IO считываться как часть работы без потоковой передачи?Может ли то же самое задание выполнить запись с помощью Datastore IO (которая в настоящее время не поддерживает потоковую передачу)?Можно ли предположить, что глобальное окно и триггер по умолчанию правильно сообщат заданию, когда прекратить чтение из Pub / Sub (когда пакет сообщений больше не записывается)?Или мне нужно добавить какую-то схему запуска / управления окнами, например, максимальное время или максимальное количество элементов?Будет ли этот триггер при срабатывании сказать глобальному окну закрыться и, следовательно, завершить работу?