我是靠谱客的博主 包容老虎,最近开发中收集的这篇文章主要介绍Spark入门教程(一) 初始Spark:概述、特点及其生态圈概念优势Spark生态圈,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

概念


引用Spark官网的定义:Apache Spark™ is a fast and general engine for large-scale data processing

Spark是用于大规模数据处理的快速和通用的集群计算平台

目前大数据处理的应用主要可以分为离线的海量数据处理(如用户画像、推荐系统),以及实时的数据流处理(天猫双十一实时大屏)。

前者可以使用Hadoop MapReduce,后者可以使用Storm。

而我们的Spark,既可以支持离线海量数据处理,又可以支持实时的数据流处理,并且还具有很多优势:快速、通用、兼容、强大的生态圈。

优势


(1)快速

与Hadoop的MapReduce(计算完之后会将中间结果存储在磁盘)相比,Spark基于内存的运算要快100倍以上,基于硬盘的运算也要快10倍以上。Spark实现了高效的DAG执行引擎,可以通过基于内存来高效处理数据流。

(2)通用

Spark支持Java、Python和Scala的API,还支持超过80种高级算法,使用户可以快速构建不同的应用。而且Spark支持交互式的Python和Scala的shell,可以非常方便地在这些shell中使用Spark集群来验证解决问题的方法。

(3)兼容

Spark可以非常方便地与其他的开源产品进行融合。比如,Spark可以使用Hadoop的YARN作为它的资源管理和调度器,并且可以处理所有Hadoop支持的数据,包括HDFS、HBase等。

Spark生态圈


 

 
spark生态圈

(1)Spark Core :实现Spark基本功能,如任务调度,内存管理,与存储系统交互,还包括对弹性分布式数据集RDD的API定义。 

(2)Spark SQL :Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame并且作为分布式SQL查询引擎的作用。它将Spark SQL转换成RDD,然后提交到集群执行,执行效率非常快。 

(3)Spark Streaming :是Spark提供的对实时数据进行流式计算的组件。如网页服务器日志等都是数据流,Spark Streaming提供了操作数据流的API。 

(4)Mlib :提供了很多种机器学习算法,包括分类、回归、聚类、协同过滤等,还提供了模型评估,数据导入等额外支持的功能。 

(5)GraphX: 是用于操作图(比如社交网络的朋友关系图)的程序库,可以进行并行的图计算。



作者:Seven_Ki
链接:https://www.jianshu.com/p/b3ce62f2f287
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

转载于:https://www.cnblogs.com/chendongjing/p/8461032.html

最后

以上就是包容老虎为你收集整理的Spark入门教程(一) 初始Spark:概述、特点及其生态圈概念优势Spark生态圈的全部内容,希望文章能够帮你解决Spark入门教程(一) 初始Spark:概述、特点及其生态圈概念优势Spark生态圈所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(30)

评论列表共有 0 条评论

立即
投稿
返回
顶部