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

歡迎光臨散文網(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ū)別是什么?的評論 (共 條)

分享到微博請遵守國家法律
资中县| 邳州市| 孝昌县| 时尚| 九寨沟县| 鱼台县| 民乐县| 赫章县| 枣阳市| 徐水县| 广丰县| 福鼎市| 贵港市| 庆城县| 台中县| 德化县| 凤台县| 冷水江市| 贺州市| 南城县| 嫩江县| 太仓市| 剑阁县| 瑞金市| 宝清县| 天峨县| 新化县| 沙雅县| 海淀区| 塔河县| 宜良县| 仙桃市| 福安市| 鹿邑县| 东光县| 和顺县| 常德市| 定远县| 平泉县| 深泽县| 莱州市|