【flink-connector-kafka】是否支持Subscribe模式

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

【flink-connector-kafka】是否支持Subscribe模式

i'mpossible
Hi:
     Flink支持Subscribe模式吗?用的connector版本是flink-connector-kafka-0.11_2.11,0.11x;
     因为业务需要,我想要优雅下线掉TopicB,即不中断事件流;执行结果发现当Flink服务和A服务指定同一个group.id,同时消费TopicA时,kafka偏移量提交失败(开启了检查点);


    感谢解答!!!
Reply | Threaded
Open this post in threaded view
|

Re: 【flink-connector-kafka】是否支持Subscribe模式

zhisheng
可以使用不同的 group.id 消费

i'mpossible <[hidden email]> 于2020年4月21日周二 下午6:12写道:

> Hi:
>      Flink支持Subscribe模式吗?用的connector版本是
> flink-connector-kafka-0.11_2.11,0.11x;
>      因为业务需要,我想要优雅下线掉TopicB,即不中断事件流;执行结果发现当Flink服务和A服务指定同一个group.id
> ,同时消费TopicA时,kafka偏移量提交失败(开启了检查点);
>
>
>     感谢解答!!!
>
Reply | Threaded
Open this post in threaded view
|

回复: 【flink-connector-kafka】是否支持Subscribe模式

i'mpossible
Hi:
&nbsp; &nbsp; 这样会引发一些问题,比如:数据源不断产生事件到kafka形成数据流,这部分数据流被Flink消费进行流计算,流计算在进行新老逻辑切换时,我希望通过kafka的rebalance完成,带来的好处是业务无感知;


&nbsp; &nbsp; 参阅了flink-connector-kafka的逻辑,它是通过获取topic所有的分区,然后通过对子任务并行度总和取余,获取分配至子任务线程的分区列表,未分配到分区的kafka消费实例阻塞,进而增加了单任务的kafka checkpoint机制;


&nbsp; &nbsp; 个人理解,能力有限,也会有考虑不到的地方,在网上随便一搜就能搜到你的博客,哈哈;


&nbsp; &nbsp; 感谢花时间和精力解答我的问题,谢谢!




------------------&nbsp;原始邮件&nbsp;------------------
发件人:&nbsp;"zhisheng"<[hidden email]&gt;;
发送时间:&nbsp;2020年4月22日(星期三) 上午9:02
收件人:&nbsp;"user-zh"<[hidden email]&gt;;

主题:&nbsp;Re: 【flink-connector-kafka】是否支持Subscribe模式



可以使用不同的 group.id 消费

i'mpossible <[hidden email]&gt; 于2020年4月21日周二 下午6:12写道:

&gt; Hi:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Flink支持Subscribe模式吗?用的connector版本是
&gt; flink-connector-kafka-0.11_2.11,0.11x;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 因为业务需要,我想要优雅下线掉TopicB,即不中断事件流;执行结果发现当Flink服务和A服务指定同一个group.id
&gt; ,同时消费TopicA时,kafka偏移量提交失败(开启了检查点);
&gt;
&gt;
&gt;&nbsp;&nbsp;&nbsp;&nbsp; 感谢解答!!!
&gt;
Reply | Threaded
Open this post in threaded view
|

回复: 回复: 【flink-connector-kafka】是否支持Subscribe模式

dixingxing85@163.com
明白你的想法了, 其实本质上是手速和kafka balance切换速度的PK。
有一点要考虑的是,如果作业本身有状态,也就是使用了除kafka partition、offset外的其他状态,那么依赖kafka balance的方式(或类似方式)会导致两个作业的结果都不正确





[hidden email]
 
发件人: i'mpossible
发送时间: 2020-04-22 17:14
收件人: user-zh; zhisheng2018
主题: 回复: 【flink-connector-kafka】是否支持Subscribe模式
Hi:
&nbsp; &nbsp; 这样会引发一些问题,比如:数据源不断产生事件到kafka形成数据流,这部分数据流被Flink消费进行流计算,流计算在进行新老逻辑切换时,我希望通过kafka的rebalance完成,带来的好处是业务无感知;
 
 
&nbsp; &nbsp; 参阅了flink-connector-kafka的逻辑,它是通过获取topic所有的分区,然后通过对子任务并行度总和取余,获取分配至子任务线程的分区列表,未分配到分区的kafka消费实例阻塞,进而增加了单任务的kafka checkpoint机制;
 
 
&nbsp; &nbsp; 个人理解,能力有限,也会有考虑不到的地方,在网上随便一搜就能搜到你的博客,哈哈;
 
 
&nbsp; &nbsp; 感谢花时间和精力解答我的问题,谢谢!
 
 
 
 
------------------&nbsp;原始邮件&nbsp;------------------
发件人:&nbsp;"zhisheng"<[hidden email]&gt;;
发送时间:&nbsp;2020年4月22日(星期三) 上午9:02
收件人:&nbsp;"user-zh"<[hidden email]&gt;;
 
主题:&nbsp;Re: 【flink-connector-kafka】是否支持Subscribe模式
 
 
 
可以使用不同的 group.id 消费
 
i'mpossible <[hidden email]&gt; 于2020年4月21日周二 下午6:12写道:
 
&gt; Hi:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Flink支持Subscribe模式吗?用的connector版本是
&gt; flink-connector-kafka-0.11_2.11,0.11x;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 因为业务需要,我想要优雅下线掉TopicB,即不中断事件流;执行结果发现当Flink服务和A服务指定同一个group.id
&gt; ,同时消费TopicA时,kafka偏移量提交失败(开启了检查点);
&gt;
&gt;
&gt;&nbsp;&nbsp;&nbsp;&nbsp; 感谢解答!!!
&gt;