Changes between Initial Version and Version 1 of Hinet131022/Lab18


Ignore:
Timestamp:
Oct 22, 2013, 4:57:27 PM (11 years ago)
Author:
jazz
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Hinet131022/Lab18

    v1 v1  
     1◢ <[wiki:Hinet131022/Lab17 實作十六]> | <[wiki:Hinet131022 回課程大綱]> ▲ | <[wiki:Hinet131022/Lab19 實作十九]> ◣
     2
     3= 實作十八 Lab18 =
     4
     5{{{
     6#!html
     7<p style="text-align: center;"><big style="font-weight: bold;"><big> 增加 Reducer 個數<br/>Job.setNumReduceTasks(N)</big></big></p>
     8}}}
     9
     10[[PageOutline]]
     11
     12{{{
     13#!text
     14請先連線至 nodeN.3du.me , N 為您的報名編號
     15}}}
     16
     17 * 在前兩個範例中,我們可以觀察到預設的 reducer 個數是固定的。那我們是否可以修改 reducer 的個數呢?答案是可行的!
     18{{{
     19cd ~/hadoop_labs/lab010
     20ant
     21hadoop fs -rmr input output
     22hadoop fs -put ~/hadoop/conf input
     23hadoop jar WordCount.jar input output
     24hadoop fs -ls output
     25hadoop fs -cat output/part-*
     26}}}
     27
     28 * 關於 Job 的 setNumReduceTasks() 詳見 javadoc
     29  * org.apache.hadoop.mapreduce.Job.setNumReduceTasks(int)
     30  * http://hadoop.apache.org/docs/r1.0.4/api/org/apache/hadoop/mapreduce/Job.html#setNumReduceTasks(int)
     31
     32== 實作習題 ==
     33
     34 <問題 1> 請問執行任務時,同時有幾個 Reducer?
     35{{{
     36#!text
     37      (A) 0
     38      (B) 1
     39      (C) 2
     40      (D) 3
     41}}}
     42
     43 <問題 2> 請問執行任務後,最後產生幾個輸出檔?
     44{{{
     45#!text
     46      (A) 0
     47      (B) 1
     48      (C) 2
     49      (D) 3
     50}}}
     51
     52 <問題 3> 若將 Reducer 個數設為 2,而 mapper 輸出的 key 是 {A,B,C,D}, 其中 A < B < C < D。請問,結果會是以下哪一個?
     53{{{
     54#!text
     55      (A) {A, B}, {C, D}
     56      (B) {A, B, C}, {D}
     57      (C) {A, C}, {B, D}
     58      (D) {A, D}, {B, C}
     59}}}