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的主题数

相关推荐
Light602 小时前
点燃变革:领码SPARK融合平台如何重塑OA,开启企业智慧协同新纪元?
大数据·分布式·spark
Guheyunyi2 小时前
智慧消防管理系统如何重塑安全未来
大数据·运维·服务器·人工智能·安全
写代码的【黑咖啡】3 小时前
如何在大数据数仓中搭建数据集市
大数据·分布式·spark
华清远见成都中心3 小时前
成都理工大学&华清远见成都中心实训,助力电商人才培养
大数据·人工智能·嵌入式
梦里不知身是客114 小时前
flume防止数据丢失的方法
大数据·flume
Jackeyzhe5 小时前
Flink学习笔记:反压
flink
SoleMotive.5 小时前
kafka选型
分布式·kafka
鹏说大数据6 小时前
数据治理项目实战系列6-数据治理架构设计实战,流程 + 工具双架构拆解
大数据·数据库·架构
凯新生物6 小时前
mPEG-SS-PLGA-DTX:智能药物递送系统
eureka·flink·ffmpeg·etcd
AI逐月8 小时前
Git 彻底清除历史记录
大数据·git·elasticsearch