首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >消耗的HDFS空间:"hdfs dfs -du /“vs "hdfs dfsadmin -report”

消耗的HDFS空间:"hdfs dfs -du /“vs "hdfs dfsadmin -report”
EN

Stack Overflow用户
提问于 2015-11-04 17:06:00
回答 2查看 7.4K关注 0票数 5

哪种工具是测量HDFS空间消耗的正确工具?

当我总结"hdfs dfs -du /“的输出时,与"hdfs dfsadmin -report”("DFS Used“行)相比,我总是得到较少的空间量。有没有du没有考虑的数据?

EN

回答 2

Stack Overflow用户

发布于 2015-11-04 17:41:38

Hadoop文件系统通过将数据拷贝放到多个节点来提供重新标记存储。副本的数量是复制因子,通常是大于1。

Command hdfs dfs -du /显示在不进行复制的情况下占用数据的空间。

命令hdfs dfsadmin -report (使用DFS行)显示考虑数据复制的实际磁盘使用情况。因此,当从dfs -ud命令获取数字时,它应该是几倍大。

票数 4
EN

Stack Overflow用户

发布于 2016-03-15 14:15:02

HDFS存储的工作原理简介:

代码语言:javascript
复制
Let say replication factor = 3 (default) 
Data file size = 10GB (i.e xyz.log)
HDFS will take 10x3 = 30GB to store that file

根据您使用的命令类型,您将获得不同的HDFS占用空间值(10 vs与30 vs)

如果您使用的是最新版本的Hadoop,请尝试以下命令。在我的例子中,这在Hortonworks Data Platform (HDP) 2.3.*及更高版本上工作得很好。这也应该适用于cloudera的最新平台。

代码语言:javascript
复制
hadoop fs -count -q -h -v /path/to/directory

(-q =配额,-h =人类可读的值,-v =详细)

此命令将在输出中显示以下字段。QUOTA REMAINING_QUOTA SPACE_QUOTA REMAINING_SPACE_QUOTA DIR_COUNT FILE_COUNT CONTENT_SIZE FILE_NAME

哪里

代码语言:javascript
复制
CONTENT_SIZE = real file size without replication (10GB) and 
SPACE_QUOTA = space occupied in HDFS to save the file (30GB)

注意:这里控制复制因子:修改默认hadoop安装目录conf/ dir下hdfs-site.xml文件中的"dfs.replication“属性。如果您有多节点集群,建议使用Ambari/Cloudera Manager更改此设置。

还有其他命令可以检查存储空间。例如hadoop fsck,hadoop dfs -dus,

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33517658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档