在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
随着移动互联网的发展,云计算大数据开发求职者越来越多。今天小编为大家整理了关于spark的经典面试题:spark中的RDD是什么?RDD有哪些特性?并且编写了较为详细的答案说明,希望能帮助大家解答这方面的疑惑。
RDD是什么
Spark是围绕弹性分布式数据集(RDD)的概念展开的,RDD是一种容错的可分布式操作的数据集合。有两中方式可以创建RDD:一种是将驱动程序中的已有集合平行化;另外一种是引用外部存储系统的数据集,例如共享文件系统,HDFS, HBase, 或者其他类似Hadoop的数据源。
RDD的特点之一是分布式存储,它的好处就是数据存储在不同的节点上,当需要数据进行计算的时候可以在这些节点上并行操作。弹性表现在节点在存储RDD数据的时候,既可以存储在内存中,也可以存储在磁盘上,也可以两者结合使用。RDD还有个特点就是延迟计算,当是transformation算子的时候,并不执行操作,直到遇到action算子的时候才开始执行计算。
RDD有哪些特性
1 、A list of partitions
——RDD是由多个partition构成的。
2、A function for computing each split
——RDD的每个分区上都有一个函数去作用
3、 A list of dependencies on other RDDs
——RDD有依赖性,通常情况下一个RDD是来源于另一个RDD,这个叫做lineage。RDD会记录下这些依赖,方便容错。
4、Optionally, a Partitioner for key-value RDDs (e.g. to say that the RDD is hash-partitioned)
——可选项,如果RDD里面存的数据是key-value形式,则可以传递一个自定义的Partitioner进行重新分区,例如这里自定义的Partitioner是基于key进行分区,那则会将不同RDD里面的相同key的数据放到同一个partition里面。
5、Optionally, a list of preferred locations to compute each split on (e.g. block locations for an HDFS file)
——最优的位置去计算,也就是数据的本地性。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
数据挖掘、数据分析以及大数据之间的区别有哪些?
进入大数据时代,和数据相关的名词都被人们津津乐道。那数据挖掘、数据分析以及大数据之间有哪些区别呢?数据挖掘是发现信息以及收集数据的过程;数据分析则是将现有数据进行归纳以及分析得出相应结论的过程。而大数据则更加关注数据本身,重要表现就是数据量大,数据的多样性等等。
13211
2019-06-20 18:11:53
大数据应用技术的发展方向分析
如今,大数据的应用对企业公司以及个人都产生了深远影响,本文就来预测一下大数据应用技术的发展方向。可以预见的是,数据资产管理、数据资产管理、AI驱动的数据基础设施、面向AI的分布式计算框架和数据安全这些都将成为大数据应用技术的发展方向。对大数据应用技术感兴趣的小伙伴,可以接着往下看小编的的详细分析。
6584
2019-10-29 17:24:18
大数据工程师加班多吗?工作强度大不大?
大数据时代的来临,使得大数据工程师一职也变得火爆起来。许多想要学习大数据并今后投身于此的伙伴,在羡慕这一行广阔发展前景和高额薪资待遇的同时,难免也会担心这样的问题:大数据工程师加班多吗?工作强度大不大?其实我们都明白高薪的工作肯定不轻松的道理,但是大数据工程师的工作强度,也远远没有大家想象的没那么大。而且不同的公司,加班的强度也是不一样的,因此不能一概而论。
13385
2019-12-05 20:33:40
大数据开发工程师招聘要求高吗?
大数据开发工程师该岗位对于技术要求较高,有一定的技术门槛。大数据工程师不少细分方向,不同的方向需要具备不同的知识结构,分别是大数据底层平台研发、大数据应用开发、大数据分析和大数据运维。
6272
2020-12-15 16:16:44
学习大数据前应该了解什么?
大数据学习不能停留在理论的层面上,大数据方向切入应是全方位的,基础语言的学习只是很小的一个方面,编程落实到最后到编程思想。学习前一定要对大数据有一个整体的认识。
3780
2021-01-06 10:19:34