1.sortByKey()

功能:

  返回一个根据键排序的RDD

示例

val list = List(("a",3),("b",2),("c",1))
val pairRdd = sc.parallelize(list)
pairRdd.sortByKey().collect.foreach(println)

结果

(a,3)
(b,2)
(c,1)

如果我们想逆向排序,就在后边加上false参数。

pairRdd.sortByKey(false).collect.foreach(println)

2.sortBy()

功能:

  返回根据提供的参数进行排序的RDD

示例  

val list = List(("a",3),("b",2),("c",1))
val pairRdd = sc.parallelize(list)
pairRdd.sortBy(_._1).collect.foreach(println)//根据key进行排序,等同于sortByKey()

结果同上

val list = List(("a",3),("b",2),("c",1))
val pairRdd = sc.parallelize(list)
pairRdd.sortBy(_._2).collect.foreach(println)//用value进行排序

结果

(c,1)
(b,2)
(a,3)

如果我们想逆向排序,就在后边加上false参数。

pairRdd.sortBy(_._2,false).collect.foreach(println)

 

【spark】常用转换操作:sortByKey()和sortBy()的更多相关文章

  1. 【spark】常用转换操作:reduceByKey和groupByKey

    1.reduceByKey(func) 功能: 使用 func 函数合并具有相同键的值. 示例: val list = List("hadoop","spark" ...

  2. 【spark】常用转换操作:join

    join就表示内连接. 对于内链接,对于给定的两个输入数据集(k,v1)和(k,v2) 根据相同的k进行连接,最终得到(k,(v1,v2))的数据集. 示例 val arr1 = Array((&qu ...

  3. 【spark】常用转换操作:keys 、values和mapValues

    1.keys 功能: 返回所有键值对的key 示例 val list = List("hadoop","spark","hive",&quo ...

  4. java实现spark常用算子之SortByKey

    import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaPairRDD;import org.apache.spa ...

  5. Spark常用RDD操作总结

    aggregate 函数原型:aggregate(zeroValue, seqOp, combOp) seqOp相当于Map combOp相当于Reduce zeroValue是seqOp每一个par ...

  6. iOS中NSDate常用转换操作整合

    //当前时间格式化, 例:YYYY-MM-dd-EEEE-HH:mm:ss + (NSString *)getCurrentDataWithDateFormate:(NSString *)format ...

  7. python操作Spark常用命令

    1. 获取SparkSession spark = SparkSession.builder.config(conf = SparkConf()).getOrCreate() 2. 获取SparkCo ...

  8. Spark—RDD编程常用转换算子代码实例

    Spark-RDD编程常用转换算子代码实例 Spark rdd 常用 Transformation 实例: 1.def map[U: ClassTag](f: T => U): RDD[U]  ...

  9. Spark Streaming之六:Transformations 普通的转换操作

    与RDD类似,DStream也提供了自己的一系列操作方法,这些操作可以分成四类: Transformations 普通的转换操作 Window Operations 窗口转换操作 Join Opera ...

随机推荐

  1. 我的Android进阶之旅------>关于使用CSDN-markdown编辑器来编写博客

    关于使用MarkDown编辑器的原因 什么是 Markdown 制作一份待办事宜 Todo 列表 书写一个质能守恒公式LaTeX 高亮一段代码code 高效绘制 流程图 高效绘制序列图 绘制表格 更详 ...

  2. Linux ssh面密码登录

    1.生成自己的公钥和私钥 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 进入~/.ssh目录看多了两个文件:id_rsa  id_rsa.pub  其中一个是公钥一 ...

  3. node.js基本工作原理及流程

    概述 Node.js是什么 Node 是一个服务器端 JavaScript 解释器,用于方便地搭建响应速度快.易于扩展的网络应用.Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非 ...

  4. 010-shiro与spring web项目整合【四】缓存Ehcache

    一.Ehcache shiro每次授权都会通过realm获取权限信息,为了提高访问速度需要添加缓存,第一次从realm中读取权限数据,之后不再读取,这里Shiro和Ehcache整合. 1.添加Ehc ...

  5. node.js---sails项目开发(6)--- 实现分页功能

    只需要添加一个文件即可  api/blueprints/find.js     代码如下 /** * Module dependencies */ var util = require('util') ...

  6. Visual Studio Code 配合 Node.js 轻松实现JS断点调试

    一直喜欢vscode这个编辑器,今天看在liaoxuefeng.com学习nodejs时,看到上面 讲了使用vscode配合nodejs调试JS代码,原来这么简单,现在分享如下: 本人环境: Visu ...

  7. Hadoop2.0中单点故障解决方案总结---老董

    Hadoop 1.0内核主要由两个分支组成:MapReduce和HDFS,众所周知,这两个系统的设计缺陷是单点故障,即MR的JobTracker和HDFS的NameNode两个核心服务均存在单点问题, ...

  8. maven依赖排除、顺序原则、版本统一管理

    <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core& ...

  9. Java项目结构总结

    一.Struts2+Spring+Hibernate 项目的文档结构 二.Spring MVC+MyBatis项目的文档结构 三.Tomcat文档目录结构 转载至:https://www.cnblog ...

  10. CWinApp类CMultiDocTemplate类CDocument类CView类的关系

    转自:http://blog.csdn.net/bboot/article/details/26884011 不得不转,瞬间搞清了很多问题,短小精悍 1.CWinApp类   它包含并管理着应用程序的 ...