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

当Kafka分区扩容后,Flink默认不动态发现新分区可能导致数据丢失。解决方案包括:低频场景下重启Flink重置分区;高频场景下设置flink.partition-discovery.interval-millis参数进行自动发现,注意Flink会从新分区的最早位置消费且只支持正则表达式指定topic.
摘要由CSDN通过智能技术生成

背景

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

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值