在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
Spark是一个实现快速通用的集群计算平台,它是基于内存的迭代计算框架,适用于需要多次操作特定数据集的应用场合。在大数据库架构中常常需要使用Spark,Spark的知识点一直也是大数据面试题的重点,本文整理了Spark知识点汇总,现在就和大家一起梳理下吧!

1、Spark的核心是什么?
RDD是Spark的基本抽象,是对分布式内存的抽象使用,实现了以操作本地集合的方式来操作分布式数据集的抽象实现。RDD也是Spark非常核心的东西,它表示已被分区,不可变的并能够被并行操作的数据集合,不同的数据集格式对应不同的RDD实现。
RDD必须是可序列化的。RDD可以cache到内存中,每次对RDD数据集的操作之后的结果,都可以存放到内存中,下一个操作可以直接从内存中输入,省去了MapReduce大量的磁盘IO操作。这对于迭代运算比较常见的机器学习算法, 交互式数据挖掘来说,效率提升比较大。
2、Spark的适用场景有哪些?
由于 RDD的特性,Spark不适用那种异步细粒度更新状态的应用,例如web服务的存储或者是增量的web爬虫和索引。就是对于那种增量修改的应用模型不适合。总的来说Spark的适用面比较广泛且比较通用。
3、Spark支持的编程语言有哪几种?
Spark通过与编程语言集成的方式暴露RDD的操作,类似于DryadLINQ和FlumeJava,每个数据集都表示为RDD对象,对数据集的操作就表示成对RDD对象的操作。
Spark主要支持的编程语言是Scala、java、python。
Scala
Spark使用Scala开发,默认使用Scala作为编程语言。编写Spark程序比编写Hadoop MapReduce程序要简单的多,SparK提供了Spark-Shell,可以在Spark-Shell测试程序。
Java
Spark支持Java编程,但对于使用Java就没有了Spark-Shell这样方便的工具,其它与Scala编程是一样的,因为都是JVM上的语言,Scala与Java可以互操作,Java编程接口其实就是对Scala的封装。
Python
现在 Spark也提供了Python编程接口,Spark使用py4j来实现python与java的互操作,从而实现使用python编写Spark程序。Spark也同样提供了pyspark,一个Spark的python shell,可以以交互式的方式使用Python编写Spark程序。
以上就是小编整理的有关Spark的知识点,全部都是干货呀,还没记住的小伙伴赶紧再复习一遍吧!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
大数据Lambda架构概念及应用
Lambda Architecture 概念Mathan Marz的大作Big Data: Principles and best practices of scalable real-time data systems介绍了Lambda Architecture的概念,用于在大数据架构中,如何让real-time与batch job更好地结合起来,以达成对大数据的实时处理。
10059
2020-09-04 17:57:48
数据分析对企业经营的作用和现实意义
大数据时代的浪潮,不仅改变着每个人个人的命运,同时为企业提供了更多的机会。在日常的企业经营中,我们往往会用到数据分析,那么数据分析对企业经营到底有多大的作用?又有哪些现实意义呢?
14244
2019-08-13 17:38:12
大数据是思维还是技术?
大数据是思维还是技术?大数据既离不开思维也无法脱离技术支持,大数据思维是解决问题的方法,而大数据技术是手机数据的的工具,二者结合在一起才是大数据。大数据无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
9917
2019-10-25 10:46:40
Hadoop集群动态扩容讲解
今天本文要讲解的是Hadoop集群动态扩容的内容,那么什么是动态扩容呢?数据量随着公司业务的增长越来越大,原有的datanode节点的容量,已经不能满足存储数据的需求,需要在原有集群基础上,动态添加新的数据节点,这就是我们说的动态扩容。下面一起来看看基础准备、添加datanode、datanode负载均衡服务、添加nodemanager等相关内容吧~
7223
2020-06-08 10:56:55
大数据开发离线计算框架知识点总结
大数据开发离线计算框架知识点总结,大数据在带来发展机遇的同时,也带来了新的挑战,催生了新技术的发展和旧技术的革新。大数据离线计算技术应用于静态数据的离线计算和处理,框架设计的初衷是为了解决大规模、非实时数据计算,更加关注整个计算框架的吞吐量。
6762
2020-07-16 16:41:14
