波束状态是否在不同DoFn之间共享?
假设我有2个DoFns:
- StatefulDoFn1:{myState.write(1(}
- StatefulDoFn2:{myState.read((;执行某些操作…输出}
然后是伪代码中的管道:
pipline=读取输入。。。。。。。。。applyDoFn(StatefulDoFn1(。。。。。。映射{做其他事情}。。。。。。。applyDoFn(StatefulDoFn2(
如果我在两个StatefulDoFns中对myState进行相同的注释——我在StatefulDoFn1中写的内容对StatefulDoFn2可见吗?我们实现了一个管道,假设答案是肯定的——但似乎没有
否,state对于每个有状态的DoFn
都是本地的,而且它实际上对于该DoFn
内的每个键(以及窗口,如果您使用的是窗口(也是本地的。