除了使用clouderanavigator之外,我如何在hdfs中找到访问频率较低的文件。
wko9yo5t1#
我假设您正在查找文件最后一次被访问的时间(打开、读取等),因为在过去,文件越长,访问的次数就越少。通过ls-l-somemore选项,您可以在linux中非常简单地完成这项工作,而在hdfs中,需要做更多的工作。也许你可以监视 /hdfs-audit.log 为了 cmd=open 提到的文件。或者可以实现一个小函数来读取 FileStatus.getAccessTime() 如下文所述,是否有任何方法可以获取hdfs文件的最后访问时间?或者如何获取hdfs中任何文件的最后访问时间?在cloudera社区。换句话说,有必要创建一个扫描所有文件、读取属性的小程序
/hdfs-audit.log
cmd=open
FileStatus.getAccessTime()
... status = fs.getFileStatus(new Path(line)); ... long lastAccessTimeLong = status.getAccessTime(); Date lastAccessTimeDate = new Date(lastAccessTimeLong); ...
然后点餐。这意味着您将能够找到长期未被访问的文件。
1条答案
按热度按时间wko9yo5t1#
我假设您正在查找文件最后一次被访问的时间(打开、读取等),因为在过去,文件越长,访问的次数就越少。
通过ls-l-somemore选项,您可以在linux中非常简单地完成这项工作,而在hdfs中,需要做更多的工作。
也许你可以监视
/hdfs-audit.log
为了cmd=open
提到的文件。或者可以实现一个小函数来读取FileStatus.getAccessTime()
如下文所述,是否有任何方法可以获取hdfs文件的最后访问时间?或者如何获取hdfs中任何文件的最后访问时间?在cloudera社区。换句话说,有必要创建一个扫描所有文件、读取属性的小程序
然后点餐。这意味着您将能够找到长期未被访问的文件。