NameNode的介绍:node
NameNode是HDFS的核心,也称为master,它仅存储元数据(文件系统中全部文件的目录树)oop
NameNode不存储实际的数据或数据集,数据自己存储在DateNodes中ast
NameNode知道HDFS中任何给定文件的块列表及其位置信息,当NameNode集群
关闭时,Hdfs/Hardoop集群没法访问date
DateNode的介绍:下载
Datanode启动时,他将本身发布到NameNode 并汇报本身负责持有的块列表请求
当某个dataNode 关闭时,不会影响数据或集群的可用性程序
DateNode会按期(默认3秒钟)向Namenode发送心跳,若是NameNode长时间数据
没有收到心跳信息,就认为datenode失效。客户端
DataNode还会按期的(默认是6小时)向nameNode发送本身所持有的块信息
HDFS的工做机制:
NameNode负责整理整个文件系统元数据:DataNode负责管理具体的文件数据块
存储:secondary NameNode协助NameNode进行元数据的备份
HDFS写数据流程:
1)客户端请求上传文件
2)Namenode检测文件系统目录树,若是目录树中相应位置不存在,则返回客户
端能够上传,请求上传文件的3个备份,检测dataNode 的信息池,返回3个可用的
dataNode的地址信息
3)创建链接,请求数据传输,创建管道plpeline-->创建数据传输流(以大小为64K的包
为单位)
4)dataNode保存传递过来源源不断的数据包,
HDFS读数据流程:
1)客户端请求读取文件
2)NameNode 向客户端返回跟请求相关的文件全部的元数据信息
3)客户端向dataNode请求下载下载文件的不一样数据块并进行合并
MapReduce的运行介绍:
1)MRAppmaster:负责整个程序过程调度以及状态协调
2)MapTask:负责Map阶段整个数据处理流程
3)ReduceTask:负责reduce阶段的整个数据处理流程