2
我們可以用組合器代替Mapreduce作業中的reduce嗎?如果不是,我們可以使用什麼來替換mapreduce作業中的reducer?我們可以用組合器代替Mapreduce中的reduce嗎?
我們可以用組合器代替Mapreduce作業中的reduce嗎?如果不是,我們可以使用什麼來替換mapreduce作業中的reducer?我們可以用組合器代替Mapreduce中的reduce嗎?
嚴格來說,沒有。
只有當至少有一個reducer被調用時纔會調用組合器。
當沒有縮減器時,作業將在地圖階段停止,省略地圖任務輸出的本地排序。這種排序也是組合者所需要的(他們實際上是本地的縮小者)。所以,沒有減速器=>沒有組合器。
但是,如果使用in-mapper聚合,有時可以模擬組合器的操作。例如,您可以將映射器中wordcount的結果存儲在本地數據結構中,當每個映射器結束時(即,它調用方法時),總結併發出每個單詞的本地頻率。在這項工作結束時,您可能會得到不同計數的重複單詞,這些單詞來源於不同的輸入分割,但這與您可以使用reducer的功能非常接近,而無需使用reducer。