要获取hdfs中的可用空间,我可以使用以下命令:
hadoop fs -df /
但我需要使用java代码访问它。hadoop文件系统api似乎没有提供免费的hdfs空间。我可以找到df命令的java等价物,但无法理解如何使用它。有人能帮忙吗?
bqjvbblv1#
在研究了命令如何工作的代码之后,我发现它使用hadoop文件系统api来获取 FsStatus 对象。此对象提供已使用和可用的hdfs空间。获取此信息的代码可以是:
FsStatus
Configuration conf = new Configuration(); FileSystem fs = FileSystem.get(conf); Path path = new Path("/"); long used = fs.getStatus(path).getUsed(); long available = fs.getStatus(path).getRemaining();
1条答案
按热度按时间bqjvbblv1#
在研究了命令如何工作的代码之后,我发现它使用hadoop文件系统api来获取
FsStatus
对象。此对象提供已使用和可用的hdfs空间。获取此信息的代码可以是: