◢ <[wiki:Hinet131105/Lab17 實作十六]> | <[wiki:Hinet131105 回課程大綱]> ▲ | <[wiki:Hinet131105/Lab19 實作十九]> ◣ = 實作十八 Lab18 = {{{ #!html

增加 Reducer 個數
Job.setNumReduceTasks(N)

}}} [[PageOutline]] {{{ #!text 請先連線至 nodeN.3du.me , N 為您的報名編號 }}} * 在前兩個範例中,我們可以觀察到預設的 reducer 個數是固定的。那我們是否可以修改 reducer 的個數呢?答案是可行的! {{{ cd ~/hadoop_labs/lab010 ant hadoop fs -rmr input output hadoop fs -put ~/hadoop/conf input hadoop jar WordCount.jar input output hadoop fs -ls output hadoop fs -cat output/part-* }}} * 關於 Job 的 setNumReduceTasks() 詳見 javadoc * org.apache.hadoop.mapreduce.Job.setNumReduceTasks(int) * http://hadoop.apache.org/docs/r1.0.4/api/org/apache/hadoop/mapreduce/Job.html#setNumReduceTasks(int) == 實作習題 == <問題 1> 請問執行任務時,同時有幾個 Reducer? {{{ #!text (A) 0 (B) 1 (C) 2 (D) 3 }}} <問題 2> 請問執行任務後,最後產生幾個輸出檔? {{{ #!text (A) 0 (B) 1 (C) 2 (D) 3 }}} <問題 3> 若將 Reducer 個數設為 2,而 mapper 輸出的 key 是 {A,B,C,D}, 其中 A < B < C < D。請問,結果會是以下哪一個? {{{ #!text (A) {A, B}, {C, D} (B) {A, B, C}, {D} (C) {A, C}, {B, D} (D) {A, D}, {B, C} }}}