Для потока данных потребуется источник, из которого можно получить данные. Если вы используете потоковый конвейер, вы можете использовать различные параметры в качестве источника , и каждый из них будет иметь свои собственные характеристики, которые могут соответствовать вашему сценарию.
С Pub / Sub Вы можете легко публиковать sh события, используя клиентскую библиотеку или напрямую API для topi c, и это будет гарантировать по крайней мере один раз доставку этого сообщения.
Когда вы соединяете его с потоковым конвейером потока данных, вы можете иметь отказоустойчивую архитектуру (Pub / Sub будет продолжать посылать сообщение до тех пор, пока поток данных не подтвердит, что он его обработал) и обработку почти в реальном времени. Кроме того, Dataflow может использовать метрики Pub / Sub для увеличения или уменьшения в зависимости от количества сообщений в заделе.
Наконец, бегунок Dataflow использует оптимизированную версию соединителя PubSubIO, который предоставляет дополнительные функции. Я предлагаю проверить эту документацию , которая описывает некоторые из этих функций.