如题所述
第1个回答 2022-04-07
fsImage文件没有记录文件包含哪些块以及每个块存储在哪个数据节点。
由名称节点把这些映射信息保留在内存中,当数据节点加入HDFS集群时,数据节点会把自己所包含的块列表告知给名称节点,此后会定期执行这种告知操作,以确保名称节点的块映射是最新的。
在名称节点启动的时候,它会将fsImage文件中的内容加载到内存中,之后再执行EditLog文件中的各项操作,使得内存中的和实际的同步,存在内存中的元数据支持客户端的读操作。
由名称节点把这些映射信息保留在内存中,当数据节点加入HDFS集群时,数据节点会把自己所包含的块列表告知给名称节点,此后会定期执行这种告知操作,以确保名称节点的块映射是最新的。
在名称节点启动的时候,它会将fsImage文件中的内容加载到内存中,之后再执行EditLog文件中的各项操作,使得内存中的和实际的同步,存在内存中的元数据支持客户端的读操作。