Hadoop:从DistributedCache获取文件时FileNotFoundExcepion
我有两个节点群集(v1.04),主节点和从节点。在主机上,在Hadoop:从DistributedCache获取文件时FileNotFoundExcepion,hadoop,distributed-cache,Hadoop,Distributed Cache,我有两个节点群集(v1.04),主节点和从节点。在主机上,在Tool.run()中,我们使用addCacheFile()将两个文件添加到DistributedCache中。文件确实存在于HDFS中。 在Mapper.setup()中,我们希望使用 FSDataInputStream fs = FileSystem.get( context.getConfiguration() ).open( path ). 问题在于,对于一个文件,会抛出一个FileNotFoundException,尽管该
Tool.run()
中,我们使用addCacheFile()
将两个文件添加到DistributedCache
中。文件确实存在于HDFS中。
在Mapper.setup()中,我们希望使用
FSDataInputStream fs = FileSystem.get( context.getConfiguration() ).open( path ).
问题在于,对于一个文件,会抛出一个FileNotFoundException
,尽管该文件存在于从属节点上:
attempt_201211211227_0020_m_000000_2: java.io.FileNotFoundException: File does not exist: /somedir/hdp.tmp.dir/mapred/local/taskTracker/distcache/-7769715304990780/master/tmp/analytics/1.csv
从机上的ls–l:
[hduser@slave ~]$ ll /somedir/hdp.tmp.dir/mapred/local/taskTracker/distcache/-7769715304990780/master/tmp/ analytics/1.csv
-rwxr-xr-x 1 hduser hadoop 42701 Nov 22 10:18 /somedir/hdp.tmp.dir/mapred/local/taskTracker/distcache/-7769715304990780/master/tmp/ analytics/1.csv
我的问题是:
谢谢。已解决-应使用:
FileSystem.getLocal( conf )
感谢Hadoop邮件列表中的Harsh J。已解决-应使用:
FileSystem.getLocal( conf )
感谢Hadoop邮件列表中的Harsh J。ll输出在分析之前显示一个空格。您提供给hadoop的路径中缺少空格。我编辑了输出以隐藏一些敏感信息,可能是错误地输入了空格。在我的环境中,提供给hadoop的路径和节点上文件的路径没有区别。感谢您的关注。
ll
输出在分析之前显示一个空格。您提供给hadoop的路径中缺少空格。我编辑了输出以隐藏一些敏感信息,可能是错误地输入了空格。在我的环境中,提供给hadoop的路径和节点上文件的路径没有区别。谢谢你的关注。。。