在线客服
扫描二维码
下载博学谷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的知识点,全部都是干货呀,还没记住的小伙伴赶紧再复习一遍吧!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
大数据面试要注意哪些方面?大数据面试准备三大攻略
大数据面试要注意哪些方面?一般来说,求职者要做好自我介绍、面试提问和专业考题三大方面的准备。下面是小编专门为大数据求职者整理的面试攻略,希望对大家找工作有所帮助。
6659
2019-09-08 19:36:29
大数据HIve数据仓库应用案例讲解分析
如今,大数据的大浪已经把我们每个人都卷入其中,随着大数据技术一起引起大众注意的还有HIve数据仓库。作为大数据分析的核心工具之一,它一直发挥着为企业提供决策支持的重要作用。因此掌握Hive是入门大数据学习的关键之一,下面我们就一起来看看HIve数据仓库应用案例讲解。
6981
2019-09-20 16:55:35
大数据分析专家到大数据技术总监如何转型?
大数据分析专家到大数据技术总监如何转型?大数据分析专家偏重对数据分析的能力,而转型成大数据技术总监除了精通数据分析能力还有具备管理能力,可以带团队做项目。
6293
2019-10-24 15:40:08
计算机大数据应用技术就业前景怎么样?
计算机大数据应用技术就业前景怎么样?作为目前最为广泛和热门的新兴技术,计算机大数据应用技术的意义不在于存储海量的的数据信息,而在于对这些数据进行专业化处理,从而更好地辅助工作中的各项决策。因此,掌握了计算机大数据应用技术,其就业前景自然广阔明亮无比。关于大数据的更多就业方向选择,我们可以看看以下的具体分析。
12441
2020-01-14 15:33:07
Flink电商项目实战介绍
随着Flink技术的飞速发展,Flink在实时处理数据方面体现出越来越显著的优势。Flink作为一个针对流数据和批数据的分布式处理引擎,其应用领域越来越广泛。本文将向大家介绍Flink电商项目实战教程,感兴趣的话就一起接着看下去吧~
5187
2020-05-11 14:58:14