除了使用 Cloudera Navigator,我如何在 HDFS 中找到访问频率较低的文件。
问问题
114 次
1 回答
0
我假设您正在查找文件最后一次访问(打开、读取等)的时间,因为过去越长,访问文件的次数就越少。
因此,您可以通过ls -l -someMoreOptions在 Linux 中非常简单地执行此操作,而在 HDFS 中需要做更多的工作。
也许您可以监视上述文件的/hdfs-audit.log
for 。cmd=open
或者你可以实现一个小函数来读取FileStatus.getAccessTime()
和,正如在是否有办法获取 HDFS 文件的最后访问时间?或如何获取 HDFS 中任何文件的最后访问时间?在 Cloudera 社区。
换句话说,有必要创建一个小程序来扫描所有文件,读出属性
...
status = fs.getFileStatus(new Path(line));
...
long lastAccessTimeLong = status.getAccessTime();
Date lastAccessTimeDate = new Date(lastAccessTimeLong);
...
并订购它。您将能够找到长时间未访问的文件。
于 2019-09-20T13:57:30.720 回答