Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop:从DistributedCache获取文件时FileNotFoundExcepion_Hadoop_Distributed Cache - Fatal编程技术网

Hadoop:从DistributedCache获取文件时FileNotFoundExcepion

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,尽管该

我有两个节点群集(v1.04),主节点和从节点。在主机上,在
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的路径和节点上文件的路径没有区别。谢谢你的关注。。。