Rdd的操作

作者: 大数据修行 | 来源:发表于2019-05-20 10:54 被阅读0次

1.transformation

lazy:仅仅记录transformation路径,不发生操作

  1. map 对每一个元素进行转换
  2. filter 对元素进行过滤
    3.flatmap 把每个元素里面的元素展开

例子

val nums = sc.parallelize(List(1,2,3,4,5,6,7,8,9))
nums.flatMap(x => 1 to x).collect
res7: Array[Int] = Array(1, 1, 2, 1, 2, 3, 1, 2, 3, 4, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7, 8, 1, 2, 3, 4, 5, 6, 7, 8, 9)

4.mapValues 对每个元素里面的value转换
5.substract 求两个rdd相减
6.intersection 求两个rdd并集
7.cartesian 求两个rdd笛卡尔积

scala> val a = sc.parallelize(Array(1,2,3,4,5))
scala> val b = sc.parallelize(Array(1,2,6))

scala> a.subtract(b).collect
res28: Array[Int] = Array(4, 3, 5)

scala> a.intersection(b).collect
res30: Array[Int] = Array(2, 1)

scala> a.cartesian(b).collect
res32: Array[(Int, Int)] = Array((1,1), (2,1), (1,2), (1,6), (2,2), (2,6), (3,1), (4,1), (5,1), (3,2), (3,6), (4,2), (4,6), (5,2), (5,6))

2.action

action的时候,才进行计算
1.collect 返回所有元素的集合
2.count 求元素数量
3.reduce 依次计算
4.top 求最大的元素元素,可以自己设置排序方式
5.takeSample 求随机
6.takeOrdered 与top排序方式相反

3.cache

相关文章

  • 3.Spark学习(Python版本):Spark RDD编程基

    Spark中针对RDD的操作包括创建RDD、RDD转换操作和RDD行动操作。 Step1. 启动HDFS和Spar...

  • spark笔记总结

    RDD基础: transformation操作:由一个RDD生成新的RDD, 转化操作是惰性的 action操作:...

  • RDD详解

    RDD基本操作(引用) 1、RDD是什么 RDD:Spark的核心概念是RDD (resilientdistrib...

  • Spark入门(Python)--1.2 RDD操作

    转化操作: RDD的转化操作是返回新的RDD的操作。转化出来的RDD是惰性求值的,只有在行动操作中用到时才会被计算...

  • 【Spark入门-笔记】RDD编程

    1 RDD基础 2 创建RDD-两种方式 2.1 进行并行化创建RDD 2.2 读取数据创建RDD 3 RDD操作...

  • RDD、DataFrame、Dataset区别

    RDD: 1、RDD一般和spark mlib同时使用 2、RDD不支持sparksql操作 DataFrame:...

  • Spark_day04

    RDD的 Shuffle 和 分区 RDD的分区操作2.Shuffle 的原理 分区的作用 RDD 使用分区来分布...

  • RDD操作

    1.14 transformation和action Spark支持两种RDD操作:transformation和...

  • Rdd的操作

    1.transformation lazy:仅仅记录transformation路径,不发生操作 map 对每一个...

  • Spark之RDD算子-创建算子

    RDD算子是Spark计算框架中定义的对RDD进行操作的各种函数,从RDD算子的功能可将RDD算子分为四类,创建算...

网友评论

    本文标题:Rdd的操作

    本文链接:https://www.haomeiwen.com/subject/hafgoqtx.html