测试Hadoop程序

MRUnit

MRUnit是一个能够然测试Mapper、Reducer、和MapReduce程序的集成测试库

安装MRUnit:
在Maven的POM.XML文件中添加如下依赖

<dependency>
     <groupId>junit</groupId>
     <artifactId>junit</artifactId>
     <version>4.12</version>
</dependency>
<dependency>
     <groupId>org.apache.mrunit</groupId>
     <artifactId>mrunit</artifactId>
     <version>1.1.0</version>
     <classifier>hadoop2</classifier>
 </dependency>

LocalJobRunner

MapReduce程序可以使用LocalJobRunner进行从头到尾的测试

但是它是单线程的,只能运行一个Reducer

MiniMRCluster

MiniMRCuster使用的Jar文件:

  • hadoop-mapreduce-client-jobclient-版本号-tests.jar
  • hadoop-common-版本号-tests.jar
  • hadoop-hdfs-版本号-tests.jar
  • hadoop-yarn-server-tests-版本号-tests.jar
  • hadoop-yarn-server-nodemanager-版本号.jar
  • hadoop-mapreduce-client-hs-版本号.jar

在Maven的POM.XML中添加如下测试依赖:

<dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-mapreduce-client-jobclient</artifactId>
            <version>2.7.3</version>
            <classifier>tests</classifier>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-hdfs</artifactId>
            <version>2.7.3</version>
            <classifier>tests</classifier>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <version>2.7.3</version>
            <classifier>tests</classifier>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-yarn-server-tests</artifactId>
            <version>2.7.3</version>
            <classifier>tests</classifier>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-yarn-server-nodemanager</artifactId>
            <version>2.7.3</version>
            <classifier>tests</classifier>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-mapreduce-client-hs</artifactId>
            <version>2.7.3</version>
            <classifier>tests</classifier>
        </dependency>

局限性,它是一个正真模拟多线程的MapReduce框架,在这种方法下内存不足是一个真正的风险。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值