1)高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。
2)高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。
3)高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
4)高容错性:能够自动将失败的任务重新分配。
Hadoop Distributed File System,简称 HDFS,是一个分布式文件系统。
HDFS架构概述:
1)NameNode(nn):存储文件的元数据
,如文件名,文件目录结构,文件属性
(生成时间、副本数、文件权限),以及每个文件的块列表
和块所在的DataNode
等。
2)DataNode(dn):在本地文件系统存储文件块数据
,以及块数据的校验和
。
3)Secondary NameNode(2nn):每隔一段时间对NameNode元数据备份
。
Yet Another Resource Negotiator 简称 YARN ,另一种资源协调者,是 Hadoop 的资源管理器。
1)ResourceManager(RM):整个集群资源(内存、CPU等)的老大
3)ApplicationMaster(AM):单个任务运行的老大
2)NodeManager(N M):单个节点服务器资源老大
4)Container:容器,相当一台独立的服务器,里面封装了任务运行所需要的资源,如内存、CPU、磁盘、网络
等。
MapReduce:分布式的离线并行计算框架,对海量数据的处理。将计算过程分为Map和Reduce两个阶段,Map阶段并行处理输入数据,Reduce阶段对Map结果进行汇总。
Mapper:
Reduce: