Hadoop dfs目录
Posted alen-fly
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop dfs目录相关的知识,希望对你有一定的参考价值。
dfs目录位置由core-site.xml文件中 hadoop.tmp.dir 属性决定 :hadoop.tmp.dir属性对应值/dfs
1.dfs目录是在NameNode被格式化的时候产生的
格式化:首先在停止hadoop之后,删除 hadoop.tmp.dir 属性对应值目录下的所有文件后,执行 hadoop namenode -format 命令
2.dfs目录的子目录:name,data,nameseconds
3.in_use.lock标记当前节点已经在使用,存在于 hadoop.tmp.dir对应值/dfs/name 下
4.HDFS只有在第一启动的时候(后面重启不算,只有第一次),会默认在1min的时候进行一次合并,即:在1min的时候,edits_inprogress_xxxx 生成 edits_xxxx_xxxx,
并重新创建edits_inprogress_xxxx文件,之后文件就按照更新条件(主要空间维度和时间维度)进行合并
5.edits文件的开始和结束都会算作一次事务
6.HDFS上传文件:如文件名为aaa.tar.gz
a. OP_ADD:在指定目录下创建一个“同名文件._COPING_”,如:“aaa.tar.gz._COPING_”,此时这个文件允许写入
b.OP_ALLOCATE_BLOCK_ID:分配BlockID
c.OP_SET_GENSTAMP_V2:给时间戳分配一个编号
d.OP_ADD_BLOCK:将数据传输到HDFS上
e.OP_CLOSE:关闭流,关闭文件,<OVERWRITE>false</OVERWRITE>,即此时文件不允许写入,hdfs的特点:一次写入
f.OP_RENAME_OLD:重命名
<SRC>/aaa.tar.gz._COPYING_</SRC> 原始
<DST>/aaa.tar.gz</DST> 目标
以上内容需要查看edit文件中内容:将edits文件内容进行转换的命令:hdfs oev -i edits_xxxxxx_xxxxxx -o aaa.xml(转为为xml文件格式,文件名随意),然后查看aaa.xml文件
7.hdfs oiv -i fsimage_xxxxx -o f.xml -p XML 查看 fsimage文件
8.seen_txid 当前事务ID
9.VERSION 文件,主要的3个参数
a.clusterID:集群编号,在NameNode被格式化的时候,自动计算一个clusterID,并且在启动HDFS之后,NameNode会将clusterID分发给每一个DataNode,用于NameNode与DataNode之间的通信管理,NameNode每格式化一次,clusterID都会重新计算。但是在NameNode重启之后,由于DataNode之前已经有了clusterID,故NameNode会存在找不到DataNode的情况,解决方法2种:①将NameNode中的clusterID拷贝到DataNode中 ②将DataNode中的clusterID拷贝到NameNode中
b.storageType:节点类型
c.blockpoolID:块池ID。主要用于联邦HDFS中
以上是关于Hadoop dfs目录的主要内容,如果未能解决你的问题,请参考以下文章
bin/hadoop jar hadoop-*_examples.jar grep input output ‘dfs[a-z.]+’ 啥意思啊