分布式存储,每个服务器(节点)存储文件的一部分

问题:文件大小不一,不利于统一管理

设定统一的管理单位,block块

HDFS的存储原理_元数据

block块,是HDFS最小的存储单位,每一个都是256MB(可以修改)

丢失一个block块就会使文件不完整,block块越多,损坏的概率就越大,可以通过多个备份(副本)解决

每个block块都有两个副本(可修改),并且存储在其他节点内

HDFS的存储原理_管理维护_02

HDFS的存储原理_HDFS_03



HDFS副本块数量的设置

HDFS的存储原理_HDFS_04

HDFS的存储原理_HDFS_05


fsck命令检查文件的副本数

HDFS的存储原理_管理维护_06


block设置

HDFS的存储原理_管理维护_07


Namenode元数据

HDFS的存储原理_元数据_08

HDFS的存储原理_HDFS_09

基于多个edits文件和一个fsimage文件的配合,达成对整个文件系统的管理和维护

edits文件

HDFS的存储原理_HDFS_10

问题在于,当用户想查看某文件的内容时,就需要在全部的edits种搜索,还需要从头到尾的顺序,避免后期改名或删除,效率很低

需要合并edits文件,得到最后的结果

HDFS的存储原理_管理维护_11


fsimage文件

合并所有edits文件得到fsimage文件


 NameNode元数据管理维护

HDFS的存储原理_元数据_12


元数据合并控制参数

HDFS的存储原理_管理维护_13


SecondaryNameNode的作用

HDFS的存储原理_元数据_14


HDFS的读写流程

HDFS的存储原理_HDFS_15


HDFS的存储原理_管理维护_16