Spark中RDD的理解

Spark中RDD的理解

RDD:RDD是Spark的计算模型 RDD(Resilient Distributed Dataset)叫做弹性的分布式数据集合,是Spark中最基本的数据抽象,它代表一个不可变、只读的,被分区的数据集

操作RDD就像操作本地集合一样,数据会被分散到多台机器中(以分区为单位),需关心底层的调度细节

如何创建RDD:

1)集合并行化创建(通过scala集合创建)scala中的本地集合------> spark RDD
val  rdd=sc.parallelize(arr)

2)

//读取外部文件系统,比如HDFS等

val  rdd2 = sc.textFile(“hdfs://hdp-nn-01:9000/words.txt”)

//读取本地文件

val  rdd2 = sc.textFile(file:///root/words.txt”)

3)从父RDD转换成新的子RDD,最常用方式
调用Transformation 类的方法,生成新的RDD

参考:
https://blog.csdn.net/mys_35088/article/details/80979873

**分区概念:

** 什么是分区以及为什么要分区?

4.RDD的分区:

rdd中和文件切片相关的概念叫做分区,也就是说对rdd进行操作,实际上是操作的rdd中的每一个分区,分区的数量决定了并行的数量。

使用rdd.partitions.size或者rdd.partitions.length查看分区数量。

Spark RDD 是一种分布式的数据集,由于数据量很大,因此要它被切分并存储在各个结点的分区当中。从而当我们对RDD进行操作时,实际上是对每个分区中的数据并行操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值