可以的话,使用ConnectedStream即可。
StreamA和StreamB连接之后的算子中定义2个MapState状态即可。

hl9...@126.com <hl9...@126.com> 于2020年11月4日周三 下午3:08写道:

> 感谢。我这个场景中op1和op2是串行的,那只能把op1的状态也发到下游的op2。
>
>
>
> hl9...@126.com
>
> 发件人: Qi Kang
> 发送时间: 2020-11-04 14:53
> 收件人: user-zh
> 主题: Re: 不同的算子能共用一个状态吗?
> Hi,
>
>
> Flink不支持算子共享状态。如果你的op1和op2是并行的,就只能利用外部存储间接地共享状态数据。如果是串行的(op2在op1的下游),也可以尝试考虑把op1产生的状态数据作为流元素发送到op2中去。希望对你有所帮助。
>
>
> > On Nov 4, 2020, at 14:48, hl9...@126.com wrote:
> >
> > Hi,all:
> > 我定义了两个flatmap算子(op1和op2),op1里面定义了一个MapState变量,我想在op2里面直接用这个状态,可以吗?
> > 我感觉是不行的,没有找到相关的api。请各位大佬帮忙明确一下。
> >
> >
> >
> > hl9...@126.com
>
>

Reply via email to