再具体点,reduce中return的对象作为reduce之后输出(这里是否涉及立即序列化)。
reduce(new ReduceFunction<ObjCls>{
@Override
public ObjCls reduce( ObjCls ele1, ObjCls ele2 ){
long resultPv = ele1.getPv() + ele2.getPv();
ele1.setPv(999); // 此处如果加这么一句setPv,会影响到什么算子呢?(各种可能DAG情况下)
ele1.setPv( resultPv );
return ele1;
}
})
赵一旦 <
[hidden email]> 于2020年11月16日周一 下午2:40写道:
> 如题,想知道reduce函数实现的时候,什么情况复用对下可能导致问题呢?or永远不可能导致问题呢?
>
>
> 比如计算图中存在很多重复计算:
>
> streamA.reduce(reduceFunction1,....);
>
> streamA.reduce(reduceFunction2,....);
>
> streamA.xxxx
>