1
我有一个密钥流:阿帕奇弗林克了:KeyedStream值地图功能,又不失键状态
KeyedStream<String, Data> keyed =
env.addSource(...)
.map(new Parser())
.keyBy(i -> i.key)
我想运行在我流的状态,全过程的功能;但process
将返回,导致失去KeyedStream
正常未键控流,并迫使我再次打电话keyBy
:
SingleOutputStreamOperator<Data> unkeyed = keyed.process(new Function)
KeyedStream<String, Data> keyedAgain = keyed.keyBy(i -> i.key)
有什么办法叫过值的地图功能上
KeyedStream
?如何在不使用低成本API(如
ProcessFunction
)的情况下运行状态完全功能,这会导致不必要的成本:运行时产生一个新的子任务,并重新清理我的数据?
还有一个问题:在多个'keyBy'的情况下,是否有优化的机会?在同一个插槽中分组多个进程并删除混排开销的一种方法? –