关于不同滚动时间窗口下Kinesis数据流重复消费的疑问
你的理解不正确
Kinesis数据流的核心特性之一就是支持多个独立的消费者组同时消费同一份数据,每个消费者组会独立维护自己的消费进度(checkpoint),彼此之间完全隔离。
- 你可以创建两个不同的消费者组:一个绑定1分钟滚动窗口的消费逻辑,另一个绑定5分钟滚动窗口的消费逻辑。
- 同一条数据记录会被这两个消费者组各自读取、处理,互不干扰。Kinesis不会因为某一个组读取了数据就将其删除,数据会在流中保留你配置的 retention period(默认24小时,最长可设为365天),期间任何有权限的消费者组都可以读取。
滚动窗口是你在消费端对数据进行聚合处理的逻辑,和Kinesis本身的数据读取机制无关。只要消费者组不同,完全可以实现不同窗口策略的消费场景。
内容的提问来源于stack exchange,提问作者koch
相关产品推荐
相关产品推荐

