32
Data-Intensive Systems: Technology trends, Emerging challenges & opportuni=es CS6453 Rachit Agarwal Slides based on: many many discussions with Ion Stoica, his class, and many industry folks

Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Data-IntensiveSystems:Technologytrends,Emergingchallenges&opportuni=es

CS6453

RachitAgarwal

Slidesbasedon:manymanydiscussionswithIonStoica,hisclass,andmanyindustryfolks

Page 2: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Typicalnode

Memorybus

PCI

SATA

Ethe

rnet

Page 3: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Typicalnode

Memorybus

80GB/s

100sGB 10ssec

CapacityTimetoread

Page 4: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Typicalnode

Memorybus

80GB/s

100sGB 10ssec

CapacityTimetoread

PCI(1GB/s)100sGB 10smin

Page 5: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Typicalnode

Memorybus

80GB/s

100sGB 10ssec

CapacityTimetoread

PCI(1GB/s)

SATA

100sGB 10smin

10smin600MB/s

100MB/s1sTB hours

Page 6: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—Moore’slawslowingdown?

• Stated50yearsagobyGordonMoore

• Numberoftransistorsonmicrochipdouble~2years•Whyinterestingforsystemspeople?

• BryanKrzanich—Today,

closerto2.5years

Page 7: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—CPU(#cores)

Today,+20%everyyear

Page 8: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Trends

Memorybus

PCI

SATA

Ethe

rnet

+20%

Page 9: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—CPU(performancepercore)

Today,+10%everyyear

Page 10: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

• Numberofcores:+20%

• Performancepercore:+10%

• Overall:+30-32%

Trends—CPUscaling

Page 11: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Trends

Memorybus

PCI

SATA

Ethe

rnet

+30%

Page 12: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—Memory

+29%everyyear

Page 13: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Trends

Memorybus

PCI

SATA

Ethe

rnet

+30% +30%

Page 14: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—MemoryBus +15%everyyear

Page 15: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Trends

Memorybus

PCI

SATA

Ethe

rnet

+30% +30%

+15%

Page 16: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—SSD

SSDscheaperthanHDD

Page 17: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

• FollowingMoore’slaw(latestart)

• 3Dtechnologies

•MayevenoutpaceMoore’slaw

Trends—SSDcapacityscaling

Page 18: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Trends

Memorybus

PCI

SATA

Ethe

rnet

+30% +30%

+15%

+>30%

Page 19: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—PCIbandwidth(and~SATA)+15-20%everyyear

Page 20: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Trends

Memorybus

PCI

SATA

Ethe

rnet

+30% +30%

+15%

+>30%+15-20%

Page 21: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—Ethernetbandwidth+33-40%everyyear

Page 22: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Servers—Trends

Memorybus

PCI

SATA

Ethe

rnet

+30% +30%

+15%

+>30%+15-20%

+40%

Page 23: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

• Intra-serverBandwidthanincreasingbottleneck

• Howcouldweovercomethis?

• Reducethesizeofthedata?•Whatdoesthatmeanforapplications?

• Preferremoteoverlocal?

• Challenges?• Non-intuitive;wealwayspreferlocality

Trends—Implications?

Page 24: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

• Non-volatilememory

• 8-10xdensityofDRAM(closetoSSD)

• 2-4xhigherlatency

• Butwhocares?Bandwidthisthebottleneck…

Trends—Emergenceofnewtechnologies

Page 25: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—Emergenceofnewtechnologies

Page 26: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—Emergenceofnewtechnologies

heps://www.youtube.com/watch?v=IWsjbqbkqh8

Page 27: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—&Implications

• HDDisnewtape

• SSD/NVRAMisthenewpersistentstorage

• But,increasinggapbetweencapacityandb/wconcerning…

• Deeperstoragehierarchy(L1,L2,L3,DRAM,NVRAM,SSD,HDD)

• DoCPUcachesevenmatter?

• Howdodesignsoftwarestacktoworkwithdeeperhierarchy?

• CPU-storage“disaggregation”isgoingtobeanorm

• Easiertoovercomebandwidthbottlenecks

• GoogleandMicrosofthavealreadyrealized

•Whathappenstolocality?

• Re-thinksoftwaredesign?

Page 28: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Paper1—Memory-centricdesign

• SSD/NVRAMisthenewpersistentstorage(+archival)

• Notjustthepersistentstorage,THEstorage• +(privatememory),deepstoragehierarchy

• CPU-storage“disaggregation”• NVRAMsharedacrossCPUs

• Challenges?• Howtomanage/shareresources?

• NVM:acceleratorsandcontrollers

• Addressing?Flatvirtualaddressspace?• NVMsharinginmulti-tenantscenarios?

• NVM+CPU+Network:software-controlled?

• Storagevscomputeheavyworkloads?

Page 29: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Paper1—Memory-centricdesign

• Newfailuremodes?[veryinterestingdirection!!]

• CPU-storagecanfailindependently• Verydifferentfromtoday’s“servers”

• Good?Bad?• Transparentfailuremitigation…?

• HowabouttheOS?• WhereshouldtheOSsit?

• WhatfunctionalitiesshouldbeimplementedwithintheOS?

• Application-levelsemantics

• ?

Page 30: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Paper2—Nanostores(Analternativeview)

• DRAMisdead

• SSD/NVRAMisthenewpersistentstorage(+archival)

• Notjustthepersistentstorage,THEstorage• Nostoragehierarchy

• CPU-storage“convergence”isgoingtobeanorm

• CPU-storagehyper-convergence• BerkeleyIRAMproject(late90s)

• Challenges?• Network?(topology,intra-nanostorelatency,throughput)• Howdoesthisbypassthetrendsdiscussedearlier?

Page 31: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—Themissingpiece?

• DatavolumeincreasingsignificantlyfasterthanMoore’slaw

• 56xincreaseinGoogleindexeddatain7years• 173%increaseinenterprisedata• Uber,Airbnb,Orbitz,Hotels,…

• Datatypes• Images,audio,videos,logs,logs,logs,genetics,astronomy,….

• YouTube:~50TBofdataeveryday

Page 32: Data-Intensive Systems - Cornell University · read PCI (1GB/s) 100s GB 10s min. Servers — Typical node Memory bus 80GB/s 100s GB 10s sec Capacity Time to read PCI (1GB/s) SATA

Trends—Discussion

• Othermissingpieces?

• Softwareoverheads• Applicationworkloads• Specializationvs.generalization?