[Spark]Spark

1.DataFrame和RDD最大的区别?
DataFrame和RDD的区别在于:
(1).DataFrame多了结构信息;
(2).DataFrame除了提供比RDD更丰富的算子以外,还可以提升执行效率,减少数据读取以及执行计划的优化,如:filter优化、谓词下推等。

2.宽依赖和窄依赖
宽依赖:父分区的数据被划分到多个子分区(一分区对多分区)。GroupByKey、ReduceByKey、Join。
窄依赖:父分区的数据被划分到一个子分区(一分区对一分区)。map、filter。

3.RDD可持久化
Spark的一个重要功能,就是在不同操作间,持久化(或缓存)一个数据集在内存中。当持久化一个RDD,每一个节点都将把它的计算分块结果保存在内存中。并在对此数据集(或者衍生出的数据集)进行的其它动作中重用。这将使得后续的动作变得更加迅速。

4.RDD序列化
在SparkRDD编程中,初始化工作是在Driver端进行的,而实际运行程序是在Executor端进行的,涉及到了跨进程通信,是需要序列化的。
只有序列化之后的RDD才能使用压缩机制。

conf.set("spark.serializer", "org.apache.spark.serializer.KryoSerializer");

5.Stage的Task数量由什么决定
并行度:是指指令并行执行的最大条数,在指令流水中,同时执行多条指令称为指令并行。
理论上:每一个stage下有多少分区,就有多少task,task的数量就是我们任务的最大的并行度。
一般情况下,我们一个task运行的时候,使用一个cores。
实际上:最大的并行度,取决于我们的application任务运行时使用的executor拥有的cores的数量。

6.Spark应用中的Driver和Executor会把计算逻辑解析成DAG。

7.Spark的master和worker通过Akka方式进行通信。

8.RDD是什么?
RDD全称是弹性分布式数据集。全称本身并没有很好地解释RDD到底是什么,本质上,RDD是Spark用于对分布式数据进行抽象的数据模型。简言之,RDD是一种抽象的数据模型,这种模型用于囊括、封装所有内存中和磁盘中的分布式数据实体。
RDD五大核心属性:

属性名 成员类型 属性含义
dependencies 变量 生成该RDD所依赖的父RDD
compute 方法 生成该RDD的计算接口
partitions 变量 该RDD的所有数据分片实体
partitioner 方法 划分数据分片的规则
preferredLocations 变量 数据分片的物理位置偏好

9.哪个不是本地模式的运行条件
如果提交的job满足以下条件,那么它将以本地模式运行:
(1).spark.localExecution.enabled设置为true
(2).用户程序显示指定可以本地运行
(3).finalStage没有父Stage
(4).仅有一个partition

10.Spark RDD的缓存方式
RDD通过persist方法或cache方法可以将前面的计算结果缓存,但是并不是这两个方法被调用时立即缓存,而是触发后面的action时,该RDD将会被缓存在计算节点的内存中,并供后面重用。
https://blog.csdn.net/a1837634447/article/details/79113306

11.Spark累加器
Spark三大核心数据结构:
(1).RDD (2).累加器(只写不读) (3).广播变量(只读不写)
https://blog.csdn.net/wx1528159409/article/details/87817785

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ![Flask](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW...
    极客学院Wiki阅读 12,103评论 0 3
  • 不知不觉易趣客已经在路上走了快一年了,感觉也该让更多朋友认识知道易趣客,所以就谢了这篇简介,已做创业记事。 易趣客...
    Physher阅读 8,710评论 1 2
  • 双胎妊娠有家族遗传倾向,随母系遗传。有研究表明,如果孕妇本人是双胎之一,她生双胎的机率为1/58;若孕妇的父亲或母...
    邺水芙蓉hibiscus阅读 9,063评论 0 2
  • 晴天,拥抱阳光,拥抱你。雨天,想念雨滴,想念你。 我可以喜欢你吗可以啊 我还可以喜欢你吗可以,可是你要知道我们不可...
    露薇霜凝阅读 4,990评论 1 2