Hadoop框架

HADOOP框架

Hadoop主要解决海量数据的存储和海量数据的分析计算问题。

Hadoop三大发行版本:Apache、Cloudera、Hortonworks。

Apache版本最原始(最基础)的版本,对于入门学习最好。

Cloudera在大型互联网企业中用的较多。

Hortonworks文档较好。

Hadoop项目主要包括以下四个模块

◆ Hadoop Common:
为其他Hadoop模块提供基础设施
◆ Hadoop HDFS:
一个高可靠、高吞吐量的分布式文件系统
◆ Hadoop MapReduce:
一个分布式的离线并行计算框架
◆ Hadoop YARN:
一个新的MapReduce框架,任务调度与资源管理

hadoop版本

 hadoop框架内容包含hdfs、mapreduce、yarn三大组件内容

HDFS服务功能

◆NameNode是主节点,存储文件的元数据如文件名,文件目录结构,文件属性
(生成时间,副本数,文件权限),以及每个文件的块列表和块所在DataNode等。
◆DataNode 在本地文件系统存储文件块数据,以及块数据的校验和。
◆Secondary NameNode 用来监控HDFS状态的辅助后台程序,每隔一段时间获
取HDFS元数据的快照。

MapReduce计算框架

◆将计算过程分为两个阶段:Map和Reduce
Map阶段并行处理输入数据
Reduce阶段对Map结果进行汇总
◆ Shuffle链接Map和Reduce两个阶段
Map Task将数据写到本地磁盘
Reduce Task从每个Map Task上读取一份数据
◆ 仅适合离线批处理
具有很好的容错性和扩展性
适合简单的批处理任务
◆ 缺点明显
启动开销大,过多使用磁盘导致效率低下等

YARN资源管理

◆ 资源调度和资源隔离是YARN作为一个资源管理系统,最重要和最基础的两个功能。资源调度由
ResourceManager完成,而资源隔离由各个NM实现。
◆ ResourceManager将某个NodeManager上资源分配给任务(这就是所谓的“资源调度”)后,
NodeManager需按照要求为任务提供相应的资源,甚至保证这些资源应具有独占性,为任务运
行提供基础的保证,这就是所谓的资源隔离。
◆ 当谈及到资源时,我们通常指内存,CPU和IO三种资源。Hadoop YARN同时支持内存和CPU
两种资源的调度。
◆ 内存资源的多少会会决定任务的生死,如果内存不够,任务可能会运行失败;相比之下,CPU资
源则不同,它只会决定任务运行的快慢,不会对生死产生影响。

原文地址:https://www.cnblogs.com/j-h-r/p/13381667.html