Spark概念:
Apache Spark是专门为大规模数据处理而设计的快速通用的计算引擎。Spark是加州大学伯克利分校的AMP实验室所开源的类Hadoop MapReduce的通用并行计算框架,Spark拥有Hadoop MapReduce所具有的所有优点,但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不需要读写HDFS,因此Spark能更好的的适用于数据挖掘与机器学习等需要迭代的MApReduce的算法。
Spark特点:
(1)速度快。Spark是基于内存的分布式计算框架,高效DAG执行引擎
(2)支持java,Scala,Python,R,Sql等语言进行开发。
(3)通用:上层模块都是SparkCore的延伸。
(4)运行模式包含:
local:可以在本地eclipse、IDEA中写Spark代码,在本地运行,多用于测试
Yarn:Hadoop生态圈中的资源调度框架,Spark也可以基于Yarn运行
Standalone:Spark中自带的资源调度框架,支持分布式搭建。
Mesos:资源调度框架
Spark技术栈:
HDFS、Hadoop、Hive、MapReduce,Storm
SparkCore(处理批数据)、SparkSql(使用SQL处理分布式数据)、Sparkstreaming(处理流式数据)
弹性分布式数据集----RDD(