Consistency-Based Service Level Agreements for Cloud Storage Douglas B. Terry, Vijayan Prabhakaran, Ramakrishna Kotla, Mahesh Balakrishnan, Marcos K. Aguilera,

Slides:



Advertisements
Similar presentations
Wyatt Lloyd * Michael J. Freedman * Michael Kaminsky David G. Andersen * Princeton, Intel Labs, CMU Dont Settle for Eventual : Scalable Causal Consistency.
Advertisements

Cloud Storage Consistency Doug Terry Microsoft Research Silicon Valley … Explained through Baseball.
Megastore: Providing Scalable, Highly Available Storage for Interactive Services. Presented by: Hanan Hamdan Supervised by: Dr. Amer Badarneh 1.
Consistency Guarantees and Snapshot isolation Marcos Aguilera, Mahesh Balakrishnan, Rama Kotla, Vijayan Prabhakaran, Doug Terry MSR Silicon Valley.
Case Study - Amazon. Amazon r Amazon has many Data Centers r Hundreds of services r Thousands of commodity machines r Millions of customers at peak times.
High throughput chain replication for read-mostly workloads
PNUTS: Yahoo!’s Hosted Data Serving Platform Brian F. Cooper, Raghu Ramakrishnan, Utkarsh Srivastava, Adam Silberstein, Philip Bohannon, HansArno Jacobsen,
AMAZON’S KEY-VALUE STORE: DYNAMO DeCandia,Hastorun,Jampani, Kakulapati, Lakshman, Pilchin, Sivasubramanian, Vosshall, Vogels: Dynamo: Amazon's highly available.
Database Scalability, Elasticity, and Autonomy in the Cloud Agrawal et al. Oct 24, 2011.
Cassandra Structured Storage System over a P2P Network Avinash Lakshman, Prashant Malik.
Amazon’s Dynamo Simple Cloud Storage. Foundations 1970 – E.F. Codd “A Relational Model of Data for Large Shared Data Banks”E.F. Codd –Idea of tabular.
Dynamo: Amazon's Highly Available Key-value Store Distributed Storage Systems CS presented by: Hussam Abu-Libdeh.
Dynamo: Amazon's Highly Available Key-value Store Guiseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin,
Dynamo Highly Available Key-Value Store 1Dennis Kafura – CS5204 – Operating Systems.
Giovanni Chierico | May 2012 | Дубна Consistency in a distributed world.
NoSQL Databases: MongoDB vs Cassandra
Benchmarking Cloud Serving Systems with YCSB Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, Russell Sears Yahoo! Research Presenter.
Distributed Systems Fall 2010 Replication Fall 20105DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Rethinking Dynamo: Amazon’s Highly Available Key-value Store --An Offense Shih-Chi Chen Hongyu Gao.
GentleRain: Cheap and Scalable Causal Consistency with Physical Clocks Jiaqing Du | Calin Iorgulescu | Amitabha Roy | Willy Zwaenepoel École polytechnique.
Consistency of cloud storage service CIS 700 Wenqing Zhuang.
Dynamo A presentation that look’s at Amazon’s Dynamo service (based on a research paper published by Amazon.com) as well as related cloud storage implementations.
CS162 Operating Systems and Systems Programming Key Value Storage Systems November 3, 2014 Ion Stoica.
IBM Haifa Research 1 The Cloud Trade Off IBM Haifa Research Storage Systems.
Dynamo: Amazon’s Highly Available Key-value Store Giuseppe DeCandia, et.al., SOSP ‘07.
Cloud Storage – A look at Amazon’s Dyanmo A presentation that look’s at Amazon’s Dynamo service (based on a research paper published by Amazon.com) as.
Massively Parallel Cloud Data Storage Systems S. Sudarshan IIT Bombay.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Case Study: Amazon Dynamo Steve Ko Computer Sciences and Engineering University at Buffalo.
Peer-to-Peer in the Datacenter: Amazon Dynamo Aaron Blankstein COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
PCAP Project: Probabilistic CAP and Adaptive Key-value Stores
Dynamo: Amazon’s Highly Available Key-value Store COSC7388 – Advanced Distributed Computing Presented By: Eshwar Rohit
IBM Almaden Research Center © 2011 IBM Corporation 1 Spinnaker Using Paxos to Build a Scalable, Consistent, and Highly Available Datastore Jun Rao Eugene.
Orbe: Scalable Causal Consistency Using Dependency Matrices & Physical Clocks Jiaqing Du, EPFL Sameh Elnikety, Microsoft Research Amitabha Roy, EPFL Willy.
Ahmad Al-Shishtawy 1,2,Tareq Jamal Khan 1, and Vladimir Vlassov KTH Royal Institute of Technology, Stockholm, Sweden {ahmadas, tareqjk,
VLDB2012 Hoang Tam Vo #1, Sheng Wang #2, Divyakant Agrawal †3, Gang Chen §4, Beng Chin Ooi #5 #National University of Singapore, †University of California,
Cloud Computing Cloud Data Serving Systems Keke Chen.
 Mainak Ghosh, Wenting Wang, Gopalakrishna Holla, Indranil Gupta.
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation Amazon’s Dynamo Lecturer.
Dynamo: Amazon’s Highly Available Key-value Store
From imagination to impact a.com.au From imagination to impact Insert name Insert Title H. Wada, A. Fekete, L. Zhao, K. Lee and A.
Alireza Angabini Advanced DB class Dr. M.Rahgozar Fall 88.
CSE 486/586 CSE 486/586 Distributed Systems Case Study: Amazon Dynamo Steve Ko Computer Sciences and Engineering University at Buffalo.
CAP + Clocks Time keeps on slipping, slipping…. Logistics Last week’s slides online Sign up on Piazza now – No really, do it now Papers are loaded in.
Authors Brian F. Cooper, Raghu Ramakrishnan, Utkarsh Srivastava, Adam Silberstein, Philip Bohannon, Hans-Arno Jacobsen, Nick Puz, Daniel Weaver, Ramana.
Probabilistically Consistent Indranil Gupta (Indy) Department of Computer Science, UIUC FuDiCo 2015 DPRG:
Declarative Programming over Eventually Consistent Data Stores KC Sivaramakrishnan Gowtham Kaki Suresh Jagannathan.
Dynamo: Amazon’s Highly Available Key-value Store DAAS – Database as a service.
Travis Sansome NoSQL PaaS in Azure through DocumentDB DAT332.
1 Benchmarking Cloud Serving Systems with YCSB Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan and Russell Sears Yahoo! Research.
Big Data Yuan Xue CS 292 Special topics on.
Kitsuregawa Laboratory Confidential. © 2007 Kitsuregawa Laboratory, IIS, University of Tokyo. [ hoshino] paper summary: dynamo 1 Dynamo: Amazon.
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation Amazon’s Dynamo Lecturer.
Azure Active Directory is becoming one of, if not the, primary user identity management services for cloud applications. One of Azure Active Directory's.
Minimizing Commit Latency of Transactions in Geo-Replicated Data Stores Paper Authors: Faisal Nawab, Vaibhav Arora, Divyakant Argrawal, Amr El Abbadi University.
CSE 486/586 Distributed Systems Consistency --- 2
CSE 486/586 Distributed Systems Case Study: Amazon Dynamo
Globally distributed, secure MongoDB with Azure Cosmos DB
CSE 486/586 Distributed Systems Consistency --- 2
NOSQL.
Introducing YugaByte DB
EECS 498 Introduction to Distributed Systems Fall 2017
EECS 498 Introduction to Distributed Systems Fall 2017
Explore the Azure Cosmos DB with .NET Core 2.0
EECS 498 Introduction to Distributed Systems Fall 2017
Benchmarking Cloud Serving Systems with YCSB
Scalable Causal Consistency
Global Distribution.
CSE 486/586 Distributed Systems Consistency --- 2
CSE 486/586 Distributed Systems Case Study: Amazon Dynamo
Azure Cosmos DB – FY20 Top Use Cases
Presentation transcript:

Consistency-Based Service Level Agreements for Cloud Storage Douglas B. Terry, Vijayan Prabhakaran, Ramakrishna Kotla, Mahesh Balakrishnan, Marcos K. Aguilera, Hussam Abu-Libdeh Microsoft Research

“A foolish consistency is the hobgoblin of little minds” -- Ralph Waldo Emerson (1841) “… and of large clouds” -- Douglas Brian Terry (2013) 2

Today’s Cloud Storage Providers Replicate data widely Offer choice of strong or eventual consistency e.g. Amazon DynamoDB, Yahoo PNUTS, Google App Engine, Oracle NoSQL, Cassandra, … Microsoft Windows Azure Tradeoff consistency, availability and performance 3

Problem Developers must choose consistency No single choice is best for all clients and situations 4 Client Consistency U.S. (secondary) England (primary) India (secondary) China (client only) strong eventual roundtrip times in milliseconds

Pileus key features Replicated, partitioned key-value store Choice of consistency Consistency-based service level agreements (SLAs) 5 a cap cloud

Pileus System Model 6 primary core secondary nodes Get(key, SLA) Put(key, value) Get(key, SLA) sync replication lazy replication Get(key, SLA) API BeginSession (SLA) BeginTx (SLA) Put (key, value) Get (key, SLA) returns value, consistency EndTx () EndSession ()

Read Consistency Guarantees 7 Strong ConsistencyReturn value of latest Put. Causal Consistency Return value of latest causally preceding Put. Bounded Staleness (t) Return value that is stale by at most t seconds. Read My Writes Return value of latest Put in client session or a later value. Monotonic Reads Return same or later value as earlier Get in client session. Eventual ConsistencyReturn value of any Put. [COPS 2011 ] [TACT 2002 ] [Bayou 1994 ]

Read Latencies 8 Client/ Consistency U.S. (secondary) England (primary) India (secondary) China (client only) strong causal bounded(30) read-my-writes monotonic eventual roundtrip times in milliseconds consistency affects latency client location affects latency

Consistency-based SLA Applications declare desired consistency/latency 9 strong300 ms. consistencylatency read my writes300 ms utility 0.5 eventual300 ms Shopping Cart:

SLA Enforcement: Client Monitoring NodePrimary?RTTsHigh Timestamp Ayes210 Bno166 Cno For each tablet: from configuration service measured on Gets, Puts, and pings returned from Gets, Puts, and pings

SLA Enforcement: Node Selection 1.For each subSLA and node, a.compute P latency b.compute P consistency c.compute P latency x P consistency x utility 2.Select node with maximum expected utility 3.Send Get operation to node 4.Measure RTT and update records 5.Return data and delivered consistency to caller 11 On Get (key, SLA):

Experimental Setup System configuration: Primary: England Secondaries: U.S., India Clients: U.S., England, India, China Benchmark: YCSB with 50/50 Gets/Puts 500-op sessions Node selection schemes: Primary = get from primary Random = get from random node Closest = get from closest node Pileus = get from node with highest expected utility Measurement: Average utility for Get operations U.S. England China India

Experiment #1: SLA Simplified shopping cart SLA: 13 consistencylatency read my writes300 ms utility 1.0 eventual300 ms.0.5

Experiment #1: Delivered Utility 14 Average utility per Get Client datacenter (secondary) (primary)(client only)

Experiment #1: Delivered Utility 15 Average utility per Get Client datacenter (secondary) (primary)(client only) Primary selection works well when close to the primary, but poorly when distant

Experiment #1: Delivered Utility 16 Average utility per Get Client datacenter (secondary) (primary)(client only) Random selection rarely works well

Experiment #1: Delivered Utility 17 Average utility per Get Client datacenter (secondary) (primary)(client only) 100% Gets from England; 100% meet top subSLA

Average utility per Get Experiment #1: Delivered Utility 18 Client datacenter (secondary) (primary)(client only) 91% from U.S.; 9% from England; 100% meets top subSLA 14.5 ms. avg. latency vs. 148 ms. for primary

Experiment #1: Delivered Utility 19 Average utility per Get Client datacenter (secondary) (primary)(client only) 99.6% from U.S.; 0.4% from India; 96% meets top subSLA

(secondary) (primary)(client only) Client datacenter Experiment #1: Delivered Utility 20 Pileus always delivers the most utility! Average utility per Get

Experiment #1: Delivered Utility 21 Average utility per Get Client datacenter (secondary) (primary)(client only) 9% fail to meet read- my-write

Experiment #2: SLA Password checking SLA: 22 consistencylatency strong150 ms utility 1.0 eventual150 ms strong1000 ms.0.25

Experiment #2: Delivered Utility 23 Average utility per Get Client datacenter (secondary) (primary)(client only)

Conclusions: Main Contributions Our Pileus system provides a broad choice of consistency guarantees and range of delivered read latency allows declarative specification of desired consistency and latency through consistency-based SLAs selects nodes to maximize expected utility while adapting to varying conditions