我想知道是否可以仅从Hadoop中的一个机架获取块报告?
我知道我可以使用以下命令获得整个块报告:
hdfs fsck / -files -blocks -racks
但是,当群集很大时,运行命令需要花费大量时间。我只想查看位于特定机架中的块。有没有办法只从一个机架获取报告?(即,指定机架而不是路径)
提前致谢
不,很遗憾你不能。 您可以在上游提交 JIRA 以将其添加到 hdfs fsck
中。 但是,请记住,HDFS 文件复制总是试图保留一个在不同的机架上拷贝以获得更好的容错能力,因此即使您可以针对一个机架,您仍然会引用分布在整个文件系统中的文件。
https://issues.apache.org/jira/browse/HADOOP-498?jql=text%20~%20%22fsck%22