nutch2.0 hadoop输入路径不存在

时间:2012-10-08 12:02:16

标签: hadoop hbase nutch

Exception in thread "main" org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: hdfs://yuqing-namenode:9000/user/yuqing/2
at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(FileInputFormat.java:235)
at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getSplits(FileInputFormat.java:252)
at org.apache.hadoop.mapred.JobClient.writeNewSplits(JobClient.java:962)
at org.apache.hadoop.mapred.JobClient.writeSplits(JobClient.java:979)
at org.apache.hadoop.mapred.JobClient.access$600(JobClient.java:174)
at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:897)
at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:850)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121)
at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:850)
at org.apache.hadoop.mapreduce.Job.submit(Job.java:500)
at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:530)
at org.apache.nutch.util.NutchJob.waitForCompletion(NutchJob.java:50)
at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:219)
at org.apache.nutch.crawl.Crawler.runTool(Crawler.java:68)
at org.apache.nutch.crawl.Crawler.run(Crawler.java:136)
at org.apache.nutch.crawl.Crawler.run(Crawler.java:250)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.nutch.crawl.Crawler.main(Crawler.java:257)

当我从nutch conf中删除hadoop的配置文件时,第一行错误变为:

Exception in thread "main" org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: file:/home/yuqing/workspace/nutch2.0/2

一旦我用hbase运行Nutch2.0成功,但现在完全分发不起作用。 完全分发的Hbase运行正常,我可以在shell中运行它。 接下来我在nutch2.0中创建一个文件夹,然后爬虫可以运行,但是控制台的输出似乎不正常。 现在我必须吃饭。

1 个答案:

答案 0 :(得分:0)

看起来你没有输入路径。正如hadoop所说的那样。 检查一下,hdfs dfs -ls / user / yuqing / 2返回一些东西(2应该是文件或目录)

至于第二部分,当你删除hadoop配置时,hadoop库使用内部配置(你可以在名称为* -default.xml,fe core-default.xml的发行版中找到它们)和'local'中的hadoop函数模式。在“本地”模式下,所有路径都是本地的(在本地文件系统中)。 因此,当您在'hdfs'模式下引用文件时,f.e。 hdfs dfs -ls / some / file,hadoop将在hdfs(hdfs://namenode.ip/some/file)中查找文件,但是在本地模式下将搜索相对文件(通常是文件:/ home / user / some /文件)。 您可以在输出中看到:file:/home/yuqing/workspace/nutch2.0/2