Download presentation
Presentation is loading. Please wait.
Published byStuart Davidson Modified over 9 years ago
1
RAMCloud: Concept and Challenges John Ousterhout Stanford University
2
April 10, 2009RAMCloudSlide 2 Introduction ● RAMCloud: massive datacenter storage entirely in DRAM ● New research project: Kozyrakis Mazieres McKeown Mitra Ousterhout Parulkar Prabhakar Rosenblum ● Goal for today: feedback What are we missing? Related work Pitfalls
3
April 10, 2009RAMCloudSlide 3 Outline ● Overview of RAMCloud ● Motivation ● Challenges in making RAMCloud a reality
4
April 10, 2009RAMCloudSlide 4 RAMCloud Overview ● Storage for datacenters ● 1000-10000 commodity servers ● 64 GB DRAM/server ● All data always in RAM ● Low-latency access: 5-10µs RPC ● High throughput: 1,000,000 ops/sec/server ● High level of durability & availability Application Servers Storage Servers Datacenter
5
April 10, 2009RAMCloudSlide 5 Example Configurations Today5-10 years # servers1000 GB/server64GB1024GB Total capacity64TB1PB Total server cost$4M $/GB$60$4
6
April 10, 2009RAMCloudSlide 6 RAMDisk Motivation ● Relational databases don’t scale ● Every large-scale Web application has problems: Facebook: 4000 MySQL instances + 2000 memcached servers ● New forms of storage starting to appear: Google BigTable ● Many apps don’t need all RDBMS features, can’t afford them
7
April 10, 2009RAMCloudSlide 7 RAMDisk Motivation, cont’d Disk access rate not keeping up with capacity: ● Disks must become more archival ● Can’t afford small random accesses ● RAM cost today = disk cost 10 years ago Mid-1980’sTodayChange Disk capacity30 MB200 GB6667x Max. transfer rate2 MB/s100 MB/s50x Latency (seek & rotate)20 ms10 ms2x Capacity/bandwidth (large blocks) 15 s2000 s133x Capacity/bandwidth (200B blocks) 3000 s115 days3333x
8
April 10, 2009RAMCloudSlide 8 Can We Make RAMCloud Work? ● Is capacity sufficient? ● Data durability/availability ● Low-latency RPCs ● Data model ● Concurrency model ● Data distribution, scaling ● Multi-tenancy ● Functional distribution ● Automated management
9
April 10, 2009RAMCloudSlide 9 Is RAMCloud Capacity Sufficient? ● Target applications: online data, not media ● Facebook: 200 TB of (non-image) data today ● Amazon: Revenues/year:$16B Orders/year:400M? ($40/order?) Bytes/order:10000? Order data/year4 TB? ● United Airlines: Total flights/day:4000? (30,000 for all airlines in U.S.) Passenger flights/year:200M? Data/passenger-flight:10000? Order data/year:2 TB?
10
April 10, 2009RAMCloudSlide 10 Data Durability/Availability ● Data must be durable when write RPC returns. ● Non-starters: Synchronous disk write (100-1000x too slow) Replicate in other memories (too expensive) ● One possibility: Log operations in RAM of other server(s) Log to disk in batches Occasional disk checkpoints to truncate logs ● Additional issues: Fast recovery Role of flash memory Datacenter disaster recovery
11
April 10, 2009RAMCloudSlide 11 Low-Latency RPCs Achieving 5-10µs will impact every layer of the system: ● Network: cut-through routing, flow control ● OS: Dedicated cores No interrupts? No virtual memory? ● Protocol stack TCP too slow (especially with packet loss) Must avoid copies ● Storage service Could we someday get to 1µs??
12
April 10, 2009RAMCloudSlide 12 Data Model ● Probably not relations: Too rigid Too much fragmentation Better to collect larger objects? ● Unstructured blobs? ● Hierarchical hash tables (e.g. JSON)? ● What is the role of indexing?
13
April 10, 2009RAMCloudSlide 13 Concurrency Model ● Locking ● Transactions? ● What level of consistency for operations on distributed data?
14
April 10, 2009RAMCloudSlide 14 Distribution and Scaling ● How to distribute data among storage servers? Concentrate to minimize RPCs, simplify consistency Distribute to reduce hot spots ● How to achieve locality of access? (Is there any locality for Web apps?) ● Smooth scaling: Automatic redistribution of data
15
April 10, 2009RAMCloudSlide 15 Multi-Tenancy ● Design for cloud computing environments: Multiple users/applications sharing a RAMCloud ● Security/access control issues ● Scale down as well as up Small apps should get RAMCloud benefits at proportional cost
16
April 10, 2009RAMCloudSlide 16 Functional Distribution ● RAMCloud will include software on both application servers and storage servers ● What is the right distribution? ● Application servers: Offload storage system, increase scalability, flexibility Example: aggregation operators ● Storage servers: More trusted May benefit from knowledge of internals Application Servers Storage Servers RAMCloud Software
17
April 10, 2009RAMCloudSlide 17 Automated Management ● Manual management a non-starter: system too complex ● Things that must be automatic: Recovery from failures Distribution of data among servers Reorganization as system scales
18
April 10, 2009RAMCloudSlide 18 Discussion ● Why hasn’t this been done before? Or has it? ● If this is a good idea, what happened to main- memory databases? ● What are the biggest issues that might keep RAMCloud from working? ● What’s the most important database work we should be aware of? ● Would any of you like to participate in RAMCloud?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.