<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        Hadoop之MapReduce單元測試

        來源:懂視網 責編:小采 時間:2020-11-09 13:20:55
        文檔

        Hadoop之MapReduce單元測試

        Hadoop之MapReduce單元測試:通常情況下,我們需要用小數據集來單元測試我們寫好的map函數和reduce函數。而一般我們可以使用Mockito框架來模擬OutputCollector對象(Hadoop版本號小于0.20.0)和Context對象(大于等于0.20.0)。 下面是一個簡單的WordCount例子:(使用的是新AP
        推薦度:
        導讀Hadoop之MapReduce單元測試:通常情況下,我們需要用小數據集來單元測試我們寫好的map函數和reduce函數。而一般我們可以使用Mockito框架來模擬OutputCollector對象(Hadoop版本號小于0.20.0)和Context對象(大于等于0.20.0)。 下面是一個簡單的WordCount例子:(使用的是新AP

        通常情況下,我們需要用小數據集來單元測試我們寫好的map函數和reduce函數。而一般我們可以使用Mockito框架來模擬OutputCollector對象(Hadoop版本號小于0.20.0)和Context對象(大于等于0.20.0)。 下面是一個簡單的WordCount例子:(使用的是新API) 在開始之

        通常情況下,我們需要用小數據集來單元測試我們寫好的map函數和reduce函數。而一般我們可以使用Mockito框架來模擬OutputCollector對象(Hadoop版本號小于0.20.0)和Context對象(大于等于0.20.0)。

        下面是一個簡單的WordCount例子:(使用的是新API)

        在開始之前,需要導入以下包:

        1.Hadoop安裝目錄下和lib目錄下的所有jar包。

        2.JUnit4

        3.Mockito

        ?

        map函數:

        public class WordCountMapper extends Mapper {
        	private static final IntWritable one = new IntWritable(1);
        	private Text word = new Text();
        	@Override
        	protected void map(LongWritable key, Text value,Context context)
        	throws IOException, InterruptedException {
        	String line = value.toString();	// 該行的內容
        	String[] words = line.split(";");	// 解析該行的單詞
        	for(String w : words) {
        	word.set(w);
        	context.write(word,one);
        	}
        	}
        }

        ?reduce函數:

        public class WordCountReducer extends Reducer {
        	@Override
        	protected void reduce(Text key, Iterable values,Context context)
        	throws IOException, InterruptedException {
        	int sum = 0;
        	Iterator iterator = values.iterator();	// key相同的值集合
        	while(iterator.hasNext()) {
        	int one = iterator.next().get();
        	sum += one;
        	}
        	context.write(key, new IntWritable(sum));
        	}
        }

        ?測試代碼類:

        public class WordCountMapperReducerTest {
        	@Test
        	public void processValidRecord() throws IOException, InterruptedException {
        	WordCountMapper mapper = new WordCountMapper();
        	Text value = new Text("hello");
        	org.apache.hadoop.mapreduce.Mapper.Context context = mock(Context.class);
        	mapper.map(null, value, context);
        	verify(context).write(new Text("hello"), new IntWritable(1));
        	}
        	@Test
        	public void processResult() throws IOException, InterruptedException {
        	WordCountReducer reducer = new WordCountReducer();
        	Text key = new Text("hello");
        	// {"hello",[1,1,2]}
        	Iterable values = Arrays.asList(new IntWritable(1),new IntWritable(1),new IntWritable(2));
        	org.apache.hadoop.mapreduce.Reducer.Context context = mock(org.apache.hadoop.mapreduce.Reducer.Context.class);
        	reducer.reduce(key, values, context);
        	verify(context).write(key, new IntWritable(4));	// {"hello",4}
        	}
        }

        ?

        具體就是給map函數傳入一行數據-"hello"

        map函數對數據進行處理,輸出{"hello",0}

        reduce函數接受map函數的輸出數據,對相同key的值求和,并輸出。



        已有 0 人發表留言,猛擊->> 這里<<-參與討論


        ITeye推薦
      1. —軟件人才免語言低擔保 赴美帶薪讀研!—



      2. 聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        Hadoop之MapReduce單元測試

        Hadoop之MapReduce單元測試:通常情況下,我們需要用小數據集來單元測試我們寫好的map函數和reduce函數。而一般我們可以使用Mockito框架來模擬OutputCollector對象(Hadoop版本號小于0.20.0)和Context對象(大于等于0.20.0)。 下面是一個簡單的WordCount例子:(使用的是新AP
        推薦度:
        標簽: 測試 情況下 單元
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲国产精品成人综合久久久| 亚洲国产精品第一区二区| 国产亚洲精品VA片在线播放| 精品国产污污免费网站aⅴ| 亚洲一区二区中文| 国产成人精品免费久久久久| 亚洲精品你懂的在线观看| 男人天堂免费视频| 亚洲AV成人无码久久精品老人| 免费人成在线观看网站| 亚洲人成网址在线观看| 2019中文字幕在线电影免费| 亚洲国产综合在线| 免费可以在线看A∨网站| 亚洲成a人无码亚洲成www牛牛| 国产一区在线观看免费| 日韩在线视频免费| 精品久久亚洲中文无码| 日韩亚洲国产高清免费视频| 国产成人精品日本亚洲专区6| 无遮挡国产高潮视频免费观看| 国产成人毛片亚洲精品| 中文字幕一区二区免费| 久久精品国产亚洲77777| 97人伦色伦成人免费视频| 丰满亚洲大尺度无码无码专线| 亚洲精品无码专区久久同性男| 波霸在线精品视频免费观看| 亚洲小视频在线观看| 国内精品乱码卡1卡2卡3免费| 亚洲AV无码一区二区三区久久精品 | 人碰人碰人成人免费视频| 亚洲精品字幕在线观看| 久久精品免费一区二区| 亚洲精品无码久久久久APP| 国产成人亚洲精品91专区手机| www视频在线观看免费| 国产AV日韩A∨亚洲AV电影| 亚洲AV日韩AV天堂一区二区三区| 日韩中文字幕精品免费一区| 九一在线完整视频免费观看|