NameNode数据存储

 HDFS架构图

 

 

NameNode数据存储_第1张图片

 

 

 

HDFS原理

 

  1)  三大组件  

  NameNode、 DataNode 、SecondaryNameNode

 

  2)NameNode

    存储元数据(文件名、创建时间、大小、权限、文件与block块映射关系)

 

  3)DataNode

    存储真实的数据信息

 

  4)SecondaryNameNode

    合并edits日志文件和fsimage镜像文件进行合并

 

 

 

   

NameNode数据存储_第2张图片

详细信息如下:

NameNode数据存储_第3张图片 

其中fsimage_0000000000000000000000属于镜像文件

see_txid操作事务id 

其中fsimage_0000000000000000000000.md5属于校验和

VERSION属于版本号,详细信息如下:

NameNode数据存储_第4张图片

 

 

 

 

(1)dfs.namenode.name.dir  file://{$hadoop.tmp.dir}/dfs/name 

hadoop.tmp.dir      /tmp/hadoop-${user.name}

 

 

 多次格式化的问题:

 

hdfs格式化会改变VERSION文件中的clusterID, 首次格式化时datanode和namenode会产生相同的clusterID;

如果重新执行格式化,namenode的clusterID改变,就会愈datanode的cluseterID不一致,如果重启或者读写hdfs,就会挂掉

 

(2)dfs.datanode.data.dir  file://${hadoop.tmp.dir}/dfs/data

hadoop.tmp.dir      /tmp/hadoop-${user.name}

例:/tmp/hadoop-root/dfs目录下:

name、data、namesecondary

 

(3)dfs.namenode.checkpoint.dir  file://{hadoop.tmp.dir}/dfs/namesecondary

 

 

tmp/hadoop-${user.name}/dfs/name或者 tmp/hadoop-${user.name}/dfs/data下的datanode和namenode信息在系统

在重启时,会被清空处理。为了防止数据丢失,接下来我们更改路径存储,以namenode为例:

 

 

 

 配置hdfs信息如下:将namenode数据存储在data/name下面

 

NameNode数据存储_第5张图片

 

 

 在执行格式化之前,查询data下的目录信息:

 

 

 

进行格式化:

hdfs namenode -format -force

格式化之后,在data/name/current下查看name信息

 

转载于:https://www.cnblogs.com/zhichun/p/11396530.html

你可能感兴趣的:(NameNode数据存储)