【发布时间】:2011-09-09 06:43:02
【问题描述】:
我正在尝试在 C++ 中运行 wordcount 的示例,如此链接描述的方法: Running the WordCount program in C++。编译工作正常,但是当我尝试运行我的程序时,出现了错误:
bin/hadoop 管道 -conf ../dev/word.xml -input testtile.txt -output wordcount-out
11/06/06 14:23:40 WARN mapred.JobClient:没有设置作业 jar 文件。
可能找不到用户类。请参阅 JobConf(Class) 或 JobConf#setJar(String)。
2006 年 11 月 6 日 14:23:40 信息 mapred.FileInputFormat:要处理的总输入路径:1
2006 年 11 月 6 日 14:23:40 信息 mapred.JobClient:正在运行的作业:job_201106061207_0007
2006 年 11 月 6 日 14:23:41 信息 mapred.JobClient:地图 0% 减少 0%
2006 年 11 月 6 日 14:23:53 信息 mapred.JobClient:任务 ID:尝试_201106061207_0007_m_000000_0,状态:失败
java.io.IOException
在 org.apache.hadoop.mapred.pipes.OutputHandler.waitForAuthentication(OutputHandler.java:188) 在 org.apache.hadoop.mapred.pipes.Application.waitForAuthentication(Application.java:194) 在 org.apache.hadoop.mapred.pipes.Application.(Application.java:149) 在 org.apache.hadoop.mapred.pipes.PipesMapRunner.run(PipesMapRunner.java:68) 在 org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:435) 在 org.apache.hadoop.mapred.MapTask.run(MapTask.java:371) 在 org.apache.hadoop.mapred.Child$4.run(Child.java:259) 在 java.security.AccessController.doPrivileged(本机方法) 在 javax.security.auth.Subject.doAs(Subject.java:416) 在 org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1059) 在 org.apache.hadoop.mapred.Child.main(Child.java:253)
尝试_201106061207_0007_m_000000_0:服务器无法进行身份验证。退出
我在两个节点上的 Fedora 上运行 Hadoop,并按照该链接中的配置说明进行操作:Running Hadoop on multi-node cluster。我使用该命令尝试了 Hadoop 的 wordcount 示例:
bin/hadoop jar hadoop-examples-0.20.203.0.jar wordcount testtile.txt wordcount-out
而且该命令运行良好。这就是为什么我不明白为什么我的程序不起作用。所以我希望有人知道我做错了什么,或者是否有人已经解决了这个错误。
【问题讨论】:
标签: c++ hadoop cluster-computing word-count