Hadoop 找不到hbase mapreduce文件异常
我已经在两台机器上安装了hadoop 2.4.1和hbase 0.98.8。运行hbase mapreduce作业时,出现以下错误:Hadoop 找不到hbase mapreduce文件异常,hadoop,mapreduce,hbase,filenotfoundexception,Hadoop,Mapreduce,Hbase,Filenotfoundexception,我已经在两台机器上安装了hadoop 2.4.1和hbase 0.98.8。运行hbase mapreduce作业时,出现以下错误: Exception in thread "main" java.io.FileNotFoundException: File does not exist: hdfs://pc1/opt/hbase-0.98.8-hadoop2/lib/hbase-server-0.98.8-hadoop2.jar at org.apache.hadoop.hdfs.Di
Exception in thread "main" java.io.FileNotFoundException: File does not exist: hdfs://pc1/opt/hbase-0.98.8-hadoop2/lib/hbase-server-0.98.8-hadoop2.jar
at org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1128)
at org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1120)
at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
at org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1120)
at org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.getFileStatus(ClientDistributedCacheManager.java:288)
at org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.getFileStatus(ClientDistributedCacheManager.java:224)
at org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.determineTimestamps(ClientDistributedCacheManager.java:93)
at org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.determineTimestampsAndCacheVisibilities(ClientDistributedCacheManager.java:57)
at org.apache.hadoop.mapreduce.JobSubmitter.copyAndConfigureFiles(JobSubmitter.java:265)
at org.apache.hadoop.mapreduce.JobSubmitter.copyAndConfigureFiles(JobSubmitter.java:301)
at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:389)
at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1285)
at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1282)
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:1556)
at org.apache.hadoop.mapreduce.Job.submit(Job.java:1282)
at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1303)
at thesis.test2.run(test2.java:93)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at thesis.test2.main(test2.java:107)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
我可以毫无问题地运行hadoop mapreduce作业和简单的hbase作业。我试图运行的代码是一个应该运行的示例。请提供“jps”输出。
因为您的hbase似乎不起作用,希望问题会出在zookeeper上我遇到了确切的问题。您必须将hbase库路径添加到.bashrc文件中。将hbase中的lib文件夹添加到类路径。 另外,将hbase的类路径添加到HADOOP_类路径 .bashrc文件应包含以下内容:
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:`${HBASE_HOME}/bin/hbase classpath`
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:`${HBASE_HOME}/bin/hbase mapredcp`
export CLASSPATH=${HBASE_HOME}/lib/*
注意:类路径应该指向hbase安装文件夹的lib文件夹。使用以下命令编译和运行java代码
javac Example.java
java -classpath $CLASSPATH:. Example
看看这个1)2)已经看到了这些。没有帮助。谢谢你的邀请suggestionroot@pc1:/opt/hadoop-2.4.1 35; jps 3975 name node 6331 HQuorumPeer 4421 ResourceManager 4085 DataNode 4528 NodeManager 7186 jps 6430 HMasteri可以运行简单的hbase作业。我可以创建表并将项目放入其中。您是否可以使用mapreduce或直接使用hbase的终端窗口在hbase中创建表并将项目放入hbase?直接使用java。不是mapreduceThen我很确定您的hbase没有很好地配置。请按照任何好的教程来设置hbase。