题目:根据农产品类型数量,统计每个省份排名前3名的农产品市场

(备注:在spark-shell中操作使用)
1.导入数据文件

var lines=sc.textFile("file:///opt/datas/products.txt")

2.遍历数据

lines.foreach(println)

3.数据清洗

val tmp=lines.distinct.filter(_.split("\t").length==6)

4.具体分析

tmp.map(line=>{val fields=line.split("\t");((fields(4),fields(3)),1)}).reduceByKey(_+_).map({case((province,market),nums)=>(province,(market,nums))}).groupByKey().mapValues(x=>x.toList.sortBy(_._2)(Ordering.Int.reverse).take(3)).foreach(println)