目录
一、spark基本常识
1、spark中的RDD是什么,有哪些特性?
RDD(Resilient distributed Dataset)叫做分布式数据集模式spark中最基本的数据抽象,它代表一个不可变,可分区,里面的元素可以并行计算的集合。
Resilient:表示弹性的,弹性表示
Destributed:分布式,可以并行在集群计算
Dataset:就是一个集合,用于存放数据的
五大特性:
1)一个分区列表,RDD中的数据都存储在一个分区列表中
2)作用在每一个分区列表中的函数。
3)一个RDD依赖于其他多个RDD,RDD的容错机制就是根据这个特性而来的。
4)可选的,针对于kv类型的RDD才有这个特性,作用是决定了数据的来源及数据处理后的去向。
5)可选项,数据本地性,数据位置最优。
2、概述一下spark中常用算子区别(map,mapPartitions, foreach, foreachPartition)
map:用于遍历RDD,将函数应用的每一个元素,返回新的RDD(transformation算子)
mapPartitions:用于遍历RDD的每一个分区,返回生成一个新的 RDD(transformation算子)
foreach:用于遍历RDD,将函数应用于每一个元素,无返回值(action算子)
foreachPartition:用于遍历操作RDD中的每一个分区,无返回值(action算子)
追述:一般使用mapPatitions和foreachPatition算子比map和foreach更加高效,推荐使用
二、spark要点
1、Spark shuffle时,是否会在磁盘上存储?
会
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。