我手头有个问题,这要求我监视正在访问的一组文件。这些文件既可以从hadoop文件系统访问,也可以从linux机器上的文件系统访问。我需要不断地监视和集成来自两个文件系统的日志,以获取一组特定的少数文件。有什么办法吗?
slsn1g291#
从ApacheHadoop2.6.0开始(或者对于ClouderaCDH用户,从5.2.0开始),hdfs添加了类似inotify的特性。jira为此提供了一个设计文档,详细说明了hdfs支持的实现形式。来自同一实现的测试用例进一步说明了如何使用特性:testdfsinotifyventinputstream还请记住,在默认情况下,hdfs的访问时间粒度(以及跟踪)非常低,因为它具有蠕虫性能语义。您可能需要减少namenode配置中属性的值 dfs.namenode.accesstime.precision ,从默认值1小时(毫秒)开始。
dfs.namenode.accesstime.precision
1条答案
按热度按时间slsn1g291#
从ApacheHadoop2.6.0开始(或者对于ClouderaCDH用户,从5.2.0开始),hdfs添加了类似inotify的特性。jira为此提供了一个设计文档,详细说明了hdfs支持的实现形式。
来自同一实现的测试用例进一步说明了如何使用特性:testdfsinotifyventinputstream
还请记住,在默认情况下,hdfs的访问时间粒度(以及跟踪)非常低,因为它具有蠕虫性能语义。您可能需要减少namenode配置中属性的值
dfs.namenode.accesstime.precision
,从默认值1小时(毫秒)开始。