Spark经典案之求最大最小值
数据准备
eightteen_a.txt
102
10
39
109
200
11
3
90
28
eightteen_b.txt
5
2
30
838
10005
package ClassicCase
import org.apache.spark.{SparkConf, SparkContext}
/**
- 业务场景:求最大最小值
- Created by YJ on 2017/2/8.
*/
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setMaster("local").setAppName("reduce")
val sc = new SparkContext(conf)
sc.setLogLevel("ERROR")
val fifth = sc.textFile("hdfs://192.168.109.130:8020//user/flume/ClassicCase/case5/*", 2)
val res = fifth.filter(_.trim().length>0).map(line => ("key",line.trim.toInt)).groupByKey().map(x => {
var min = Integer.MAX_VALUE
var max = Integer.MIN_VALUE
for(num <- x._2){
if(num>max){
max = num
}
if(num
}
}
(max,min)
}).collect.foreach(x => {
println("max\t"+x._1)
println("min\t"+x._2)
})
}
}
方法2
package com.neusoft
import org.apache.spark.{SparkConf, SparkContext}
/**
- Created by Administrator on 2019/3/4.
*/
object FileMaxMin {
def main(args: Array[String]): Unit = {
val sparkConf = new SparkConf().setAppName("FileOrder").setMaster("local")
val sc = new SparkContext(sparkConf)
val rdd = sc.textFile("demo4/*")
//key,list(102,10,39,......)
rdd.filter(_.length > 0).map(x => ("key",x.toInt)).groupByKey().map(x => {
println("max:" + x._2.max)
println("max:" + x._2.min)
}).collect()
}
【Spark经典案之求最大最小值】结果输出
max 10005
min 2
推荐阅读
- Spark|Spark 数据倾斜及其解决方案
- 这份史上最经典的3大学习方法,清华北大学霸都在用!
- 我们为什么喜欢看《古惑仔》,它到底经典在哪()
- 经典的白色西装太吸睛了!李沁baby赵薇穿出颜值巅峰,这也太好看
- 我们都知道一片冰心在玉壶,其实古人这首诗写的”冰心“同样经典
- 鲁迅先生的经典语录
- 家教经典之四|家教经典之四|好孩子的成长99%靠妈妈
- 迫害我们心中的经典,以翻拍的方式
- 我用怀旧来怀念那些经典
- 漳州育心经典进泥之家第272期学经班活动精彩回顾