GCP:在哪里安排写入BigQuery的PubSub订阅者

时间:2018-11-25 11:31:59

标签: python google-bigquery google-cloud-pubsub

我需要使用Python从PubSub写入BigQuery。我测试了一些异步订阅者代码,并且工作正常。但这需要连续运行,我不确定100%在哪里安排。我一直在使用Cloud Composer(Airflow),但看起来并不理想,Dataflow是GCP推荐的一种?正确吗?

还是有一种方法可以从Cloud Composer可靠地运行它?我想我可以运行一次,但是我想确保它再次运行,以防由于某种原因失败。

1 个答案:

答案 0 :(得分:0)

实现此目标的两种最佳方法是使用Cloud Functions或使用Cloud Dataflow。对于Cloud Functions,您将在Pub / Sub主题上设置触发器,然后在代码中写入BigQuery。它看起来与tutorial on streaming from Cloud Storage to BigQuery类似,除了输入是Pub / Sub消息。对于数据流,您可以使用Google-provided, open-source templates to write Pub/Sub messages to BigQuery之一。

如果您的吞吐量很高(每秒数千条消息)并且保持一致,那么

Cloud Dataflow可能会更适合。如果您的吞吐量较低或很少,那么云功能可能更适合。这些解决方案中的任何一个都将持续运行,并在可用时将消息写入BigQuery。