Spark中实现TOP N (Scala版本)

package Basic


import org.apache.spark.{SparkConf, SparkContext}


/**
  * Created by tg on 10/25/16.
  */
object Top3 {
  def main(args: Array[String]): Unit = {
    val conf=new SparkConf().setAppName("Top3").setMaster("local")
    val sc=new SparkContext(conf)
    //从HDFS中读取数据
    val lines=sc.textFile("hdfs://tgmaster:9000/in/nums2")


    /**
      * 1、通过map算子形成映射
      * 2、通过sortByKey算子针对Key进行降序排列
      * 3、通过map算子获取排序之后的数字
      * 4、通过take算子获取排序之后的前3个数字
      * 5、通过foreach算子遍历输出
      */
    lines.map(m=>(m.toInt,m.toInt)).sortByKey(false)
      .map(m=>m._1).take(3).foreach(println _)
  }
}
发布了105 篇原创文章 · 获赞 36 · 访问量 8万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 创作都市 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览