Parallel ¡DBs ¡& ¡MapReduce
CSE ¡344 ¡– ¡SECTION ¡10
Parallel DBs & MapReduce CSE 344 SECTION 10 Big Bi g Data - - PowerPoint PPT Presentation
Parallel DBs & MapReduce CSE 344 SECTION 10 Big Bi g Data The Three Vs of Big Data A Brief Story PredicIng the future MapReduce MapReduce Phases WordCount Example Map(int id,
CSE ¡344 ¡– ¡SECTION ¡10
¡ Map(int ¡id, ¡String[] ¡val) ¡
¡for ¡word ¡in ¡val: ¡ ¡ ¡emitIntermediate(word, ¡1) ¡ ¡ ¡ßshuffling ¡ ¡ Reduce(String ¡word, ¡Iterator ¡vals) ¡ ¡cnt ¡= ¡0 ¡ ¡for ¡i ¡in ¡vals: ¡ ¡ ¡cnt ¡++ ¡ ¡emit(cnt) ¡ ¡// ¡emit(word ¡+ ¡‘:’ ¡+ ¡cnt) ¡
¡ Shared ¡memory ¡ ¡ Shared ¡disk ¡ ¡ Shared ¡nothing ¡
CSE ¡344 ¡-‑ ¡FALL ¡2015 ¡
9 ¡
Interconnection Network P P P Global Shared Memory D D D
10 ¡
CSE ¡344 ¡-‑ ¡FALL ¡2015 ¡
Interconnection Network P P P M M M D D D
11 ¡
CSE ¡344 ¡-‑ ¡FALL ¡2015 ¡
Interconnection Network P P P M M M D D D
12 ¡
CSE ¡344 ¡-‑ ¡FALL ¡2015 ¡
¡ Block ¡ParVVon ¡vs. ¡Range ¡ParVVon ¡vs. ¡Hash ¡ParVVon ¡
¡ Block ¡ParVVon: ¡ ¡
¡ Hash ¡parVVoned ¡on ¡a^ribute ¡A: ¡
¡ Range ¡parVVoned ¡on ¡a^ribute ¡A: ¡
14 ¡
CSE ¡344 ¡-‑ ¡FALL ¡2015 ¡
1/3 of R 1/3 of R 1/3 of R Machine 1 Machine 2 Machine 3
SELECT ¡a, ¡count(b) ¡as ¡countb ¡ ¡ ¡ ¡ FROM ¡R ¡ WHERE ¡a ¡> ¡0 ¡ GROUP ¡BY ¡a
R(a, b)
15
CSE 344 - FALL 2015
1/3 of R 1/3 of R 1/3 of R Machine 1 Machine 2 Machine 3
SELECT ¡a, ¡count(b) ¡as ¡countb ¡ ¡ ¡ ¡ FROM ¡R ¡ WHERE ¡a ¡> ¡0 ¡ GROUP ¡BY ¡a
R(a, b) scan scan scan
16
CSE 344 - FALL 2015
1/3 of R 1/3 of R 1/3 of R Machine 1 Machine 2 Machine 3
SELECT ¡a, ¡count(b) ¡as ¡countb ¡ ¡ ¡ ¡ FROM ¡R ¡ WHERE ¡a ¡> ¡0 ¡ GROUP ¡BY ¡a
R(a, b) scan scan scan σa>0 σa>0 σa>0
17
CSE 344 - FALL 2015
1/3 of R 1/3 of R 1/3 of R Machine 1 Machine 2 Machine 3
SELECT ¡a, ¡count(b) ¡as ¡countb ¡ ¡ ¡ ¡ FROM ¡R ¡ WHERE ¡a ¡> ¡0 ¡ GROUP ¡BY ¡ ¡a
R(a, b) scan scan scan σa>0 σa>0 σa>0 γa, count(b)-> b γa, count(b)-> b γa, count(b)-> b
18
CSE 344 - FALL 2015
1/3 of R 1/3 of R 1/3 of R Machine 1 Machine 2 Machine 3
SELECT ¡a, ¡count(b) ¡as ¡countb ¡ ¡ ¡ ¡ FROM ¡R ¡ WHERE ¡a ¡> ¡0 ¡ GROUP ¡BY ¡a
R(a, b) scan scan scan σa>0 σa>0 σa>0 γa, count(b)-> b γa, count(b)-> b γa,count(b)-> b Hash on a Hash on a Hash on a
19
1/3 of R 1/3 of R 1/3 of R Machine 1 Machine 2 Machine 3
SELECT ¡a, ¡count(b) ¡as ¡countb ¡ FROM ¡R ¡WHERE ¡a ¡> ¡0 ¡GROUP ¡BY ¡a
R(a, b) scan scan scan σa>0 σa>0 σa>0 γa, count(b)-> b γa, count(b)-> b γa, count(b)-> b Hash on a Hash on a Hash on a
20
1/3 of R 1/3 of R 1/3 of R Machine 1 Machine 2 Machine 3
SELECT ¡a, ¡count(b) ¡as ¡countb ¡ FROM ¡R ¡WHERE ¡a ¡> ¡0 ¡GROUP ¡BY ¡a
R(a, b) scan scan scan σa>0 σa>0 σa>0 γa, count(b)-> b γa, count(b)-> b γa, count(b)-> b Hash on a Hash on a Hash on a γa, sum(b)->countb γa, sum(b)->countb γa, sum(b)->countb
21