Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 数据流是否应该使用发布/子主题或订阅中的事件?_Google Cloud Platform_Google Bigquery_Google Cloud Pubsub_Dataflow - Fatal编程技术网

Google cloud platform 数据流是否应该使用发布/子主题或订阅中的事件?

Google cloud platform 数据流是否应该使用发布/子主题或订阅中的事件?,google-cloud-platform,google-bigquery,google-cloud-pubsub,dataflow,Google Cloud Platform,Google Bigquery,Google Cloud Pubsub,Dataflow,我希望使用数据流将事件从PubSub流到BigQuery。我看到在GCP中有两个这样做的模板:一个是数据流从主题读取消息的模板;还有一个是订阅的 在这里使用订阅,而不仅仅是使用主题中的事件,有什么好处 核心概念 主题:发布者向其发送消息的命名资源 Subscription:一个命名资源,表示来自单个特定主题的消息流,该消息流将传递给订阅服务器 应用程序 根据核心概念,区别非常简单: 当您想要将消息从数据流发布到发布/订阅时,请使用一个主题 如果要使用来自数据流中发布/订阅的消息,请使用订阅 因此

我希望使用数据流将事件从PubSub流到BigQuery。我看到在GCP中有两个这样做的模板:一个是数据流从主题读取消息的模板;还有一个是订阅的

在这里使用订阅,而不仅仅是使用主题中的事件,有什么好处

核心概念

主题:发布者向其发送消息的命名资源

Subscription:一个命名资源,表示来自单个特定主题的消息流,该消息流将传递给订阅服务器 应用程序

根据核心概念,区别非常简单:

当您想要将消息从数据流发布到发布/订阅时,请使用一个主题

如果要使用来自数据流中发布/订阅的消息,请使用订阅

因此,在你的情况下,去订阅

更多信息:

请注意,发布/订阅使用自己的消息存储管理主题。然而,当您希望在BigQuery中移动这些消息并最终执行自己的分析时,BigQuery模板的云发布/子主题特别有用

BigQuery模板的云发布/订阅主题是一个流式管道 从云发布/子主题读取JSON格式的消息 将它们写入BigQuery表。您可以使用该模板作为快捷方式 将云发布/订阅数据移动到BigQuery的解决方案。模板如下所示: 来自云发布/订阅的JSON格式的消息,并将其转换为 BigQuery元素

免责声明:评论和意见是我自己的,不是我的雇主的观点

核心概念

主题:发布者向其发送消息的命名资源

Subscription:一个命名资源,表示来自单个特定主题的消息流,该消息流将传递给订阅服务器 应用程序

根据核心概念,区别非常简单:

当您想要将消息从数据流发布到发布/订阅时,请使用一个主题

如果要使用来自数据流中发布/订阅的消息,请使用订阅

因此,在你的情况下,去订阅

更多信息:

请注意,发布/订阅使用自己的消息存储管理主题。然而,当您希望在BigQuery中移动这些消息并最终执行自己的分析时,BigQuery模板的云发布/子主题特别有用

BigQuery模板的云发布/订阅主题是一个流式管道 从云发布/子主题读取JSON格式的消息 将它们写入BigQuery表。您可以使用该模板作为快捷方式 将云发布/订阅数据移动到BigQuery的解决方案。模板如下所示: 来自云发布/订阅的JSON格式的消息,并将其转换为 BigQuery元素


免责声明:评论和意见是我自己的,不是我雇主的观点。

BigQuery主题和订阅BigQuery模板都会使用Pub/Sub的消息并将其流式传输到BigQuery中

如果您使用Topic to BigQuery模板,Dataflow将在后台为您创建一个订阅,用于读取指定主题。如果使用BigQuery模板订阅,则需要提供自己的订阅

您可以使用Subscription to BigQuery templates通过创建从同一主题读取的多个订阅连接的BigQuery管道来模拟Topic to BigQuery template的行为


对于新部署,首选使用BigQuery模板订阅。如果使用Topic to BigQuery模板停止并重新启动管道,将创建新的订阅,这可能会导致您错过管道关闭时发布的某些消息。BigQuery模板订阅没有这个缺点,因为即使管道重新启动后,它也使用相同的订阅。

BigQuery主题和BigQuery模板订阅都使用来自发布/订阅的消息,并将它们流式传输到BigQuery中

如果您使用Topic to BigQuery模板,Dataflow将在后台为您创建一个订阅,用于读取指定主题。如果使用BigQuery模板订阅,则需要提供自己的订阅

您可以使用Subscription to BigQuery templates通过创建从同一主题读取的多个订阅连接的BigQuery管道来模拟Topic to BigQuery template的行为

对于新部署,首选使用BigQuery模板订阅。如果使用Topic to BigQuery模板停止并重新启动管道,将创建新的订阅,这可能会导致您错过管道关闭时发布的某些消息。对bigtquery的订阅
emplate没有这个缺点,因为即使在管道重新启动后,它也使用相同的订阅。

谢谢,@vdenotaris。我仍然不确定为什么会有一个模板可以直接从数据流中的主题中使用消息。在这种情况下,请参见?@RichAshworth Pub/Sub使用消息存储来管理主题。不过,如果您希望将这些消息保存在BigQuery中以供进一步分析,例如,即使在ETL作业之后,您提到的模板也很有用。谢谢,@vdenotaris。我仍然不确定为什么会有一个模板可以直接从数据流中的主题中使用消息。在这种情况下,请参见?@RichAshworth Pub/Sub使用消息存储来管理主题。但是,如果您希望将这些消息也保存在BigQuery中以供进一步分析,例如,即使在ETL作业之后,您提到的模板也很有用。