我在使用flink sql 创建kafka table时,出现了这个问题,下面根据我的实操总结两种使用情况。
版本
flink1.8.1
配置
1.流处理
group-offsets(默认的消费方式):从 zookeeper 或者 kafka 中某个指定的消费组已提交的偏移量开始消费。需要开启checkpoint. 第一次使用时还需要指定kafka配置:properties.auto.offset.reset,否则会出现NoOffsetForPartitionException
不用担心后续读取会从保存点读取,只有第一次消费不存在offset时才会使用properties.auto.offset.reset策略
其他方式没有这种异常
2.批处理
指定offset,消费完任务就退出
scan.startup.mode:specific-offsets
scan.bounded.mode:specific-offsets
scan.startup.specific-offsets: partition:0,offset:1
scan.bounded.specific-offsets: partition:0,offset:1
指定“partition:0,offset:1”自己替换,多个分区offset用;分割