01 Spark架构与运行流程

1.

Hadoop是一个能够对大量数据进行分布式处理的软件框架。具有可靠、高效、可伸缩的特点。

Hadoop的核心是HDFS和MapReduce,hadoop2.0还包括YARN。

(1)HDFS集群:负责海量数据的存储。

(2)YARN集群:负责海量数据运算时的资源调度。

(3)MapReduce:它其实是一个应用程序开发包。

从开源角度看,YARN的提出,从一定程度上弱化了多计算框架的优劣之争。YARN是在Hadoop MapReduce基础上演化而来的,在MapReduce时代,很多人批评MapReduce不适合迭代计算和流失计算,于是出现了Spark和Storm等计算框架,而这些系统的开发者则在自己的网站上或者论文里与MapReduce对比,鼓吹自己的系统多么先进高效,而出现了YARN之后,则形势变得明朗:MapReduce只是运行在YARN之上的一类应用程序抽象,Spark和Storm本质上也是,他们只是针对不同类型的应用开发的,没有优劣之别,各有所长,合并共处,而且,今后所有计算框架的开发,不出意外的话,也应是在YARN之上。这样,一个以YARN为底层资源管理平台,多种计算框架运行于其上的生态系统诞生了。

普通OS(操作系统)的功能主要是为处理器管理、存储器管理、设备管理、文件管理、作业管理和用户接口。

在集群环境下,HDFS已经负责了文件管理,而设备概念较弱,故YARN主要负责统一管理集群内服务器的计算资源(主要包括CPU和内存资源)、作业调度和用户接口。

2.

Spark的设计遵循“一个软件栈满足不同应用场景”的理念,逐渐形成一套完整生态系统,既能够提供内存计算框架,也可以支持SQL即席查询、实时流式计算、机器学习和图计算等。Spark可以部署在资源管理器YARN之上,提供一站式的大数据解决方案。因此,Spark所提供的生态系统同时支持批处理、交互式查询和流数据处理。
3.

 

posted on 2021-03-12 15:51  拿大刀的犬夜叉  阅读(49)  评论(0编辑  收藏  举报

导航