数据格式为:

http://python.cn/wei
http://python.cn/wei
http://java.cn/zhang
http://java.cn/zhang
package spark
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
object Teacher {def main(args: Array[String]): Unit = {val conf = new SparkConf().setAppName("FavTeacher").setMaster("local[4]")val sc = new SparkContext(conf)val lines: RDD[String] = sc.textFile("D:\\code\\ip\\teacher.log")val teacherAndOne = lines.map(line => {val teacher = line.split("/").last //该句不是map的返回(teacher, 1) //map方法最后一句话是返回})val reduced: RDD[(String, Int)] = teacherAndOne.reduceByKey(_+_)//聚合val sorted: RDD[(String, Int)] = reduced.sortBy(_._2, false)//降序val reslut: Array[(String, Int)] = sorted.collect()//触发Action执行计算println(reslut.toBuffer)//打印sc.stop()}
}

Spark TopN相关推荐

  1. HQL写topN、Spark写topN

    HQL写topN用窗口函数rank() .row_number().dense_rank() 1.rank(),跳跃排序,假如第一第二相同,那么第三个就是3 select * from( select ...

  2. SparkCore基础

    目录 Spark简介 1 什么是Spark 2 Spark特点 3 Spark分布式环境安装 3.1 Spark HA的环境安装 3.2 动态增删一个worker节点到集群 4 Spark核心概念 5 ...

  3. 吐血整理50家企业真实大数据面试题!!学长实测,真实面试!!快收藏!

    文章目录 前言 京东面试题 58面试题 新浪面试题 搜狐面试题 360面试题 小米面试题 顺丰面试题 OPPO面试题 VIVO面试题 华为面试题 boss直聘面试题 搜狗金融面试题 瓜子二手车面试题 ...

  4. 数据算法 --hadoop/spark数据处理技巧 --(二次排序问题和TopN问题)

    一.二次排序问题. MR/hadoop两种方案: 1.让reducer读取和缓存给个定键的所有值(例如,缓存到一个数组数据结构中,)然后对这些值完成一个reducer中排序.这种方法不具有可伸缩性,因 ...

  5. Spark分组取TopN

    前言 说到分组,我们很快就想到group by,但是如果在分组的基础上进行取TopN,我们很快又想到开窗函数,group by一般和聚合函数搭配使用,那么聚合函数和开窗函数有啥区别呢? 普通的聚合函数 ...

  6. Spark Core (TopN、mysql写入、读取文件通过RDD结合数据库中的表)练习3套

    pom.xml文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h ...

  7. Spark使用RDD实现分组topN(八种方法)

    最近在复习Spark,记录一个使用RDD实现分组topN的方法,一共写了八种,其中有很多地方都是有共性的,我会在代码最后进行总结八种的思路,他们之间的共性以及每一种的优缺点. 以下是样例数据 语文,赵 ...

  8. [Spark的TopN算法实现]

    一.TopN算法 MapReduce中的TopN算法是一个经典的算法,由于每个map都只是实现了本地的TopN算法,而假设map有M个,在归约的阶段只有M x N次运算,这个结果是可以接受的并不会造成 ...

  9. 《Spark商业案例与性能调优实战100课》第15课:商业案例之纯粹通过DataSet进行电商交互式分析系统中各种类型TopN分析实战详解

    <Spark商业案例与性能调优实战100课>第15课:商业案例之纯粹通过DataSet进行电商交互式分析系统中各种类型TopN分析实战详解

最新文章

  1. 基于轮廓调整的SOTA实例分割方法,速度达32.3fps | CVPR 2020
  2. R语言学习笔记 (入门知识)
  3. 一封电子邮件的发送和接收的主要步骤
  4. json ajax
  5. jzoj3801-[NOIP2014模拟8.23]骰子【数学期望】
  6. Python、TensorFlow、机器学习、深度学习四件套(附免费下载)
  7. ResNet到底深不深?
  8. OLTP与OLAP介绍
  9. Lua新闻组的其人其事(一)
  10. Spring Boot Admin Reference Guide
  11. steam怎么解除共享_如何启用Steam家庭共享(及其功能)
  12. 液晶显示器的基本知识
  13. 新巴巴运动网项目需求书_巴巴姆少儿英语项目介绍(613岁)
  14. vim 怎么显示空格_vi查看空格、制表符等特殊符号
  15. UiBot If(如果条件成立)
  16. 【Unity大气散射】GAMES104:3A中如何实现大气散射
  17. 商品sku规格选择效果,没有商品的不能选中,选择顺序不影响展示结果
  18. Java实现是否为节假日、工作日判断(调用“http://api.goseek.cn/Tools/holiday”接口)
  19. echarts 渲染3d地图
  20. autoDL租用服务器运行程序全过程

热门文章

  1. Python之进程+线程+协程(生产者消费者模型)
  2. 什么是Web渗透测试
  3. Python内置函数iter()语法及应用
  4. python numpy 技巧
  5. 嵌入式Linux的QT版本,嵌入式Linux版本Qt5.4快速部署
  6. mysql创建师徒_[郑州|结业弟子]JAVA-乔兆年|2020年05月09日的日报-技能树.IT修真院...
  7. mysql 修改这段长度_MySQL中使用group_concat()函数数据被截取(有默认长度限制),谨慎!...
  8. android datepicker控件,android中控件DatePicker控件-Fun言
  9. dell屏幕亮度调节不了_?戴尔XPS13 7390笔电测评:10代酷睿加持,屏幕/散热/续航升级...
  10. mac os 编译android,Mac OS X 编译Android内核源代码