Mapreduce Examples
A B C D E F Breadth First Search
First Iteration Map – Emit (A, 0) – Emit (B, getMessage(0))=(B,1) Reduce (find min value for each Node) – Emit(A,0) – Emit(B,1)
Second Iteration Map – A Emit(A,0) Emit(B,1) – B Emit(B,1) Emit(F,2) Reduce – Emit(A,0) – Emit(B,1) – Emit(F,2)
Third Iteration Map – A Emit(A,0) Emit(B,1) – B Emit(B,1) Emit(F,2) – F Emit(F,2) Emit(D,3) Reduce – Emit(A,0) – Emit(B,1) – Emit(F,2) – Emit(D,3)
4th Iteration Map – A Emit(A,0) Emit(B,1) – B Emit(B,1) Emit(F,2) – F Emit(F,2) Emit(D,3) – D Emit(D,3) Emit(C,4) Emit(E,4) Reduce – Emit(A,0) – Emit(B,1) – Emit(F,2) – Emit(D,3) – Emit(C,4) – Emit(E,4)
5th Iteration Map – A Emit(A,0) Emit(B,1) – B Emit(B,1) Emit(F,2) – F Emit(F,2) Emit(D,3) – D Emit(D,3) Emit(C,4) Emit(E,4) – C Emit(B,5) – E Emit(F,5) Emit(A,5) Reduce – Emit(A,0) – Emit(B,1) – Emit(F,2) – Emit(D,3) – Emit(C,4) – Emit(E,4) Sort Emit(A,0) Emit(A,5) Emit(B,1) Emit(B,5) Emit(C,4) Emit(D,3) Emit(E,4) Emit(F,2) Emit(F,5) No changes for additional Iterations, so done
Distinct Values Phase 1 Map Emit(a,1 count 1) Emit(b,1 count 1) Emit(a,2 count 1) Emit(d,2 count 1) Emit(e,2 count 1) Emit(b,1 count 1) Emit(a,3 count 1) Emit(b,3 count 1) Sort Emit(a,1 count 1) Emit(a,2 count 1) Emit(a,3 count 1) Emit(b,1 count 1, count 1) Emit(b,3 count 1) Emit(d,2 count 1) Emit(e,2 count 1) Reduce Emit(a,1) Emit(a,2) Emit(a,3) Emit(b,1) (Removes duplicates) Emit(b,3) Emit(d,2) Emit(e,2) g, f
Distinct Values Phase 2 Phase 2 Input Emit(a,1) Emit(a,2) Emit(a,3) Emit(b,1) Emit(b,3) Emit(d,2) Emit(e,2) Map Emit(a,1) Emit(b,1) Emit(d,1) Emit(e,1) Sort Emit(a,1,1,1) Emit(b,1,1) Emit(d,1) Emit(e,1) Reduce Emit(a,3) Emit(b,2) Emit(d,1) Emit(e,1) g, f
Cross Correlation {a,b,c} {a,b,c,d} {b,d} Map {a,b,c} Emit(a,b, 1) Emit (a,c, 1) Emit (b,c, 1) {a,b,c,d} Emit(a,b, 1) Emit (a,c, 1) Emit (a,d, 1) Emit (b,c, 1) Emit (b,d, 1) Emit (c,d, 1) {b,d} Emit (b,d, 1) Sort Emit(a,b, 1,1) Emit (a,c, 1,1) Emit (b,c, 1,1) Emit (a,d, 1) Emit (b,d, 1,1) Emit (c,d, 1) Reduce Emit(a,b, 2) Emit (a,c, 2) Emit (b,c, 2) Emit (a,d, 1) Emit (b,d, 2) Emit (c,d, 1)