HbaseTestingUtility和MapReduce作业

时间:2015-02-09 15:39:55

标签: testing hadoop hbase

我正在尝试使用HbaseTestingUtility在扩展TableMapper的非常基本的映射器上运行测试。 在我的测试类中,我使用utility.startMiniCluster()启动MiniCluster,并在setup方法中使用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

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,在对着它撞了几个小时之后,终于意识到了解决方案......

调用后立即:

utility.startMiniCluster();

调用:

utility.startMiniMapReduceCluster();

方法#startMiniCluster仅启动HBase,HDFS和Zookeeper的miniclusters。启动MapReduce minicluster需要#startMiniMapReduceCluster !!

BTW,测试处理完成后,请务必调用:

utility.shutdownMiniMapReduceCluster();
utility.shutdownMiniCluster();