我目前正在开发一个使用hadoop (2.7.0)的项目,我已经配置了两个节点集群,并且(大部分情况下)。我可以在没有任何问题的情况下手动运行映射器/减速器作业。但是当我试着用哈多比开始一项工作时,我会犯一个错误。调试错误后,我看到它从由hadoopy执行的以下命令中产生:
hadoop fs -mkdir _hadoopy_tmp这会产生错误:
mkdir: '_hadoopy_tmp': No such file or directory当手动执行时,mkdir可以很好地工作,如果是,则启动文件direcotry名称时,前面有一个'/‘。如果我没有以'/‘开头,我会得到与上面相同的错误。ls命令也是如此(ls /给我一个结果,ls。给出一个错误,即没有这样的文件或目录)。我猜我在某个地方搞砸了hadoop的配置。我只是不知道在哪里。
编辑:清除:我知道您应该使用带有直接路径的mkdir命令(ea /在前面)。当与hadoop进行交互时,终端我会这样做。然而,哈杜比框架似乎没有做到这一点(如上面所示,它抛出错误)。我的问题是:是否有一个修复/解决这一问题的哈多比,或我必须重写那里的源代码?
发布于 2015-05-18 15:57:52
我不明白什么是“手动”,但在我看来,您所看到的错误是完全合理的,如果您想在hadoop中创建一个目录,您应该给出正确的路径。这里没有问题,你也没有搞砸任何事。我建议你这样做:
$HADOOP_HOME/bin/hdfs dfs -mkdir /name_of_new_folder/Pd:我什么都不知道,我只是说说我在hadoop的经验(有些项目应该在这两种情况下平均处理,所以这就是我在这里回答的原因,如果我错了,请纠正我的)。
https://stackoverflow.com/questions/30306712
复制相似问题