Hadoop MRUnit使用(一)

之前在写MR
job的时候,由于要在云梯,或者一淘的开发集群上运行;所以处理方法是,在本地打成jar包,然后scp到客户端网关机上,然后在提交job运行。这样的问题时,有时候如果遇到一些逻辑上的问题,job跑挂了。必须在本地修改程序,然后重新打包,scp,再运行,这样比较麻烦;询问了一圈,觉得采用MRUnit在本地做好一些逻辑测试。这样可以在一定程度上提高开发效率,避免重复劳动,并且写好的testcase可以用作回归之用;

MRUnit

基本原理是JUnit和EasyMock,其核心的单元测试依赖于JUnit,并且MRUnit实现了一套Mock对象来控制MapReduce框架的输入和输出;语法也比较简单,使用的时候需要从官网http://mrunit.apache.org/下载jar包;下面上代码,为了演示简便,测试的类是hadoop
examples中自带的WordCount。

代码:

如果有若干个连续的MR
job需要测试,MRUnit框架中还有PipelineMapReduceDriver可用,

在下一章中,将研究一些MRUnit更深的特性和使用 文件 作为测试用例输入集的做法;

时间: 2024-12-29 17:49:18

Hadoop MRUnit使用(一)的相关文章

Hadoop MapReduce编程 API入门系列之挖掘气象数据版本2(九)

下面,是版本1. Hadoop MapReduce编程 API入门系列之挖掘气象数据版本1(一) 这篇博文,包括了,实际生产开发非常重要的,单元测试和调试代码.这里不多赘述,直接送上代码. MRUnit 框架 MRUnit是Cloudera公司专为Hadoop MapReduce写的单元测试框架,API非常简洁实用.MRUnit针对不同测试对象使用不同的Driver: MapDriver:针对单独的Map测试  ReduceDriver:针对单独的Reduce测试    MapReduceDri

mrunit for wordcount demo

import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mrunit.mapreduce.MapDriver; i

Hadoop 学习笔记3 Develping MapReduce

小笔记: Mavon是一种项目管理工具,通过xml配置来设置项目信息. Mavon POM(project of model). Steps: 1. set up and configure the development environment. 2. writing your map and reduce functions and run them in local (standalone) mode from the command line or within your IDE. 3.

MRUnit的安装和使用

MRUnit是对MapReduce程序进行单元测试的工具,可以对Mapper和Reducer程序分别进行测试.但是它没有集成在Hadoop安装环境中,如果想在开发MapReduce程序时使用这个工具,就需要自己安装. MRUnit的安装 安装环境: Eclipse版本为3.6.0 Hadoop版本为1.0.4 安装步骤: (1)下载MRUnit,网址为http://mrunit.apache.org/,我下载的是 apache-mrunit-1.0.0-hadoop1-bin.tar.gz (2

hadoop编程小技巧(8)---Unit Testing (单元测试)

所需环境: Hadoop相关jar包(下载官网发行版即可): 下载junit包(最新为好): 下载mockito包: 下载mrunit包: 下载powermock-mockito包: 相关包截图如下(相关下载参考:http://download.csdn.net/detail/fansy1990/7690977): 应用场景: 在进行Hadoop的一般MR编程时,需要验证我们的业务逻辑,或者说是验证数据流的时候可以使用此环境,这个环境不要求真实的云平台,只是针对算法或者代码逻辑进行验证,方便调试

Hadoopd 单元测试-MPUnit

Apache 版: 官网:http://mrunit.apache.org 教程:https://cwiki.apache.org/confluence/display/MRUNIT/MRUnit+Tutorial 注意:"org.apache.hadoop.mrunit.mapreduce.MapDriver" 与"org.apache.hadoop.mrunit.MapDriver"分别对应v1中新旧api的使用. 和FileInputFormat,FileOu

MapReduce Unit Test

以前用java写MR程序总不习惯写单元测试,就是查错也只是在小规模数据上跑一下程序.昨天工作时,遇到一个bug,查了好久也查出来.估计是业务逻辑上的错误.后来没办法,只好写了个单元测试,一步步跟踪,瞬间找到问题所在.所以说,工作中还是要勤快些. 1 import static org.junit.Assert.assertEquals; 2 import java.io.IOException; 3 import java.util.ArrayList; 4 import java.util.L

数据采集之Web端上传文件到Hadoop HDFS

前言 最近在公司接到一个任务,是关于数据采集方面的. 需求主要有3个: 通过web端上传文件到HDFS; 通过日志采集的方式导入到HDFS; 将数据库DB的表数据导入到HDFS. 正好最近都有在这方面做知识储备.正所谓养兵千日,用兵一时啊.学习到的东西只有应用到真实的环境中才有意义不是么. 环境 这里只做模拟环境,而不是真实的线上环境,所以也很简单,如果要使用的话还需要优化优化. OS Debian 8.7 Hadoop 2.6.5 SpringBoot 1.5.1.RELEASE 说明一下,这

Apache Hadoop源代码

archive.apache.org This site contains the historical archive of old software releases. For current releases, please visit the mirrors. Name Last modified Size Description Parent Directory - abdera/ 2016-03-24 18:16 - accumulo/ 2016-03-24 18:09 - ace/