我正在尝试在 C++ 中运行 wordcount 的示例,如此链接描述的方法: 在 C++ 中运行 WordCount 程序。编译工作正常,但是当我尝试运行我的程序时,出现了一个错误:
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)。
11/06/06 14:23:40 INFO mapred.FileInputFormat:要处理的总输入路径:1
11/06/06 14:23:40 INFO mapred.JobClient:正在运行的作业:job_201106061207_0007
11/06/06 14:23: 41 信息 mapred.JobClient:映射 0% 减少 0%
11/06/06 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( Native Method) at javax.security.auth.Subject.doAs(Subject.java:416) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1059) at org.apache.hadoop.mapred.Child。主要(儿童.java:253)
尝试_201106061207_0007_m_000000_0:服务器无法进行身份验证。退出
我在两个节点上的 Fedora 上运行 Hadoop,我按照该链接的配置说明进行操作:在多节点集群上运行 Hadoop。我使用该命令尝试了 Hadoop 的 wordcount 示例:
bin/hadoop jar hadoop-examples-0.20.203.0.jar wordcount testtile.txt wordcount-out
该命令工作正常。这就是为什么我不明白为什么我的程序不起作用。所以我希望有人知道我做错了什么,或者是否有人已经解决了这个错误。