HDFS知识点总结

HDFS永久性数据结构分析

一.namenode文件目录

VERSION:包含运行hdfs的版本信息

  • layoutVersion属性:hdfs数据结构的版本号,只要数据结构改变,版本号递减。
  • namespceID:文件系统命名空间唯一标识,namenode首次格式化创建。
  • clusterID:hdfs集群唯一标识,在联邦hdfs十分重要。
  • blockpoolID:数据块池唯一标识,数据块池包含有一个NameNode管理的命名空间中的所有文件。

编辑日志:由edit及后缀(事务id)组成

  • 客户端执行写操作,这些事务会记录到其中。

映像文件:fsimage及后缀(映像文件最后一个事务)组成

  • 文件系统元数据的完整永久性检查点
  • namenode启动、故障时:最近的fsimage文件载入到内存以重构元数据的最近状态。从相关点开始向前执行编辑日志中记录的每个事务。(正因如此,namenode重启会很慢)

为了解决上述(重启)问题,使用辅助namenode创建检查点

  • 1.namenode停止正在进行的edit文件(产生新文件)。2.辅助namenode从主namenode获取最近的fsimage和edits文件。3.辅助namenode将fsimage文件载入内存,执行edits中的事务,合并成新fsimage文件。4.将新fsimage文件发送给主namenode
  • 通常,辅助namenode隔一小时创建一个检查点。如果编辑日志大小达到100万个事务,改为 一分钟一次

二.dadanode文件目录

元数据文件:blk及原始字节数为后缀组成

  • 包块头部和一系列校验和组成
  • 每个块属于一个数据块池,每个数据块池都有自己的存储目录

三.安全模式

namenode启动时,载入fsimage文件到内存,建立文件系统原数据,此过程处于安全模式(客户端只有只读操作)。

冷知识

复本
三个复本不区分主从关系

联邦HDFS
为了解决hadoop1.0中namenode的压力问题而引入。
可以添加namenode管理不同命名空间

HA
2.0中支持两个namenode,3.0中可以一主多从

块缓存
对于频繁访问的文件,其对应的块可能被显示地缓存在datanode的内存中。

检查校验和命令
fs -checksum

hdfs的读取和写入:

https://blog.csdn.net/weixin_43093501/article/details/89423504

hdfs知识点








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