Spark大数据技术与应用
第一章Spark简介与运行原理
1.Spark是2009年由马泰·扎哈里亚在美国加州大学伯克利分校的AMPLab实验室开发的子项目,经过开源后捐赠给Aspache软件基金会,成为了Apache Spark。由Scala语言实现的专门为大规模数据处理而设计的快速通用的计算引擎。
2.Spark的三个特点:(1)易于使用Spark提供高级应用程序编程接口(2)计算速度快,支持交互式计算和复杂算法(3)Spark是一个通用引擎,可用完成各种运算,包括SQL查询、文本处理、机器学习、实时流处理等。
3.Spark与Hadoop的区别和联系:(1)解决问题的方式不一样。Hadoop和Spark两者都是大数据框架,但是各自的属性和性能却不完全相同。Hadoop是一个分布式数据基础架构,将巨大的数据集分派到有个由普通计算机组成的集群中,由其中的多个节点进行存储,意味着用户不需要购买维护昂贵的服务器硬件,还会对这些数据进行排序和追踪,使得大数据处理和分析更加迅速高效;Spark则是一个专门用来对分布式存储的大数据进行处理的工具,但它并不会进行分布式数据的存储。(2)两者可合可分。Hadoop不仅提供了HDFS的分布式数据存储功能,还提供MapReduce的数据处理功能,所以用户可以不使用Spark而选择使用Hadoop自身的MapReduce对数据进行处理。同样Spark也不一定需要依附在Hadoop系统中,因为Spark没有提供文件管理系统,所以它需要和其他的分布式文件系统先进行集成然后才能运作。
4.Spark在各个领域中的用途:(1)快速查询系统,Spark能够承担大多数日志数据的即使查询工作,在性能方面普遍比Hive快2~10倍,如果借用内存表功能,性能将会比Hive快百倍。(2)实时日志采集处理系统(3)业务推进系统(4)定制广告系统(5)用户图计算系统
5.Spark生态系统以Spark Core为核心,利用Standalone、YARN和Mesos等进行资源调度管理,完成应用程序分析与处理。Spark Core提供Spark最基础与最核心的功能,它的子框架包括Spark SQL、Spark Streaming、MLlib和GraphX. 

SPARK 技术 Spark技术与应用是什么意思_数据

SPARK 技术 Spark技术与应用是什么意思_数据_02

6.Spark框架与原理

spark框构设计

SPARK 技术 Spark技术与应用是什么意思_大数据_03

                                                spark作业运行流程

SPARK 技术 Spark技术与应用是什么意思_Hadoop_04

 spark分布式计算流程

SPARK 技术 Spark技术与应用是什么意思_大数据_05