Spark是什么?

Spark 是一种基于内存的快速、通用、可扩展的大数据分析计算引擎。

Spark or Hadoop

1,Spark 是一个分布式数据快速分析项目。它的核心技术是弹性分布式数据集(Resilient Distributed Datasets),提供了比 MapReduce 丰富的模型,可以快速在内存中对数据集 进行多次迭代,来支持复杂的数据挖掘算法和图形计算算法。
2,Spark 和Hadoop 的根本差异是多个作业之间的数据通信问题 : Spark 多个作业之间数据 通信是基于内存,而 Hadoop 是基于磁盘。
Spark Task 的启动时间快。Spark 采用 fork 线程的方式,而 Hadoop 采用创建新的进程 的方式。
3,Spark 只有在 shuffle 的时候将数据写入磁盘,而 Hadoop 中多个 MR 作业之间的数据交 互都要依赖于磁盘交互
4, Spark 的缓存机制比 HDFS 的缓存机制高效。

核心模块

1,Spark Core
2,Spark SQL
3,Spark Streaming
4,Spark MLlib
5,Spark Graphx