Apache kafka 谷歌Pubsub与卡夫卡关于重启管道的比较
我正在尝试使用Apache Beam在GCP上编写一个摄取应用程序。我应该以流式方式编写它,从Kafka或pubsub主题读取数据,然后摄取到数据源Apache kafka 谷歌Pubsub与卡夫卡关于重启管道的比较,apache-kafka,google-cloud-platform,google-cloud-dataflow,apache-beam,google-cloud-pubsub,Apache Kafka,Google Cloud Platform,Google Cloud Dataflow,Apache Beam,Google Cloud Pubsub,我正在尝试使用Apache Beam在GCP上编写一个摄取应用程序。我应该以流式方式编写它,从Kafka或pubsub主题读取数据,然后摄取到数据源 虽然使用pubsub和apache beam编写它似乎很简单,但我的问题是,如果我的摄取失败或重新启动,并且如果它再次读取pubsub主题开头的所有数据,或者像kafka一样,它可以读取主题中最新提交的偏移量,那么会发生什么情况?Pub/sub消息将被持久化,直到传递为止并由从其订阅接收挂起消息的订阅者进行确认。消息确认后,将从订阅队列中删除该消息
虽然使用pubsub和apache beam编写它似乎很简单,但我的问题是,如果我的摄取失败或重新启动,并且如果它再次读取pubsub主题开头的所有数据,或者像kafka一样,它可以读取主题中最新提交的偏移量,那么会发生什么情况?Pub/sub消息将被持久化,直到传递为止并由从其订阅接收挂起消息的订阅者进行确认。消息确认后,将从订阅队列中删除该消息 有关消息流的更多信息,请选中此项
希望能有所帮助。简单的回答是,你不必为此担心。PubSub对每条消息都有单独的ACK,因此单个订阅不会有重复/丢失的数据。