【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第2节:Spark架构设计(1)
来源:互联网 发布:弱电安防预算软件 编辑:程序博客网 时间:2024/06/02 12:45
一、到底什么是Spark?
Spark是一个通用的大数据计算平台,基于“One Stack to rule them all”的理念成功成为了一体化多元化的大数据处理平台,轻松应对大数据处理中的实时流计算、SQL交互式查询、机器学习和图计算等:
Spark源于BDAS:
基于该技术堆栈,Spark目前已经成为大数据通用计算平台:
二, Spark的速度为何如此之快?
首先我们看一下Hadoop经典的处理过程:
MapReduce在每次执行的时候都要从磁盘读数据,计算完毕后都要把数据存放到磁盘上:
而Spark是基于内存的:
另外一方面,DAG也是Spark快的极为重要的原因,下面是一张DAG图的示例:
大家也可以看一下网络上一张描述DAG更多细节的图片:
基于DAG,Spark具备了非常精致的作业调度系统:
DAG中的依赖有宽依赖和窄依赖之分:
在DAG图中可以根据依赖对pipeline等优化操作:
基于RDD和DAG,并行计算整个Job:
Spark之所以快,还有一个原因就是其容错机制,这个我们会在本讲的后面和大家分享。
0 0
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第2节:Spark架构设计(1)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第3节:Spark架构设计(2)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第3节:Spark架构设计(1)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第2节:Spark架构设计(2)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第1节:为什么Spark是大数据必然的现在和未来?(2)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第1节:为什么Spark是大数据必然的现在和未来?(1)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第3小节:动手实战Scala函数式编程(1)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第2小节:动手实战Scala面向对象编程(3)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第3小节:动手实战Scala函数式编程(2)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第2小节:动手实战Scala面向对象编程(1)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第1小节:动手体验Scala(3)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第2小节:动手实战Scala面向对象编程(2)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第1小节:动手体验Scala(2)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第1小节:动手体验Scala(1)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第一章 构建Spark集群-安装Ubuntu系统(3)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第一章 构建Spark集群(第二步)(3)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第一章 构建Spark集群(第三步)(3)
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第一章 构建Spark集群(第四步)(3)
- 今天给一位WP开发者打了10块钱
- spark学习过程
- http request乱码的真相
- 将一幅二值图像转换为ERDAS可以识别的分类图像
- Window7下Qt4.8+OpenCV
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第2节:Spark架构设计(1)
- 1.6
- java第一天知识小结
- linux常用基本命令
- Windows虚拟内存的使用(四)
- ***(leetcode_string) Letter Combinations of a Phone Number
- 数据结构与算法设计---链式队列的实现(C++)
- Android开发人员必备UI效果源码
- boost的property_tree组件