Flink如何基于事件时间消费分区数比算子并行度大的kafka主题

背景

使用flink消费kafka的主题的情况我们经常遇到,通常我们都是不需要感知数据源算子的并行度和kafka主题的并行度之间的关系的,但是其实在kafka的主题分区数大于数据源算子的并行度时,是有一些注意事项的,本文就来讲解下这些注意事项

flink数据源算子并行度大于kafka主题分区数

我们这里的注意事项对于即使做到配置flink数据源算子的并行度和kafka主题一样,但是有一些kafka主题没有消息发送过来的情况是一样的,这里的问题可以归结于以下两点:

1.有些kafka主题在某个时间点之后没有消息发送过来了

2.由于算子并行度大于kafka主题的分区数,有些数据源算子任务根本不会发送水位线到下一个算子任务

解决以上两个问题的方法是:

java 复制代码
WatermarkStrategy
        .<Tuple2<Long, String>>forBoundedOutOfOrderness(Duration.ofSeconds(20))
        .withIdleness(Duration.ofMinutes(1));

通过设置算子任务的水位线策略允许空闲的方式来做到,不过从源头上来说,为了尽可能均匀的处理数据,我们尽量设置数据源算子的并行度等于kafka的主题数

相关推荐
全栈陈序员27 分钟前
【Git】从入门到精通(五)—— git add:将文件加入暂存区
大数据·git·elasticsearch
KKKlucifer2 小时前
国内数据安全服务的产品智能化转型:大模型赋能下的技术能力重构分析
大数据·数据库·重构
故七月3 小时前
AI 答案里的竞品共现:怎么看出赛道格局
大数据·人工智能
全栈陈序员3 小时前
【Git】从入门到精通(七)—— git status:查看仓库状态
大数据·git·elasticsearch
fengye2071614 小时前
第三章 编译cpython
大数据·elasticsearch·搜索引擎
大大大大晴天4 小时前
每天认识一个组件:Apache Flink
大数据
涛思数据(TDengine)5 小时前
从工业本体到 AI 原生:TDengine 出席 2026 QCon 分享工业数据基础设施路径
大数据·数据库·人工智能·tdengine·工业
Gu_WenYun5 小时前
从主题定价到订单定价:机器人基金的产业链观察
大数据·人工智能·金融
其实防守也摸鱼6 小时前
信创安全竞赛知识总结与题库
大数据·网络·人工智能·算法·安全·php
刀笔财经6 小时前
新时达的选择:先造血,再谈利润
大数据