最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Flink增量聚合函數(shù):reduce和aggregate的區(qū)別是什么?

2023-08-11 11:41 作者:ingemar-  | 我要投稿

窗口函數(shù),即數(shù)據(jù)劃分窗口后可以調(diào)用的處理函數(shù)。

  • 全量函數(shù):窗口先緩存所有元素,等到觸發(fā)條件后對窗口內(nèi)的全量元素執(zhí)行計算。

  • 增量函數(shù):窗口保存一份中間數(shù)據(jù),每流入一個新元素,新元素與中間數(shù)據(jù)兩兩合一,生成新的中間數(shù)據(jù)。


增量聚合函數(shù)


指窗口每進入一條數(shù)據(jù)就計算一次

實現(xiàn)方法(常見的增量聚合函數(shù)如下):

  • reduce(reduceFunction)

  • aggregate(aggregateFunction)

  • sum()

  • min()

  • max()


reduce和aggregate的區(qū)別


reduce接受兩個相同類型的輸入,生成一個同類型輸出,所以泛型就一個 <T>

maxBy、minBy、sum這3個底層都是由reduce實現(xiàn)的

aggregate的輸入值、中間結(jié)果值、輸出值它們3個類型可以各不相同,泛型有<T, ACC, R>


ReduceFunction


ReduceFunction定義了如何把兩個輸入的元素進行合并來生成相同類型的輸出元素的過程,F(xiàn)link使用ReduceFunction來對窗口中的元素進行增量聚合


AggregateFunction


AggregateFunction 比 ReduceFunction 更加的通用,它有三個參數(shù):輸入類型(IN)、累加器類型(ACC)和輸出類型(OUT)。

輸入類型是輸入流中的元素類型,AggregateFunction有一個add方法可以將一個輸入元素添加到一個累加器中。該接口還具有創(chuàng)建初始累加器(createAccumulator方法)、將兩個累加器合并到一個累加器(merge方法)以及從累加器中提取輸出(類型為OUT)的方法。


Flink增量聚合函數(shù):reduce和aggregate的區(qū)別是什么?的評論 (共 條)

分享到微博請遵守國家法律
扎兰屯市| 梓潼县| 武乡县| 大宁县| 临夏县| 镇赉县| 通城县| 庆阳市| 手机| 门源| 克拉玛依市| 藁城市| 乌兰察布市| 温泉县| 临洮县| 长春市| 剑川县| 德惠市| 绩溪县| 镇平县| 和政县| 信丰县| 聂拉木县| 海阳市| 高碑店市| 虞城县| 堆龙德庆县| 嵊州市| 武宣县| 泾源县| 浦东新区| 潼南县| 达日县| 江都市| 五指山市| 昌平区| 潍坊市| 闵行区| 嘉祥县| 武冈市| 乐业县|