由apache发布的分布式系统框架,用以处理海量数据的存储和计算。
一、特性
1、高可靠性
一个节点损坏,不会影响整个集群的功能。
2、高扩展性
可以动态增减节点。
3、高效性
并行工作,将每个任务拆分给各节点并行运算再汇总,提高效率。
4、高容错性
自动将失败的任务重新分配,提高容错率。
二、架构
架构图
1、数据存储——HDFS
NameNode:数据存储命名空间(数据目录,数据存储的位置);
DataNode:数据存储空间(数据实际存储的位置);
SecondaryNameNode:备用命名空间(防止NameNode无法运行)。
2、数据计算——MapReduce
分为Map、Reduce两个过程,
Map:给各节点分配任务,
Reduce:汇总各节点的任务结果。
3、资源调度——Yarn(hadoop1.0没有)
给各任务分配运算资源。
ResourceManager(RM):管理整个集群的资源;
NodeManager(NM):管理该节点的资源;
ApplicationMaster(AM):管理单个任务的运行资源;
Container:为任务临时封装的容器,相当于一个临时搭建的服务器。