Big Data, Deep Learning and Other Allegories: Scalability - - PowerPoint PPT Presentation

big data deep learning and other allegories scalability
SMART_READER_LITE
LIVE PREVIEW

Big Data, Deep Learning and Other Allegories: Scalability - - PowerPoint PPT Presentation

Big Data, Deep Learning and Other Allegories: Scalability and Fault-tolerance of Parallel and Distributed Infrastructures Divy Agrawal Professor of


slide-1
SLIDE 1

Big ¡Data, ¡Deep ¡Learning ¡and ¡Other ¡Allegories: ¡ Scalability ¡and ¡Fault-­‑tolerance ¡of ¡Parallel ¡and ¡ Distributed ¡Infrastructures ¡ ¡ Divy ¡Agrawal ¡

Professor ¡of ¡Computer ¡Science ¡ UC ¡Santa ¡Barbara ¡ VisiFng ¡ScienFst, ¡Ads ¡Data ¡Infrastructure ¡ Google ¡Inc. ¡ Research ¡Director, ¡Data ¡AnalyFcs ¡ Qatar ¡CompuFng ¡Research ¡InsFtute ¡

With: ¡Sanjay ¡Chawla ¡et ¡al. ¡(QCRI), ¡Amr ¡El ¡Abbadi ¡et ¡al. ¡ ¡(UCSB), ¡& ¡ ¡ Shiv ¡Venkataraman ¡et ¡al. ¡(Google) ¡ ¡

slide-2
SLIDE 2

MoFvaFon ¡

  • Availability ¡of ¡vast ¡amounts ¡of ¡data: ¡

– Hundreds ¡of ¡billions ¡of ¡text ¡documents ¡ – Billions ¡of ¡images/videos ¡with ¡descripFve ¡annotaFons ¡ – Tens ¡of ¡trillions ¡of ¡log ¡records ¡capturing ¡human ¡acFvity ¡

¡ ¡

  • Machine ¡Learning ¡+ ¡Big ¡Data ¡transforming ¡ficFon ¡into ¡

reality: ¡

– Self-­‑driven ¡automobiles ¡ – Automated ¡image ¡understanding ¡ – And ¡most ¡recently, ¡deep ¡learning ¡to ¡simulate ¡a ¡human ¡ brain ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 2 ¡

slide-3
SLIDE 3

Big Data Challenges

X1 ¡ X2 ¡ ¡ … ¡ Xd ¡ ¡ x1 ¡ x11 ¡ x12 ¡ ¡ … ¡ x1d ¡ ¡ x2 ¡ x21 ¡ ¡ x22 ¡ ¡ … ¡ x2d ¡ ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ xn ¡ ¡ xn1 ¡ ¡ xn2 ¡ ¡ … ¡ xnd ¡ ¡

StaFsFcal ¡Hardness ¡

