在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
想要学习大数据,一定要充分掌握大数据的核心技术:Hadoop、Strom、spark等等。Spark是一种与Hadoop像是的开源集群计算环境。它启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
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。
1)Scala。Spark使用Scala开发,默认使用Scala作为编程语言。编写Spark程序比编写Hadoop MapReduce程序要简单的多,SparK提供了Spark-Shell,可以在Spark-Shell测试程序。
2)Java。Spark支持Java编程,但对于使用Java就没有了Spark-Shell这样方便的工具,其它与Scala编程是一样的,因为都是JVM上的语言,Scala与Java可以互操作,Java编程接口其实就是对Scala的封装。
3)Python。现在Spark也提供了Python编程接口,Spark使用py4j来实现python与java的互操作,从而实现使用python编写Spark程序。Spark也同样提供了pyspark,一个Spark的python shell,可以以交互式的方式使用Python编写Spark程序。
相对于MapReduce,Spark凭借基于内存计算和可以直接读写Hadoop上任何格式数据的优势,进行批处理时更加高效,并有更低的延迟。
以上就是大数据学习中关于spark的学习总结。大数据的学习中核心技术非常多。包含Linux、Zookeeper、Hadoop、Redis、HDFS、MapReduce、Hive、lmpala、Hue、Oozie、Storm、Kafka、Spark、Scala、SparkSQL、Hbase、Flink、机器学习等。正式因为大数据技术比较复杂所以现在大数据岗位的薪资一直处于非常高的水平。如果想了解更多关于大数据学习的知识,可以参考博学谷大数据课程。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
为什么大数据和云计算备受关注,大数据与云计算的关系
互联网技术不断突破与革新,大数据和云计算的概念现在已经成为互联网的热门词汇。为什么大数据和云计算这样备受关注呢?他们之间有什么关系?相信很多小伙伴也存在这样的疑问。
7374
2019-06-12 17:36:02
大数据可视化相关工具介绍
大数据的实际应用中,有一个重要的环节,就是实现数据的可视化。这是数据分析结论导向的重要体现。你可以通过可视化的数据形式明晰的了解各种数据的分布以及占比,例如大数据招聘市场的分布、目前行业岗位薪资与学历的关系、大数据热门技术的应用比例等等。本文就和大家介绍一些大数据可视化的使用工具
7565
2019-08-09 18:04:01
数据挖掘、数据分析以及大数据之间的区别有哪些?
进入大数据时代,和数据相关的名词都被人们津津乐道。那数据挖掘、数据分析以及大数据之间有哪些区别呢?数据挖掘是发现信息以及收集数据的过程;数据分析则是将现有数据进行归纳以及分析得出相应结论的过程。而大数据则更加关注数据本身,重要表现就是数据量大,数据的多样性等等。
12475
2019-06-20 18:11:53
程序员常用数据库有哪些?
数据库就是数据存储的仓库,任何互联网产品都需要使用数据库保存运营过程中所产生的各种数据。SQL是一种数据库查询语言和程序设计语言,主要就是用于管理数据库中的数据,如存取数据、查询数据、更新数据等。在大数据技术不断提升与应用的市场背景下,数据库技术也得到很大的发展,目前数据库产品非常多,最常用的数据库有:Oracle、DB2、MongoDB、SQLServer、MySQL等。
9242
2019-12-05 18:48:08
缓存是什么?为什么要使用缓存?
缓存是什么?为什么要使用缓存?缓存是将一些需要读取数据放在磁盘或者内存中,在读取数据的时候,一般是从关系型数据库中读取数据,缓存时能够最快提高服务响应速度的优化。
5616
2022-04-07 15:07:05