3.HDFS的数据与元数据

查看HDFS配置文件

$ vim /etc/hadoop/conf/hdfs-site.xml

找到dfs.namenode.name.dir的位置

<name>dfs.namenode.name.dir</name>
<value>file:///dfs/nn</value>

读取元数据文件

$ cd /dfs/nn/current
$ sudo -u hdfs hadoop oiv -i fsimage_0000000000000001003 -o fsimage.xml -p XML
$ echo $?
0

注意:返回值为0表示上一条指令执行成功

查看fsimage.xml,找到block的id为1073741980

$ vim fsimage.xml

<blocks>
  <block>
    <id>1073741980</id>
  ...
  </block>
</blocks>

根据id:1073741980查找block块文件

$ cd /dfs/dn/current
$ find ./ | grep 1073741980
./BP-214804625-192.168.41.129-1495453872490/current/finalized/subdir0/subdir0/blk_1073741980_1156.meta 
./BP-214804625-192.168.41.129-1495453872490/current/finalized/subdir0/subdir0/blk_1073741980  

找到文件blk_1073741980,然后查看block块内容

$ cat ./BP-214804625-192.168.41.129-1495453872490/current/finalized/subdir0/subdir0/blk_1073741980

ln -s /usr/java/jdk1.7.0_67-cloudera  /usr/java/default
echo -e 'export JAVA_HOME=/usr/java/default' >> /etc/profile 
echo -e 'export PATH=$JAVA_HOME/bin:$PATH'>> /etc/profile
echo -e 'export CLASSPATH=.:$JAVA_HOME/lib'>> /etc/profile

这样就可以看到文件的内容
验证了设计原则:元数据和数据分开存放,通过元数据可以找到数据

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 首先,我们在使用前先看看HDFS是什麽?这将有助于我们是以后的运维使用和故障排除思路的获得。 HDFS采用mast...
    W_Bousquet阅读 4,240评论 0 2
  • 题记:正值学校运动会假期,想吸收点新鲜的血液。心血来潮搭了个hadoop的伪分布式,了解了下HDFS。 HDFS简...
    朱晓飞阅读 794评论 0 0
  • HDFS的工作机制 概述 HDFS集群分为两大角色:NameNode、DataNode NameNode负责管理整...
    张鱼猫阅读 2,069评论 0 8
  • (一)分布式文件系统概述 数据量越来越多,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中...
    时待吾阅读 1,603评论 0 0
  • “不和你玩了。” “不玩就不玩,那我以后都不和你一起上学了。” “不……不就不。” “……” “等下放学一起回去好...
    梦呓_阅读 295评论 8 0