我正在尝试在扩展TableMapper的非常基本的映射器上使用HbaseTestingUtility运行测试。
在测试类中,我使用utility.startMiniCluster()
启动MiniCluster,并在设置方法中使用utility.createTable(tablename_bytes, familyname_bytes)
创建测试表。
然后,我使用以下命令启动映射器:
Job job = new Job(utility.getConfiguration()); //Job.getInstance();
TableMapReduceUtil.initTableMapperJob(tableName, new Scan(),MyBasicHbaseMapper.class,Text.class, Text.class, job);
job.waitForCompletion(true);
这是我得到的错误:
java.io.FileNotFoundException: File does not exist: hdfs://localhost:57276/Users/user1/.m2/repository/org/cloudera/htrace/htrace-core/2.04/htrace-core-2.04.jar
这个jar文件在
~/.m2/repository/org/cloudera/htrace/htrace-core/2.04/htrace-core-2.04.jar
中。我究竟做错了什么?
最佳答案
我遇到了类似的问题,将头撞了几个小时,终于意识到了解决方案...
调用后立即:
utility.startMiniCluster();
调用:
utility.startMiniMapReduceCluster();
#startMiniCluster方法仅启动HBase,HDFS和Zookeeper的小型集群。启动MapReduce迷你集群需要#startMiniMapReduceCluster !!
顺便说一句,测试处理完成后,请确保调用:
utility.shutdownMiniMapReduceCluster();
utility.shutdownMiniCluster();
关于testing - HbaseTestingUtility和MapReduce作业,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28413461/