gpt4 book ai didi

json - Spark Streaming 滑动窗口的最大值和最小值

转载 作者:可可西里 更新时间:2023-11-01 15:04:28 27 4
gpt4 key购买 nike

我是 Spark 的初学者;我正在处理 spark 流用例,其中我收到一条 json 消息,每个 json 消息都有一个属性“值”,在解析 json 后它是双倍的我得到一个数组 [Double]。我想找出最大值(值)和最小值(值) 最后 15 秒,滑动窗口为 2 秒。这是我的代码。

val record = KafkaUtils.createStream[String, String, StringDecoder, StringDecoder](ssc, kafkaParams, topicMap, StorageLevel.MEMORY_ONLY_SER_2)
val lines=record.map(_._2)

val valueDtsream:DStream[Array[Double]]=lines.map { jsonRecord => parseJson(jsonRecord) }
.window(Seconds(15),Seconds(2))

valueDtsream.foreachRDD
{
rdd =>
if (!rdd.partitions.isEmpty)
{
//code to find min and max
}
}

ssc.start()
ssc.awaitTermination()

最佳答案

尝试:

valueDtsream.transform( rdd => {
val stats = rdd.flatMap(x => x).stats
rdd.sparkContext.parallelize(Seq((stats.min, stats.max)))
})

关于json - Spark Streaming 滑动窗口的最大值和最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40705211/

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