gpt4 book ai didi

apache-flink - 如何统计给定时间窗口内Apache Flink处理的记录数

转载 作者:行者123 更新时间:2023-12-05 01:18:28 24 4
gpt4 key购买 nike

在flink中定义一个时间窗口后如下:

val lines = socket.timeWindowAll(Time.seconds(5))

如何计算 5 秒的特定窗口中的记录数?

最佳答案

执行计数聚合的最有效方法是 ReduceFunction。但是,reduce 有输入和输出类型必须相同的限制。因此,在应用窗口之前,您必须将输入转换为 Int:

val socket: DataStream[(String)] = ???

val cnts: DataStream[Int] = socket
.map(_ => 1) // convert to 1
.timeWindowAll(Time.seconds(5)) // group into 5 second windows
.reduce( (x, y) => x + y) // sum 1s to count

关于apache-flink - 如何统计给定时间窗口内Apache Flink处理的记录数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45606999/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com