MapReduce ¡Extension ¡
Topics ¡in ¡Data ¡Science
Cheng ¡Ren, ¡Lixing ¡Lian ¡
Topics in Data Science Cheng Ren, Lixing Lian Outline - - PowerPoint PPT Presentation
MapReduce Extension Topics in Data Science Cheng Ren, Lixing Lian Outline Scien7fic Workloads - Hadoops Adolescence: An Analysis of Hadoop Usage in
Topics ¡in ¡Data ¡Science
Cheng ¡Ren, ¡Lixing ¡Lian ¡
¡-‑ ¡Hadoop’s ¡Adolescence: ¡An ¡Analysis ¡of ¡Hadoop ¡Usage ¡in ¡Scien7fic ¡Workloads ¡
¡
¡-‑ ¡Haloop: ¡efficient ¡itera7ve ¡data ¡processing ¡on ¡large ¡clusters ¡ ¡
¡-‑ ¡Only ¡Aggressive ¡Elephants ¡are ¡Fast ¡Elephants(HAIL)
Yingyi ¡Bu, ¡Bill ¡Howe, ¡Magda ¡Balazinska, ¡Michael ¡D. ¡Ernst
¡
¡ -‑ ¡graph ¡algorithms ¡ ¡ -‑ ¡clustering ¡ ¡ -‑ ¡machine ¡learning ¡ ¡ -‑ ¡recursive ¡queries ¡(CTEs, ¡datalog, ¡WITH ¡clause) ¡
MapReduce ¡
recursive ¡languages
L ¡and ¡Count ¡are ¡loop ¡invariants, ¡but ¡
Friend ¡is ¡loop ¡invariant, ¡but ¡
¡
¡ ¡ ¡ ¡ ¡-‑ ¡Access ¡to ¡loop ¡invariant ¡data ¡without ¡map/shuffle ¡
¡ -‑ ¡Reducer ¡func7on ¡
¡ 1. ¡Sta7c ¡par77oning ¡(implies: ¡no ¡new ¡nodes) ¡ ¡ 2. ¡Determinis7c ¡mapper ¡implementa7on ¡ ¡
¡ -‑ ¡Avoid ¡loading ¡and ¡shuffling ¡the ¡web ¡graph ¡at ¡every ¡itera7on ¡
¡ -‑ ¡Avoid ¡loading ¡and ¡shuffling ¡the ¡friends ¡graph ¡at ¡every ¡itera7on ¡
¡ ¡ ¡ ¡ ¡-‑ ¡Distributed ¡access ¡to ¡output ¡of ¡previous ¡itera7ons ¡
¡ -‑ ¡Fixpoint ¡evalua7on ¡
¡ 1. ¡Par77oning ¡constant ¡across ¡itera7ons ¡ ¡ 2. ¡Reducer ¡output ¡key ¡func7onally ¡determines ¡ ¡ ¡ Reducer ¡input ¡key ¡ ¡
¡ -‑ ¡Allows ¡distributed ¡fixpoint ¡evalua7on ¡ ¡ -‑ ¡Obviates ¡extra ¡MapReduce ¡job ¡
¡ -‑ ¡No ¡help ¡
¡ ¡ ¡ ¡ ¡-‑ ¡Access ¡to ¡non-‑local ¡mapper ¡input ¡on ¡later ¡itera7ons ¡
¡ ¡ ¡ -‑ ¡Map ¡func7on ¡
¡ Mapper ¡input ¡does ¡not ¡change ¡ ¡
¡ ¡ ¡– ¡Input/Output: ¡for ¡each ¡<itera7on, ¡step> ¡ ¡ ¡ ¡– ¡Cache ¡filter: ¡which ¡tuple ¡to ¡cache? ¡ ¡ ¡ ¡– ¡Distance ¡func7on: ¡op7onal ¡
¡-‑ ¡support ¡itera7ve/recursive ¡programs ¡ ¡-‑ ¡TaskTracker ¡(Cache ¡management) ¡ ¡-‑ ¡Scheduler ¡(Cache ¡awareness) ¡ ¡-‑ ¡Programming ¡model ¡(mul7-‑step ¡loop ¡bodies, ¡cache ¡control) ¡ ¡
¡-‑ ¡Caching ¡reducer ¡input ¡realizes ¡the ¡largest ¡gain ¡ ¡-‑ ¡Good ¡to ¡eliminate ¡extra ¡MapReduce ¡step ¡for ¡termina7on ¡checks ¡ ¡-‑ ¡Mapper ¡input ¡cache ¡benefit ¡inconclusive; ¡need ¡a ¡busier ¡cluster ¡
Jens ¡Diirich, ¡Jorge-‑Arnulfo ¡Quiané-‑Ruiz, ¡Stefan ¡Richter, ¡ Stefan ¡Schuh, ¡Alekh ¡Jindal, ¡Jörg ¡Schad
¡
¡
IP, ¡web ¡address) ¡ ¡
¡
¡
Hadoop ¡MapReduce. ¡ ¡
¡ -‑ ¡One ¡major ¡problem: ¡slow ¡query ¡run7mes. ¡ ¡ -‑ ¡Time ¡dominated ¡by ¡the ¡I/O ¡for ¡reading ¡all ¡input ¡data.
horizontal ¡par77ons HDFS ¡blocks ¡ 64MB ¡(default) Datanodes
Allows ¡two ¡Failovers
map(row) ¡-‑> ¡set ¡of ¡(ikey, ¡value)
map(row) ¡-‑> ¡set ¡of ¡(ikey, ¡value)
map(row) ¡-‑> ¡set ¡of ¡(ikey, ¡value)
map(docID, ¡document) ¡-‑> ¡set ¡of ¡(term, ¡docID)
horizontal ¡par77ons HDFS ¡blocks ¡ 64MB ¡(default)
¡
¡
Why ¡Clustered ¡Indexes? ¡
queries ¡as ¡they ¡may ¡trigger ¡considerable ¡random ¡I/O ¡for ¡ non-‑selec7ve ¡index ¡traversals. ¡ ¡
selec7vity, ¡we ¡will ¡read ¡the ¡clustered ¡index ¡and ¡scan ¡the ¡ qualifying ¡blocks.
Seman7cs ¡of ¡an ¡ACK ¡for ¡a ¡packet ¡of ¡a ¡block ¡are ¡changed ¡ ¡ ¡From ¡“packet ¡received, ¡validated, ¡and ¡flushed” ¡ ¡ ¡ To ¡“packet ¡received ¡and ¡validated”.
In ¡parallel ¡to ¡forwarding ¡and ¡reassembling ¡packets, ¡each ¡ datanode ¡sorts ¡the ¡data, ¡creates ¡indexes,and ¡forms ¡a ¡HAIL ¡
Enrich ¡the ¡HDFS ¡namenode ¡to ¡schedule ¡map ¡tasks ¡close ¡to ¡replicas ¡ having ¡a ¡suitable ¡index ¡
types ¡of ¡available ¡indexes
Individual ¡Jobs: ¡Weblog
Ques7ons? ¡Ask ¡Bob. ¡