HDFS存储原理

基本原理

Block 块: HDFS的最小储存单位,块大小统一,便于统一管理。
但存在Block块丢失的问题,一个文件中的任意一个块丢失都会导致文件不可用。因此提出了HDFS的备份机制。

备份: 将一个块复制多份,放在不同的服务器上。安全性大大提升。

属性设置

配置文件中的设置
HDFS存储原理_第1张图片
上传时的设置
HDFS存储原理_第2张图片
副本数检查
HDFS存储原理_第3张图片
单个块大小设置
HDFS存储原理_第4张图片

NameNode对Block的管理

NameNode对Block的管理通过两类文件实现

  1. edits文件:记录了HDFS的每一次操作,以及本次操作影响到的Block,为了避免超大的edits文件,因此此文件可能会有多个。
    HDFS存储原理_第5张图片

  2. fsimage文件:全部的edits文件合并,合并为最终结果即为FSImage文件
    -HDFS存储原理_第6张图片
    管理流程

  • 每次对HDFS的操作都会被edits记录下来
  • 当一个edits文件过大时,会再开启一个新的edits文件
  • 定期对edits文件进行合并,合并为FSImage。若FSImage不存在,那么创建一个,若存在则和之前的合并。
  • 重复上述操作

HDFS存储原理_第7张图片
HDFS存储原理_第8张图片
元数据的合并由SecondaryNameNode进行
SecondaryNameNode会通过http从NameNode拉取数据(edits和fsimage),若不启动SecondaryNameNode会造成检索效率的下降,文件系统的卡顿。

HDFS数据读写流程

写入流程HDFS存储原理_第9张图片

HDFS存储原理_第10张图片

读取流程

HDFS存储原理_第11张图片
HDFS存储原理_第12张图片

你可能感兴趣的:(大数据,hdfs,hadoop,大数据)