inputKafkaDStream
.foreachRDD(input => {
if (!input.isEmpty()) {
input.map(a => {
a.split("\n")
})
val pairRDDDate = input
.map(line => {
val last_up_date = JSON
// 将传入的 String 类型转换为 Json
.parseObject(line)
// 获取 Json 中的对应字段的值
.getString("date")
val sourceid = JSON
.parseObject(line)
.getString("sourceid")
// 映射成一个 RDD
(last_up_date, (sourceid, line))
})
val lastDatePairRdd = pairRDDDate
// 按照 RDD 的 Key 进行排序
.sortByKey()
.map(a => {
a._2
})
// 对排序后的数据按照key进行去重
.collectAsMap()
.map(a => println(a._2))
}
})