1.排序:
定义三个文件对文件内容进行排序(数字)
package com.hyxy.spark01
import org.apache.spark.{SparkConf, SparkContext}
object listarray {
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setAppName("sort").setMaster("local")
val sc = new SparkContext(conf)
val rdd = sc.textFile("D://123//sort.txt")
rdd.sortBy(x =>x,true)
.repartition(1)
.foreach(println)
}
}
//val data = sc.textFile(dataFile,3)
//var index = 0
//val result = data.filter(_.trim().length>0).map(n=>(n.trim.toInt,""))
// .partitionBy(new HashPartitioner(1))
// .sortByKey()
// .map(t=>{index += 1;(index,t._1)})
//result.saveAsTextFile("file:///D:/测试数据/排序/result")
//}
2.题目:给定一组键值对("spark",2),("hadoop",6),("hadoop",4),("spark",6),键值对的key
表示图书名称,value表示某天图书销量,请计算每个键对应的平均值,也就是计算每种图书的每天平均销量。
package com.hyxy.spark01
import org.apache.spark.{SparkConf, SparkContext}
object pingjunzhi {
def main(args: Array[String]): Unit = {
// 给定一组键值对("spark",2),("hadoop",6),("hadoop",4),("spark",6),键值对的key
// 表示图书名称,value表示某天图书销量,请计算每个键对应的平均值,也就是计算每种图书的每天平均销量。
val conf = new SparkConf().setMaster("local[2]").setAppName("平均销量")
val sc = new SparkContext(conf)
val rdd = sc.parallelize(Array(("spark",2),("hadoop",6),("hadoop