一、spark基础
1、为什么使用Spark
Ⅰ、MapReduce编程模型的局限性
(1) 繁杂
只有Map和Reduce两个操作,复杂的逻辑需要大量的样板代码
(2) 处理效率低
Map中间结果写磁盘,Reduce写HDFS,多个Map通过HDFS交换数据 任务调度与启动开销大
(3) 不适合迭代处理、交互式处理和流式处理
Ⅱ、Spark是类Hadoop MapReduce的通用并行框架
(1) Job中间输出结果可以保存在内存,不再需要读写HDFS
(2) 比MapReduce平均快10倍以上
Ⅲ、Spark VS Hadoop
Hadoop |
Spark |
|
类型 |
分布式基础平台,包含计算、存储、调度 |
分布式计算工具 |
场景 |
大规模数据集上的批处理 |
迭代计算、交互式计算、流计算 |