Kafka分区数扩容 Flink未发现新分区

背景

Kafka分区数进行了扩容,但负责消费的Flink没有发现新的分区。

原因

Flink默认是不会动态发现新的分区的。

导致的问题

新kafka分区的数据没有被消费,导致堆积,严重的会导致数据丢失。

解决方案1

适用于低频扩容、缩容kafka分区的场景
重启Flink,让Flink重新从Kafka获取分区数

解决方案2

适用于经常扩容、缩容kafka分区的场景

通过设置参数flink.partition-discovery.interval-millis 大于0 ,来开启自动获取分区。

flink.partition-discovery.interval-millis表示每过多少毫秒,会自动发现分区。

注意

Flink会从新分区的EARLIEST位置开始消费 ,也就是最新位置开始消费,旧的数据不会再消费了。

如果需要动态发现topic,也是该参数控制的,不过仅限通过正则表达式指定topic的方式。

参考文章:

https://blog.csdn.net/zl18310999566/article/details/103736398

相关推荐
Jackyzhe2 小时前
Flink源码阅读:JobManager的HA机制
大数据·flink
【D'accumulation】2 小时前
Kafka地址映射不通(很常见的问题)
分布式·kafka
数翊科技8 小时前
深度解析 HexaDB分布式 DDL 的全局一致性
分布式
Jackeyzhe11 小时前
Flink源码阅读:Netty通信
flink
面向Google编程11 小时前
Flink源码阅读:JobManager的HA机制
大数据·flink
Tony Bai11 小时前
【分布式系统】03 复制(上):“权威中心”的秩序 —— 主从架构、一致性与权衡
大数据·数据库·分布式·架构
雨中飘荡的记忆19 小时前
Kafka入门:从零开始掌握消息队列
kafka
txinyu的博客19 小时前
HTTP服务实现用户级窗口限流
开发语言·c++·分布式·网络协议·http
独自破碎E19 小时前
RabbitMQ中的Prefetch参数
分布式·rabbitmq
用户72278681234419 小时前
Flink源码阅读:Task数据交互
flink