¡

} {

2 } { :

C

C f →

ComputaFonal ¡Complexity ¡

} 1 , { :

dup

S S T → ×

slide-4
SLIDE 4

Data ¡Analy0cs, ¡Data ¡Mining, ¡and ¡Machine ¡Learning ¡

  • Data: ¡“The ¡apple ¡of ¡my ¡eye ¡is ¡hooked ¡on ¡Apple’s ¡smart ¡

phone ¡and ¡loves ¡apple ¡and ¡yogurt.” ¡ ¡

  • Database ¡Query: ¡how ¡many ¡Fmes ¡does ¡apple ¡appear ¡

in ¡the ¡data? ¡ ¡

  • Data ¡Mining ¡Query: ¡what ¡are ¡the ¡most ¡frequent ¡items ¡

that ¡appear ¡together ¡in ¡the ¡data? ¡ ¡

  • Machine ¡Learning: ¡how ¡many ¡Fme ¡does ¡the ¡

fruit:<apple> ¡appear ¡in ¡the ¡data? ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 4 ¡

slide-5
SLIDE 5

X1 ¡ X2 ¡ ¡ … ¡ Xd ¡ ¡ x1 ¡ x11 ¡ x12 ¡ ¡ … ¡ x1d ¡ ¡ x2 ¡ x21 ¡ ¡ x22 ¡ ¡ … ¡ x2d ¡ ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ xn ¡ ¡ xn1 ¡ ¡ xn2 ¡ ¡ … ¡ xnd ¡ ¡

ApplicaFons ¡ Analysis ¡ ReporFng ¡ ¡ Discovery ¡

Learning ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 5 ¡

slide-6
SLIDE 6

BIG ¡DATA ¡MANAGEMENT ¡(UCSB) ¡

X1 ¡ X2 ¡ ¡ … ¡ Xd ¡ ¡ x1 ¡ x11 ¡ x12 ¡ ¡ … ¡ x1d ¡ ¡ x2 ¡ x21 ¡ ¡ x22 ¡ ¡ … ¡ x2d ¡ ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ xn ¡ ¡ xn1 ¡ ¡ xn2 ¡ ¡ … ¡ xnd ¡ ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 6 ¡

slide-7
SLIDE 7

Paradigm ¡Shih ¡in ¡CompuFng ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 7 ¡

slide-8
SLIDE 8

Cloud ¡CompuFng: ¡Why? ¡

  • Experience ¡with ¡very ¡large ¡datacenters ¡

– Unprecedented ¡economies ¡of ¡scale ¡ – Transfer ¡of ¡risk ¡

  • Technology ¡factors ¡

– Pervasive ¡broadband ¡Internet ¡ – Maturity ¡in ¡VirtualizaFon ¡Technology ¡ ¡

  • Business ¡factors ¡

– Minimal ¡capital ¡expenditure ¡ ¡ – Pay-­‑as-­‑you-­‑go ¡billing ¡model ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 8 ¡

slide-9
SLIDE 9

Economics ¡of ¡Cloud ¡CompuFng ¡ ¡

  • Pay ¡by ¡use ¡instead ¡of ¡provisioning ¡for ¡peak ¡

StaFc ¡data ¡center ¡ Data ¡center ¡in ¡the ¡cloud ¡

Demand Capacity ¡

Time ¡ Resources

Demand Capacity ¡

Time ¡ Resources

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 9 ¡

slide-10
SLIDE 10

Apache ¡ + ¡App ¡ Server ¡ Apache ¡ + ¡App ¡ Server ¡ Apache ¡ + ¡App ¡ Server ¡

Scaling ¡in ¡the ¡Cloud ¡

HAProxy ¡(Load ¡Balancer) ¡ Apache ¡ + ¡App ¡ Server ¡ MySQL ¡ Master ¡DB ¡ MySQL ¡ Slave ¡DB ¡

ReplicaFon ¡ ElasFc ¡IP ¡ Client ¡Site ¡

Database ¡becomes ¡the ¡ Scalability ¡BoTleneck ¡ Cannot ¡leverage ¡elas0city ¡

Apache ¡ + ¡App ¡ Server ¡

Client ¡Site ¡ Client ¡Site ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 10 ¡

slide-11
SLIDE 11

Apache ¡ + ¡App ¡ Server ¡ Apache ¡ + ¡App ¡ Server ¡ Apache ¡ + ¡App ¡ Server ¡

Scaling ¡in ¡the ¡Cloud ¡

HAProxy ¡(Load ¡Balancer) ¡ Apache ¡ + ¡App ¡ Server ¡ MySQL ¡ Master ¡DB ¡ MySQL ¡ Slave ¡DB ¡

ReplicaFon ¡ ElasFc ¡IP ¡ Client ¡Site ¡

Apache ¡ + ¡App ¡ Server ¡

Client ¡Site ¡ Client ¡Site ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 11 ¡

slide-12
SLIDE 12

Key ¡Value ¡Stores ¡

Apache ¡ + ¡App ¡ Server ¡ Apache ¡ + ¡App ¡ Server ¡ Apache ¡ + ¡App ¡ Server ¡

Scaling ¡in ¡the ¡Cloud ¡

HAProxy ¡(Load ¡Balancer) ¡ Apache ¡ + ¡App ¡ Server ¡

ElasFc ¡IP ¡ Client ¡Site ¡

Apache ¡ + ¡App ¡ Server ¡

Client ¡Site ¡ Client ¡Site ¡

Scalable ¡and ¡Elas0c ¡ But ¡limited ¡consistency ¡and ¡

  • pera0onal ¡flexibility ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 12 ¡

slide-13
SLIDE 13
  • Scale-­‑up ¡

– Classical ¡enterprise ¡selng ¡ (RDBMS) ¡ – Flexible ¡ACID ¡transac0ons ¡ – TransacFons ¡in ¡a ¡single ¡node ¡

  • Scale-­‑out ¡

– Cloud ¡friendly ¡(Key ¡value ¡stores) ¡ – ExecuFon ¡at ¡a ¡single ¡server ¡

  • Limited ¡funcFonality ¡& ¡guarantees ¡

– No ¡mul0-­‑row ¡or ¡mul0-­‑step ¡ transacFons ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡

Two ¡approaches ¡to ¡scalability ¡

8/7/15 ¡ 13 ¡

slide-14
SLIDE 14

Key-­‑value ¡Stores: ¡Design ¡Principles ¡

  • Separate ¡System ¡and ¡Applica0on ¡State ¡

¡

  • Limit ¡Applica0on ¡interac0ons ¡to ¡a ¡single ¡

node ¡ ¡

  • Decouple ¡Ownership ¡from ¡Data ¡Storage ¡

¡

  • Limited ¡distributed ¡synchroniza0on ¡is ¡

prac0cal ¡ ¡ ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 14 ¡

slide-15
SLIDE 15

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡

Scalable ¡Data ¡ManagemenFn ¡the ¡Cloud ¡

RDBMS ¡ Key ¡Value ¡Stores ¡

Fusion ¡ ¡Fission ¡

G-Store [SoCC ‘10] ¡ MegaStore ¡[CIDR ¡‘11] ¡ ecStore ¡[VLDB ¡‘10] ¡ ElasTraS [HotCloud ’09,TODS’13] Cloud ¡SQL ¡Server ¡[ICDE ¡’11] ¡ RelaFonalCloud ¡ ¡[CIDR ¡‘11] ¡ Google ¡F1 ¡(SIGMOD’12, ¡VLDB’13) ¡

8/7/15 ¡ 15 ¡

slide-16
SLIDE 16
  • Basic ¡building-­‑block: ¡

– Data ¡ParFFoning ¡(Table ¡level ¡è ¡Distributed ¡ TransacFons) ¡ ¡

  • Three ¡Example ¡Systems ¡

– ElasTraS ¡(UCSB) ¡ – SQL ¡Azure ¡(MSR) ¡ – RelaFonal ¡Cloud ¡(MIT) ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡

Data ¡Fission ¡

8/7/15 ¡ 16 ¡

slide-17
SLIDE 17
  • Pre-­‑defined ¡

parFFoning ¡scheme ¡ – e.g.: ¡Tree ¡schema ¡ ¡ – ElasTras, ¡ ¡ SQLAzure, ¡F1 ¡

  • Workload ¡driven ¡

parFFoning ¡scheme ¡

– e.g.: ¡Schism ¡in ¡ RelaFonalCloud ¡

Schema ¡Level ¡ParFFoning ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 8/7/15 ¡ 17 ¡

slide-18
SLIDE 18

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡

ElasTraS ¡Architecture ¡

OTM ¡ OTM ¡

Distributed ¡Fault-­‑tolerant ¡Storage ¡

OTM ¡

TM ¡Master ¡ Metadata ¡ Manager ¡

P1 ¡ P2 ¡ Pn ¡

Txn ¡Manager ¡

DB ¡ Partitions ¡ Master ¡and ¡MM ¡Proxies ¡

Log ¡Manager ¡

Durable ¡Writes ¡ Health ¡and ¡Load ¡ Management ¡ Lease ¡ ¡ Management ¡

8/7/15 ¡ 18 ¡

slide-19
SLIDE 19
  • Key ¡value: ¡Atomicity ¡guarantee ¡on ¡single ¡keys ¡
  • Combining ¡the ¡individual ¡key-­‑value ¡pairs ¡into ¡

larger ¡granules ¡of ¡transacFonal ¡access ¡

  • Megastore: ¡StaFcally ¡defined ¡by ¡the ¡apps ¡
  • G-­‑Store: ¡Dynamically ¡defined ¡by ¡the ¡apps ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡

Data ¡Fusion ¡

8/7/15 ¡ 19 ¡

slide-20
SLIDE 20

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 20 ¡

G-­‑Store: ¡TransacFons ¡on ¡Groups ¡

Without ¡distributed ¡transacFons ¡

Ownership ¡

  • f ¡keys ¡at ¡a ¡

single ¡node ¡ Key ¡ Group ¡

¢ One ¡key ¡selected ¡as ¡the ¡leader ¡ ¢ Followers ¡transfer ¡ownership ¡of ¡

keys ¡to ¡leader ¡

Grouping ¡Protocol ¡

slide-21
SLIDE 21

ElasFcity ¡

  • A ¡database ¡system ¡built ¡over ¡a ¡pay-­‑per-­‑use ¡

infrastructure ¡

– Infrastructure ¡as ¡a ¡Service ¡for ¡instance ¡ ¡

  • Scale ¡up ¡and ¡down ¡system ¡size ¡on ¡demand ¡

– UFlize ¡peaks ¡and ¡troughs ¡in ¡load ¡ ¡

  • Minimize ¡operaFng ¡cost ¡while ¡ensuring ¡good ¡

performance ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 21 ¡

slide-22
SLIDE 22

ElasFcity ¡in ¡the ¡Database ¡Layer ¡

DBMS ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 22 ¡

slide-23
SLIDE 23

ElasFcity ¡in ¡the ¡Database ¡Layer ¡

DBMS ¡ Capacity ¡expansion ¡to ¡deal ¡with ¡high ¡load ¡– ¡ Guarantee ¡good ¡performance ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 23 ¡

slide-24
SLIDE 24

ElasFcity ¡in ¡the ¡Database ¡Layer ¡

DBMS ¡ Consolida0on ¡during ¡periods ¡of ¡low ¡load ¡– ¡ Cost ¡Minimiza0on ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 24 ¡

slide-25
SLIDE 25

Live ¡Database ¡MigraFon ¡

  • No ¡prior ¡work ¡on ¡Database ¡migra0on ¡

¡

  • State-­‑of-­‑the-­‑art ¡– ¡use ¡VM ¡migraFon ¡

– [Clark ¡et ¡al., ¡NSDI ¡2005], ¡[Liu ¡et ¡al., ¡HPDC ¡2009] ¡ ¡

  • Requires ¡execuFng ¡DB-­‑in-­‑VM ¡

– High ¡performance ¡overhead ¡ – Poor ¡performance ¡and ¡consolidaFon ¡raFo ¡[Curino ¡ et ¡al., ¡CIDR ¡2011] ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 25 ¡

slide-26
SLIDE 26

Persistent ¡ Image ¡

Shared ¡Disk ¡Architecture: ¡Albatross ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡

Cached ¡ DB ¡State ¡ TransacFon ¡ State ¡

Tenant/DB ¡Partition ¡ DBMS ¡ Node ¡ Source ¡ Destination ¡ Tenant/DB ¡Partition ¡

Cached ¡ DB ¡ State ¡ TransacFon ¡ State ¡

26 ¡

  • No ¡failed ¡request ¡vs ¡100s ¡of ¡failed ¡

requests ¡(naïve ¡soluFon) ¡

  • Much ¡shorter ¡unavailability ¡window ¡

(naïve ¡soluFon) ¡

  • 15-­‑30% ¡increase ¡in ¡latency ¡vs ¡

200-­‑400% ¡latency ¡increase ¡(naïve ¡ soluFon) ¡

slide-27
SLIDE 27

Shared-­‑Nothing ¡Architecture: ¡Zephyr ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡

Source ¡ Destination ¡ Freeze ¡Index ¡Structures ¡

27 ¡

  • 50-­‑100 ¡failed ¡requests ¡vs ¡1000s ¡of ¡

failed ¡requests ¡(naïve ¡soluFon) ¡

  • No ¡unavailability ¡window ¡vs ¡5-­‑8 ¡

seconds ¡(naïve ¡soluFon) ¡

  • 20% ¡increase ¡in ¡latency ¡vs ¡15% ¡

latency ¡increase ¡(naïve ¡soluFon) ¡

slide-28
SLIDE 28

BIG ¡DATA ¡ANALYTICS ¡(QCRI): ¡ LEARNING ¡

X1 ¡ X2 ¡ ¡ … ¡ Xd ¡ ¡ x1 ¡ x11 ¡ x12 ¡ ¡ … ¡ x1d ¡ ¡ x2 ¡ x21 ¡ ¡ x22 ¡ ¡ … ¡ x2d ¡ ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ xn ¡ ¡ xn1 ¡ ¡ xn2 ¡ ¡ … ¡ xnd ¡ ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 28 ¡

slide-29
SLIDE 29

Learning: ¡Model ¡Filng ¡

ApplicaFon ¡ Dataset ¡= ¡ ObservaFons ¡

Model ¡Ω ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 29 ¡

slide-30
SLIDE 30

Machine ¡Learning ¡in ¡One ¡Slide ¡

(xi, ¡yi= ¡+1) ¡ (xj, ¡yj=-­‑1) ¡ (xi, ¡yi= ¡+1) ¡ (xj,yj= ¡-­‑1) ¡ y=w.x ¡+b ¡ find ¡a ¡model ¡that ¡ ¡ best ¡separates: ¡ ¡+ ¡and ¡-­‑ ¡

w

∗ = min w

(xi

i=1 n=1012

, yi,w)+Γ(w)

dimension ¡109 ¡

w

∗ = min w

(xi

i=1 n

, yi,w)+Γ(w)

Loss ¡funcFon ¡ RegularizaFon ¡ Big ¡Data ¡Selng ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 30 ¡

slide-31
SLIDE 31

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 31 ¡

slide-32
SLIDE 32

Gradient Descent: Sequential Computation

Repeat until convergence { read (θ0, θ1, …, θm); Compute gradient; write (θ0´, θ1´, …, θm´); }

slide-33
SLIDE 33

Scaling Machine Learning Algorithms

  • Leverage data and feature partitioning to parallelize the

computations.

slide-34
SLIDE 34

Parallel Version

Worker i (at iteration α): read synchronization read (π1, π2, …, πd); Compute gradient projection; write synchronization write ( πi´ ); Worker j (at iteration α): read synchronization read (π1, π2, …, πd); Compute gradient projection; write synchronization write ( πj´ );

π1 ¡ π2 ¡ …. ¡ πd ¡

slide-35
SLIDE 35

Parallel Version

Worker i (at iteration α): ∀𝑗,𝑘,𝑙 ¡ ¡𝑥𝑙[π𝑙][α−1] ¡< ¡𝑠𝑗[π𝑘][α] read (π1, π2, …, πd); Compute gradient projection; ∀𝑗,𝑘,𝑙 ¡ ¡𝑠𝑙[π𝑘][α] ¡< ¡𝑥𝑗[π𝑗][α] write ( πi´ ); Worker j (at iteration α): ∀𝑗,𝑘,𝑙 ¡ ¡𝑥𝑙[π𝑙][α−1] ¡< ¡𝑠𝑗[π𝑘][α] read (π1, π2, …, πd); Compute gradient projection; ∀𝑗,𝑘,𝑙 ¡ ¡𝑠𝑙[π𝑘][α] ¡< ¡𝑥𝑗[π𝑗][α] write ( πj´ );

π1 ¡ π2 ¡ …. ¡ πd ¡

slide-36
SLIDE 36

Straggler or Last Reducer Problem

π2 ¡ π1 ¡

slide-37
SLIDE 37

Scaling ML Algorithms

  • Current Approaches [e.g., Parameter Server]:
  • ­‑

Allow synchronization violations albeit bounded

  • ­‑

Not equivalent to semantics of sequential executions

  • ­‑

Use function-centric arguments to demonstrate convergence

  • ­‑

Higher tolerance to imprecision (nature of ML)

  • Process-based synchronization è data-centric approaches:
  • ­‑

Model read and write of parameter variables as database actions

  • ­‑

2-phase locking during each iteration for fine-grained concurrency

  • Unfortunately, does not work:
  • ­‑

Need a new framework for data-centric synchronization!

slide-38
SLIDE 38

Barrier Relaxation

π2 ¡ π1 ¡

slide-39
SLIDE 39

Data-centric View of Synchronization

  • Read Constraint: Worker i can read πj in iteration α only

after worker j has completed writes of iteration α – 1. ∀𝑗,𝑘 ¡ ¡𝑥𝑘[π𝑘][α−1] ¡< ¡𝑠𝑗[π𝑘][α]

  • Write Constraint: Worker j can write πj in iteration α only

after all the workers have read it. ∀𝑗,𝑘 ¡ ¡𝑠𝑗[π𝑘][α] ¡< ¡𝑥𝑘[π𝑘][α]

slide-40
SLIDE 40

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 40 ¡

slide-41
SLIDE 41

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 41 ¡

slide-42
SLIDE 42

A(1) ¡ A(2) ¡ A(m) ¡ A1 ¡ A2 ¡ A3 ¡ A11 ¡ A12 ¡ A21 ¡ A22 ¡ Row-­‑Oriented ¡ Column-­‑Oriented ¡ Mixed ¡

Data ¡ParFFoning ¡ Feature ¡ Par11oning ¡ Fully ¡Distributed ¡

slide-43
SLIDE 43

Work-in-progress

  • 1. Characterization of sequentially consistent executions.
  • 2. Data-centric constraints è sequentially consistent
  • 3. Process-centric synchronization è sequentially

consistent

  • 4. Qualitative analysis of different classes of executions
  • 5. Develop protocols that enforce data-centric constraints
  • 6. Experimental evaluation
slide-44
SLIDE 44

BIG ¡DATA ¡PRAGMATICS: ¡DATA-­‑CENTERS, ¡

DATA ¡PIPELINES ¡AND ¡MULTI-­‑HOMING ¡(GOOGLE) ¡

X1 ¡ X2 ¡ ¡ … ¡ Xd ¡ ¡ x1 ¡ x11 ¡ x12 ¡ ¡ … ¡ x1d ¡ ¡ x2 ¡ x21 ¡ ¡ x22 ¡ ¡ … ¡ x2d ¡ ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ . ¡ xn ¡ ¡ xn1 ¡ ¡ xn2 ¡ ¡ … ¡ xnd ¡ ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 44 ¡

slide-45
SLIDE 45

The ¡Scalability ¡Challenge: ¡DropBox ¡Case ¡Study ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 45 ¡

slide-46
SLIDE 46

Datacenter ¡is ¡a ¡new ¡substrate: ¡Why? ¡

  • Dis-­‑aggregaFon ¡(& ¡virtualizaFon) ¡of ¡resources: ¡

– Processing ¡elements ¡ – Storage ¡elements ¡

è ¡The ¡classical ¡model ¡of ¡CPU ¡+ ¡Disk ¡is ¡not ¡tenable ¡ ¡ ¡

Processing ¡

Storage ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 46 ¡

slide-47
SLIDE 47

Resource ¡Dis-­‑aggregaFon? ¡

  • At ¡odds ¡with ¡the ¡cloud ¡compuFng ¡model ¡(scalability ¡and ¡

elasFcity) ¡ ¡ ¡

  • At ¡odds ¡with ¡the ¡uFlity ¡model ¡(fault ¡tolerance) ¡

¡

Scaling-­‑out ¡& ¡ Scaling-­‑in ¡ Failures ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 47 ¡

slide-48
SLIDE 48

Distributed ¡Storage ¡Layer ¡

DBMS ¡ Controller ¡ Distributed Shared Memory DBMS ¡ Controller ¡ DBMS ¡ Controller ¡ DBMS ¡ Controller ¡ DBMS ¡Server ¡ DBMS ¡ Controller ¡ DBMS ¡ Controller ¡ DBMS ¡ Controller ¡ DB ¡Worker ¡ Pool ¡ DBMS ¡ Controller ¡ DBMS ¡ Controller ¡ DBMS ¡ Controller ¡ DB ¡Worker ¡ Pool ¡

ArchitecFng ¡DBMSs ¡in ¡Datacenters ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 48 ¡

slide-49
SLIDE 49

Notes ¡on ¡the ¡Architecture ¡

  • Network ¡and ¡I/O ¡latency ¡miFgaFon: ¡

– Batching ¡or ¡pipelining ¡of ¡data ¡accesses ¡ – Leverage ¡parallelism ¡at ¡the ¡distributed ¡storage ¡layer ¡ ¡

  • Query ¡execuFon ¡plans: ¡

– An ¡addiFonal ¡degree-­‑of-­‑freedom ¡(underlying ¡resource ¡ plaxorm ¡is ¡dynamic, ¡e.g., ¡10 ¡vs ¡100 ¡machines) ¡ ¡

  • Data ¡replicaFon: ¡

– Block ¡level ¡vs ¡DBMS ¡level? ¡

¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 49 ¡

slide-50
SLIDE 50

HIGH-­‑VOLUME ¡TRANSACTION ¡ PROCESSING ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 50 ¡

slide-51
SLIDE 51

Internet ¡Backend ¡Architecture ¡ (Current) ¡

Internet ¡Users ¡ AdverFsers ¡+ ¡Publishers ¡ Ads ¡Serving ¡ Persistent ¡Storage: ¡

  • 1. AdverFser ¡Data ¡
  • 2. Publisher ¡Data ¡
  • 3. Ad ¡StaFsFcal ¡Data ¡

Queries, ¡Ad ¡Clicks ¡ Ads ¡ Accounts ¡ Campaigns ¡ Budget ¡ … ¡ ReporFng ¡ Billing ¡ Analysis ¡ … ¡

User ¡ InteracFons ¡ Event ¡Logs ¡

Log ¡Joining, ¡Aggrega0on, ¡and ¡Injec0on ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 51 ¡

DBMS ¡

slide-52
SLIDE 52

Internet ¡Back-­‑end ¡Architecture ¡ (Postulated) ¡

Internet ¡Users ¡ AdverFsers ¡+ ¡Publishers ¡ Ads ¡Serving ¡ Persistent ¡Storage: ¡

  • 1. AdverFser ¡Data ¡
  • 2. Publisher ¡Data ¡
  • 3. Ad ¡StaFsFcal ¡Data ¡

Queries, ¡Ad ¡Clicks ¡ Ads ¡ Accounts ¡ Campaigns ¡ Budget ¡ … ¡ ReporFng ¡ Billing ¡ Analysis ¡ … ¡

User ¡ InteracFons ¡ Event ¡Logs ¡

Log ¡Joining, ¡Aggrega0on, ¡and ¡Injec0on ¡

μTransac0ons ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 52 ¡

slide-53
SLIDE 53

MULTI-­‑HOMING ¡(GEO-­‑REPLICATION) ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 53 ¡

slide-54
SLIDE 54

Cross-­‑datacenter ¡ReplicaFon ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 54 ¡

¡ ¡ Distributed ¡Storage ¡Layer ¡

Cloud ¡ applica0on ¡ Cloud ¡ applica0on ¡ Cloud ¡ applica0on ¡ Cloud ¡ applica0on ¡

Cross-­‑datacenter ¡ReplicaFon ¡(Spanner) ¡

slide-55
SLIDE 55

Cross-­‑Datacenter ¡ReplicaFon? ¡

  • Current ¡state: ¡

– Google’s ¡technologies: ¡MegaStore, ¡Spanner, ¡and ¡PaxosDB ¡ – Typically, ¡passive ¡replicaFon ¡of ¡ALL ¡data ¡

  • Sustainable ¡approach: ¡

– CriFcal ¡data ¡should ¡be ¡based ¡on ¡synchronous ¡techniques ¡ – Most ¡data, ¡especially ¡applicaFon ¡data, ¡should ¡be ¡updated ¡using ¡ acFve ¡replicaFon ¡(i.e., ¡by ¡execuFng ¡operaFons ¡redundantly ¡at ¡ each ¡datacenter) ¡

  • Why? ¡

– Fault-­‑deterrence ¡(by ¡execuFng ¡acFons ¡redundantly) ¡ – OperaFon ¡latency ¡not ¡dependent ¡on ¡a ¡single ¡master ¡(rather ¡ fastest ¡quorum) ¡

è Cross-­‑datacenter ¡latencies: ¡100s ¡of ¡milliseconds ¡ ¡

¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 55 ¡

slide-56
SLIDE 56

Cross-­‑datacenter ¡ReplicaFon: ¡ Distributed ¡Logs ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 56 ¡

Distributed ¡Log ¡Service ¡ ¡ ¡ Distributed ¡Log ¡Storage ¡

Cloud ¡ applica0on ¡ Cloud ¡ applica0on ¡ Cloud ¡ applica0on ¡ Cloud ¡ applica0on ¡ Logs ¡from ¡

  • ther ¡

Datacenters ¡ Replicated ¡to ¡other ¡ ¡Datacenters ¡

slide-57
SLIDE 57

Big ¡Data ¡Pragmas ¡

  • Debunk ¡Single ¡Machine ¡è ¡Datacenter ¡is ¡a ¡computer ¡
  • ComputaFon ¡is ¡already ¡disaggregated ¡ ¡
  • DisaggregaFon ¡of ¡storage ¡resources: ¡

– Disk ¡storage: ¡local ¡disk ¡assumpFon ¡is ¡seriously ¡flawed ¡ – Flash ¡storage: ¡will ¡be ¡integral ¡in ¡the ¡storage ¡hierarchy ¡ – Main ¡memory: ¡likely ¡to ¡meet ¡the ¡same ¡fate ¡(local ¡vs ¡ remote) ¡

  • Networking: ¡

– Intra-­‑datacenter ¡latencies ¡< ¡0.5ms ¡(big ¡opportunity) ¡ – Inter-­‑datacenter ¡latency ¡sFll ¡remains ¡a ¡challenge ¡(need ¡ innova0on) ¡

2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 57 ¡ 8/7/15 ¡

slide-58
SLIDE 58

Concluding ¡Remarks ¡

  • Cloud ¡CompuFng ¡Challenge: ¡

– Scalability, ¡Reliability, ¡and ¡ElasFcity ¡ – Re-­‑architecFng ¡DBMS ¡technology ¡

  • Big ¡Data ¡Analysis ¡and ¡Learning: ¡

– Scaling ¡IteraFve ¡ComputaFon ¡over ¡Big ¡Data ¡ – DBMS-­‑like ¡plaxorm ¡for ¡Machine ¡Learning ¡

  • Big ¡Data ¡PragmaFcs: ¡

– Complex ¡Data ¡Processing ¡Pipelines ¡ – MulF-­‑homing ¡and ¡Geo-­‑replicaFon ¡ ¡

8/7/15 ¡ 2015 ¡KTH ¡Summer ¡School: ¡Cloud ¡ CompuFng ¡and ¡Big ¡Data ¡ 58 ¡