You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by 黑色 <xi...@qq.com> on 2021/01/16 11:38:21 UTC

flink怎么读kafka offset

各位大佬:&nbsp;flink 如果开启了checkpoint,是把消费kafka offset存放在在state,checkpointing到后端保存,同时会把offset回传到kafka,在kafka consumer_topic里保存
用户groupid的offset,正常情况下这是一个bakup


现在比如我开启了checkpoint,运行了一段时间后,我手动重启任务,这个时间没有用-s 去指定chkpoint/savepoint,
那么这种情况下,flink由于没获取state里的offset,它是重新按配置kafka的lastest/earliestj里去消费了? 还是会自动去找kafka里consumer_topic保存的topic消费?


谢谢!

Re:Re: 回复:flink怎么读kafka offset

Posted by air23 <wa...@163.com>.
是可以这样恢复。
但是如果使用setStartFromGroupOffsets() 如果中间程序挂了,
会导致消费者已经提交了offset,但是下游数据没有处理完 ,或者没有sink到下游
下次重启会从kakfa的偏移量开始消费
没有处理的数据,会丢失

















在 2021-01-18 10:50:44,"hoose" <30...@qq.com> 写道:
>我理解的是这样,虽然不是从savepoint里恢复,但kafka
>consumer_topic有了我们之前保存的groupid,那么默认的是flink是这样设置:
>
>setStartFromGroupOffsets():默认值,从当前消费组记录的偏移量开始,接着上次的偏移量消费
>
>这样可以理解还是从上次提交的offset开始继续消费对吧?
>
>
>
>--
>Sent from: http://apache-flink.147419.n8.nabble.com/

Re: 回复:flink怎么读kafka offset

Posted by hoose <30...@qq.com>.
我理解的是这样,虽然不是从savepoint里恢复,但kafka
consumer_topic有了我们之前保存的groupid,那么默认的是flink是这样设置:

setStartFromGroupOffsets():默认值,从当前消费组记录的偏移量开始,接着上次的偏移量消费

这样可以理解还是从上次提交的offset开始继续消费对吧?



--
Sent from: http://apache-flink.147419.n8.nabble.com/

回复:flink怎么读kafka offset

Posted by 刘小红 <18...@163.com>.
不是savepoint恢复任务的话,flink-kafka-connector会按照配置的消费策略来确定 Kafka 分区的起始位置。https://ci.apache.org/projects/flink/flink-docs-release-1.12/zh/dev/connectors/kafka.html


| |
刘小红
|
|
18500348251@163.com
|
签名由网易邮箱大师定制
在2021年1月16日 19:38,黑色<xi...@qq.com> 写道:
各位大佬:&nbsp;flink 如果开启了checkpoint,是把消费kafka offset存放在在state,checkpointing到后端保存,同时会把offset回传到kafka,在kafka consumer_topic里保存
用户groupid的offset,正常情况下这是一个bakup


现在比如我开启了checkpoint,运行了一段时间后,我手动重启任务,这个时间没有用-s 去指定chkpoint/savepoint,
那么这种情况下,flink由于没获取state里的offset,它是重新按配置kafka的lastest/earliestj里去消费了? 还是会自动去找kafka里consumer_topic保存的topic消费?


谢谢!