怎么查看每个文件放在哪个计算机上?

[复制链接]
查看11 | 回复2 | 2021-1-27 05:40:49 | 显示全部楼层 |阅读模式
我知道hadoop把数据装在一些块里,一个块可能在多个datanode中的随机一个,怎么知道在哪个?我看以前版本的hadoop的50070端口对应的网页似乎能查询。我用2.7.1版的50070界面有overview、datanodes、datanodevolumefailure等几个选项,点下去都没反应,只有browsethefilesystem和logs可以用,一个界面真的只有这2个可用吗,别的那么多选项都是干嘛用的?选择browsethefilesystem,找到我要看的文件,点进去,只能看到这样的信息:
BlockID:1073741825
BlockPoolID:BP-683251717-192.168.163.129-1449043564609
GenerationStamp:1001
Size:88
Availability:
*slave1
namenode的IP是192.168.163.129,datanode两个是192.168.163.129、192.168.163.130。BlockPoolID一直是192.168.163.129,已经知道存在192.168.163.130也显示192.168.163.129,不知这个表示什么。
Availability是什么意思?两台机器一台叫master,一台叫slave1,一个文件的Availability会在两个机器名间变来变去,感觉也不是表示所处位置。
我想看到有一项是显示这个文件是放在哪个机器上的啊?
分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:40:49 | 显示全部楼层

只需要知道namenode的信息?
好比linux存储,知道inode读取应该够了?

回复

使用道具 举报

千问 | 2021-1-27 05:40:49 | 显示全部楼层
引用楼主liaoqifan的回复:我知道hadoop把数据装在一些块里,一个块可能在多个datanode中的随机一个,怎么知道在哪个?我看以前版本的hadoop的50070端口对应的网页似乎能查询。我用2.7.1版的50070界面有overview、datanodes、datanodevolumefailure等几个选项,点下去都没反应,只有browsethefilesystem和logs可以用,一个界面真的只有这2个可用吗,别的那么多选项都是干嘛用的?选择browsethefilesystem,找到我要看的文件,点进去,只能看到这样的信息:
BlockID:1073741825
BlockPoolID:BP-683251717-192.168.163.129-1449043564609
GenerationStamp:1001
Size:88
Availability:
*slave1
namenode的IP是192.168.163.129,datanode两个是192.168.163.129、192.168.163.130。BlockPoolID一直是192.168.163.129,已经知道存在192.168.163.130也显示192.168.163.129,不知这个表示什么。
Availability是什么意思?两台机器一台叫master,一台叫slave1,一个文件的Availability会在两个机器名间变来变去,感觉也不是表示所处位置。
我想看到有一项是显示这个文件是放在哪个机器上的啊?


你上面的信息显示的很清楚,这个文件就在你slave1机器上,至于具体的在slave1那个文件下,这个要看你$HADOOP_HOME/etc/hadoop/hdfs-site.xml里面配置的dfs.datanode.data.dir的位置在哪。如果你配置了,那么就在/你配置的路径/current/BP-683251717-192.168.163.129-1449043564609/current/finalized/subdir0/subdir下面。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行