HDFS架构

Posted by 阿豆 on 2015-07-11

HDFS架构

Namenode: 主

存储: 文件系统的命名空间
a.文件的名称
b.文件的目录结构
c.文件的属性 权限 创建时间 副本数
d.文件对应被切割为哪些数据块+副本数–》数据块分布在哪些DN节点上
blockmap 当然nn节点不会持久化存储这种映射关系,
是通过集群启动和运行是,dn会定期发送blockreport给nn,
依次nn在内存中动态维护这种映射关系

作用:
管理文件系统的命名空间。维护文件系统树的所有文件和文件夹。
这些信息以两个文件形式永久的保存在本地磁盘上:
镜像文件fsimage
编辑日志文件editlog

Datanode:从

存储: 数据块 和 数据块校验和与NN通信:
a.每隔3s发送心跳包给 nn,我还活者
dfs.heartbeat.interval 3
b.每隔一定的时间发生一次 blockreport
dfs.blockreport.intervalMsec 21600000ms=6h
dfs.datanode.directoryscan.interval 21600s=6h

SecondaryNamenode

存储: fsimage+editlog
作用: 定期合并 fsimage+editlog文件作为新的fsimage,推送给NN,
简称为checkpoint 检查点
1.roll edit
2.传输 fsimage+edits
3.merge 合并
4.传输 fsimage.ckpt to nn
5.回滚 fsimage.ckpt==》fsimage
edit.new==> edit