1、什么是Spark?
Apache Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架。
与Hadoop和Storm等其他大数据中的MapReduce技术相比,Spark有如下优势:
(1)Spark提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。
(2)Spark可以将Hadoop集群中的应用在内存中的运行速度提升100倍,甚至能够将应用在磁盘上的运行速度提升10倍。
(3)Spark让开发者可以快速的用java、scala或Python编写程序。它本身自带了一个超过80个高阶操作符集合。而且还可以将它用在shell中以交互式的查询数据。
(4)除了Map和Reduce之外,它还支持SQL查询,流数据,机器学习和图表数据处理。开发者可以在一个数据管道用例中单独使用某一能力或者将这些能力结合在一起使用。
(5)在hadoop中,将一系列mapreduce作业串联起来,然后顺序执行这些作业,每一个作业都是高延迟的,而且只有在一个作业完成之后下一个作业才能开始启动。与Hadoop相比较,spark则允许程序开发者使用有向无环图(DAG)开发复杂的多步数据管道。而且还支持跨有向无环图的内存数据共享,以便不同的作业可以共同处理一个数据。
https://blog.youkuaiyun.com/joker992/article/details/50043349