然后我们再来看这个表聚合函数,可以看到这里
之前我们说的聚合函数是,一堆数据来了以后,然后会输出一个数据,然后这里,表聚合函数是
一堆数据来了以后,会输出多个数据,也就是数据结果还是一个表,这个就相当于多对多的关系了
可以看到上面左边的表数据:
6来了以后,得到的结果是6,
然后3来了以后,得到的结果是6,3
然后5来了以后,得到的结果是6,5
然后8来了以后,得到的结果是8,6
然后4来了以后,得到的结果是8,6
可以看到这里就相当于我们要获取,来的数据的温度最大值的前两个,
top2对吧.
可以看到这里我们需要实现TableAggregateFunction对吧,
然后写个createAccumulator创建累加器,然后accumulate是每来一个数据就会走这个方法,
进行累加操作,然后emitValue这里是,获取结果的方法,跟聚合函数中的getValue是一样的作用,
不过这里返回的是个表对吧.