声明:本系列博客是根据SGG的视频整理而成,非常适合大家入门学习。
ReducingState
和AggregatingState
在注册StateDescriptor
时,还需要实现一个ReduceFunction
或AggregationFunction
。下面的代码注册ReducingStateDescriptor
时实现一个YourReduceFunction
,YourReduceFunction
实现了ReduceFunction
。我们在ReducingState
中使用add(in: T)
方法向状态里增加一个元素,新元素和状态中已有数据通过ReduceFunction
两两聚合。AggregatingState
的使用方法与之类似。
val reducingStateDescriptor = new ReducingStateDescriptor[UserBehavior]("reducing", new YourReduceFunction, classOf[UserBehavior])