NameNode:
Namesystem:
FSDirectory:
成员:
INodeDirectory:rootDir , 目录跟节点,继承自INode, 跟isFile判断是目录还是文件
INodeMap:inodeMap: 保存根目录下所有Inode节点,通过INodeId查找INode。
主要作用:管理文件路径
FSImage:
成員:FSEditLog
主要作用:管理image和edit文件
读取fsimage文件:loadFSImageFile()
保存fsimage文件: saveFSImage()
从2NN读取image文件:saveDigestAndRenameCheckpointImage()
BlockManager:
成员:
BlocksMap:blocksMap: 用来保存所有的block信息
getBlocksWithLocations(): 从指定dataNode获取全部block的位置信息
主要作用:
DatanodeManager:
成员:
getDatanode():通过DatanodeID获取Datanode信息
registerDatanode():通过RPC接口被dataNode调用,把dataNode注册到NameNode