Google cloud dataflow PubsubIO.Read+;一次交货

Google cloud dataflow PubsubIO.Read+;一次交货,google-cloud-dataflow,apache-beam,google-cloud-pubsub,Google Cloud Dataflow,Apache Beam,Google Cloud Pubsub,使用Pubsub自动应用的字段是否可以实现一次交付?或者这甚至是一种默认行为 似乎这在publisubio.Read.withIdAttribute中通常是可能的,但我无法控制已发布的消息,所以我希望使用messageId字段 在旧版本中,它指出: 此外,您可以实现对发布/订阅消息流的一次处理,因为PubsubIO基于自定义消息标识符或发布/订阅分配的标识符消除重复消息 最后一部分暗示,读取的默认行为可能会将messageId用于一次传递目的。是的,1.x和2.2在这方面是相同的。两者都提供了精

使用Pubsub自动应用的字段是否可以实现一次交付?或者这甚至是一种默认行为

似乎这在
publisubio.Read.withIdAttribute
中通常是可能的,但我无法控制已发布的消息,所以我希望使用messageId字段

在旧版本中,它指出:

此外,您可以实现对发布/订阅消息流的一次处理,因为PubsubIO基于自定义消息标识符或发布/订阅分配的标识符消除重复消息


最后一部分暗示,读取的默认行为可能会将messageId用于一次传递目的。

是的,1.x和2.2在这方面是相同的。两者都提供了精确的一次性处理语义。Pubsub消息id在这两种情况下都使用


请注意,一次“处理”和一次“交付”并不总是相同的。交付通常意味着接收到外部系统,这不在数据流管道的范围内。当管道中有重试时,接收器可能具有重复写入

是的,1.x和2.2在这方面是相同的。两者都提供了精确的一次性处理语义。Pubsub消息id在这两种情况下都使用


请注意,一次“处理”和一次“交付”并不总是相同的。交付通常意味着接收到外部系统,这不在数据流管道的范围内。当管道中有重试时,接收器可能具有重复写入

您是否碰巧有指向任何文档的链接,这些文档说明了它将在何处使用messageId进行一次处理?另外,如果默认情况下它只提供一次处理,那么使用
publisubio.Read.withIdAttribute
有什么意义呢?我确实找到了描述我所指行为的方法。再次谢谢你说得对。ApacheBeam中的默认文档引用了开源PubsubIO,并不是很有用[1]。数据流管道使用它自己的实现(带有一点服务器端组件)。我将提交关于如何与用户通信的bug。[1] :我提交了一份内部错误报告,以改进PubSubIO的文档。您是否碰巧有指向任何文档的链接,其中说明了它将在何处使用messageId进行一次处理?另外,如果默认情况下它只提供一次处理,那么使用
publisubio.Read.withIdAttribute
有什么意义呢?我确实找到了描述我所指行为的方法。再次谢谢你说得对。ApacheBeam中的默认文档引用了开源PubsubIO,并不是很有用[1]。数据流管道使用它自己的实现(带有一点服务器端组件)。我将提交关于如何与用户通信的bug。[1] :我提交了一份内部错误报告,以改进PubSubIO的文档。