SlideShare a Scribd company logo
Dynamo: Amazon’s Highly Available Key-Value Store
Farley Lai
University of Iowa
poyuan-lai@uiowa.edu

February 21, 2014

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

1 / 14
Motivation

MapReduce processes big data in a parallel and distributed fashion.
Daynamo forms the foundation of big data, namely, the storage.

Shopping Cart
Clients tend to insert and update items frequenty but review the cart to
check out only at the end. Is it fun for the sytem to always ask you to
retry later in minutes whenever there is an item inserted/updated in the
shopping cart?

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

2 / 14
SOA of Amazon’s Platform

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

3 / 14
Roles
Service Provider: Amazon
Service: Dynamo, the storage service
Customer: application/service vendors
Client: applications/services
User: human and/or bots

Service Level Agreements (SLA)
SLA are contracts signed by service providers and customers, specifying
the quality of service guaranteed for a client access distribution.
Example: service guaranteeing that it will provide a response within
300ms for 99.9% of its requests for a peak client load of 500 requests per
second.
Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

4 / 14
What is Dynamo?

A distributed key-value storage service built on a ring topology with
high availability for writes
eventual consistency

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

5 / 14
Requirements and Assumptions

Requirements
Simple read/write to data items identified by unique keys
ACID: automicity, consistency, isolation and durability
SLA: latency constraints on the 99.9th percentile of the
distribution
Assumptions
Trusted environment and machines without security concerns

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

6 / 14
Problems, Techniques and Advantages

Problems
Partitioning
High write availability
Temporary failures

Permanent failures
Membership

Farley Lai (UIOWA)

Techniques

Advantages

Consistent Hashing
Vector clocks with
conlict resolution
Sloppy
Quorum,
hinted handoff

Incremental Scalability
Version size is decoupled
from update rates
High availability and durability guarantee despite
some unavailable replicas
Fast replica synchronization
decentralized registry for
storing membership and
liveness info

Merkle trees
Gossip protocol

Amazon Dynamo (Big Data)

February 21, 2014

7 / 14
Partitioning

Consistent hashing
1

key space

2

tokens assignment

3

replication

4

load distribution

5

node availability

6

node capacity

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

8 / 14
Data Versioning

Operations
1

read()⇒get()

2

write()⇒put()

3

conflict resolution

4

vector clock

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

9 / 14
Sloppy Quorum

1

R(2) + W (2) > N(3)

2

latency

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

10 / 14
Replica Synchronization

Figure : Merkle hash tree1

Farley Lai (UIOWA)

Figure : Merkle hash tree2

Amazon Dynamo (Big Data)

February 21, 2014

11 / 14
Evaluation: latency

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

12 / 14
Evaluation: load balance

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

13 / 14
Evaluation: write buffer

Farley Lai (UIOWA)

Amazon Dynamo (Big Data)

February 21, 2014

14 / 14

More Related Content

Viewers also liked

Google - Bigtable
Google - BigtableGoogle - Bigtable
Google - Bigtable
영원 서
 
Introduction to Knockout Js
Introduction to Knockout JsIntroduction to Knockout Js
Introduction to Knockout Js
Knoldus Inc.
 
Introduction to Apache Cassandra
Introduction to Apache Cassandra Introduction to Apache Cassandra
Introduction to Apache Cassandra
Knoldus Inc.
 
Couch db
Couch dbCouch db
Couch db
Rashmi Agale
 
CouchDB – A Database for the Web
CouchDB – A Database for the WebCouchDB – A Database for the Web
CouchDB – A Database for the Web
Karel Minarik
 
Real World CouchDB
Real World CouchDBReal World CouchDB
Real World CouchDB
John Wood
 
The Google Chubby lock service for loosely-coupled distributed systems
The Google Chubby lock service for loosely-coupled distributed systemsThe Google Chubby lock service for loosely-coupled distributed systems
The Google Chubby lock service for loosely-coupled distributed systems
Romain Jacotin
 

Viewers also liked (9)

Google - Bigtable
Google - BigtableGoogle - Bigtable
Google - Bigtable
 
Introduction to Knockout Js
Introduction to Knockout JsIntroduction to Knockout Js
Introduction to Knockout Js
 
Big table
Big tableBig table
Big table
 
Introduction to Apache Cassandra
Introduction to Apache Cassandra Introduction to Apache Cassandra
Introduction to Apache Cassandra
 
Couch db
Couch dbCouch db
Couch db
 
CouchDB – A Database for the Web
CouchDB – A Database for the WebCouchDB – A Database for the Web
CouchDB – A Database for the Web
 
Real World CouchDB
Real World CouchDBReal World CouchDB
Real World CouchDB
 
GOOGLE BIGTABLE
GOOGLE BIGTABLEGOOGLE BIGTABLE
GOOGLE BIGTABLE
 
The Google Chubby lock service for loosely-coupled distributed systems
The Google Chubby lock service for loosely-coupled distributed systemsThe Google Chubby lock service for loosely-coupled distributed systems
The Google Chubby lock service for loosely-coupled distributed systems
 

Similar to Amazon Dynamo

Dynamo Amazon’s Highly Available Key-value Store Giuseppe D.docx
Dynamo Amazon’s Highly Available Key-value Store Giuseppe D.docxDynamo Amazon’s Highly Available Key-value Store Giuseppe D.docx
Dynamo Amazon’s Highly Available Key-value Store Giuseppe D.docx
jacksnathalie
 
Oracle Coherence: in-memory datagrid
Oracle Coherence: in-memory datagridOracle Coherence: in-memory datagrid
Oracle Coherence: in-memory datagrid
Emiliano Pecis
 
Amazon dynamo-sosp2007
Amazon dynamo-sosp2007Amazon dynamo-sosp2007
Amazon dynamo-sosp2007huangjunsk
 
amazon-dynamo-sosp2007
amazon-dynamo-sosp2007amazon-dynamo-sosp2007
amazon-dynamo-sosp2007Thomas Hughes
 
Storage strategy and tsm roadmap
Storage strategy and tsm roadmapStorage strategy and tsm roadmap
Storage strategy and tsm roadmapIBM Danmark
 
Moving Forward Faster: How Monash University Automated Data on AWS with Commv...
Moving Forward Faster: How Monash University Automated Data on AWS with Commv...Moving Forward Faster: How Monash University Automated Data on AWS with Commv...
Moving Forward Faster: How Monash University Automated Data on AWS with Commv...
Amazon Web Services
 
Graph Data: a New Data Management Frontier
Graph Data: a New Data Management FrontierGraph Data: a New Data Management Frontier
Graph Data: a New Data Management Frontier
Demai Ni
 
Critical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM ApplicationsCritical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM Applications
Datavail
 
Amazon的分布式Key Value存储系统(Dynamo)的论文
Amazon的分布式Key Value存储系统(Dynamo)的论文Amazon的分布式Key Value存储系统(Dynamo)的论文
Amazon的分布式Key Value存储系统(Dynamo)的论文yiditushe
 
Amazon dynamo-sosp2007
Amazon dynamo-sosp2007Amazon dynamo-sosp2007
Amazon dynamo-sosp2007Julio Pari
 
Dynamo amazon’s highly available key value store
Dynamo amazon’s highly available key value storeDynamo amazon’s highly available key value store
Dynamo amazon’s highly available key value store
João Gabriel Lima
 
Cloud Crowd GigaSpaces Presentation
Cloud Crowd GigaSpaces PresentationCloud Crowd GigaSpaces Presentation
Cloud Crowd GigaSpaces Presentation
jimliddle
 
Cloud computing aenc - final
Cloud computing   aenc - finalCloud computing   aenc - final
Cloud computing aenc - final
Association Executives of North Carolina
 
Optimized Couchbase Data Management
Optimized Couchbase Data ManagementOptimized Couchbase Data Management
Optimized Couchbase Data Management
Imanis Data
 
CloudCrowd gigaSpaces Presentation
CloudCrowd gigaSpaces PresentationCloudCrowd gigaSpaces Presentation
CloudCrowd gigaSpaces Presentation
Nati Shalom
 
Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014
Ines Sombra
 
Auckland Summit Keynote
Auckland Summit KeynoteAuckland Summit Keynote
Auckland Summit Keynote
Amazon Web Services
 
Improve your Tech Quotient
Improve your Tech QuotientImprove your Tech Quotient
Improve your Tech Quotient
Tarence DSouza
 
Cloud Computing Best Practices
Cloud Computing Best PracticesCloud Computing Best Practices
Cloud Computing Best Practices
BluePiIT
 
ScalabilityAvailability
ScalabilityAvailabilityScalabilityAvailability
ScalabilityAvailabilitywebuploader
 

Similar to Amazon Dynamo (20)

Dynamo Amazon’s Highly Available Key-value Store Giuseppe D.docx
Dynamo Amazon’s Highly Available Key-value Store Giuseppe D.docxDynamo Amazon’s Highly Available Key-value Store Giuseppe D.docx
Dynamo Amazon’s Highly Available Key-value Store Giuseppe D.docx
 
Oracle Coherence: in-memory datagrid
Oracle Coherence: in-memory datagridOracle Coherence: in-memory datagrid
Oracle Coherence: in-memory datagrid
 
Amazon dynamo-sosp2007
Amazon dynamo-sosp2007Amazon dynamo-sosp2007
Amazon dynamo-sosp2007
 
amazon-dynamo-sosp2007
amazon-dynamo-sosp2007amazon-dynamo-sosp2007
amazon-dynamo-sosp2007
 
Storage strategy and tsm roadmap
Storage strategy and tsm roadmapStorage strategy and tsm roadmap
Storage strategy and tsm roadmap
 
Moving Forward Faster: How Monash University Automated Data on AWS with Commv...
Moving Forward Faster: How Monash University Automated Data on AWS with Commv...Moving Forward Faster: How Monash University Automated Data on AWS with Commv...
Moving Forward Faster: How Monash University Automated Data on AWS with Commv...
 
Graph Data: a New Data Management Frontier
Graph Data: a New Data Management FrontierGraph Data: a New Data Management Frontier
Graph Data: a New Data Management Frontier
 
Critical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM ApplicationsCritical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM Applications
 
Amazon的分布式Key Value存储系统(Dynamo)的论文
Amazon的分布式Key Value存储系统(Dynamo)的论文Amazon的分布式Key Value存储系统(Dynamo)的论文
Amazon的分布式Key Value存储系统(Dynamo)的论文
 
Amazon dynamo-sosp2007
Amazon dynamo-sosp2007Amazon dynamo-sosp2007
Amazon dynamo-sosp2007
 
Dynamo amazon’s highly available key value store
Dynamo amazon’s highly available key value storeDynamo amazon’s highly available key value store
Dynamo amazon’s highly available key value store
 
Cloud Crowd GigaSpaces Presentation
Cloud Crowd GigaSpaces PresentationCloud Crowd GigaSpaces Presentation
Cloud Crowd GigaSpaces Presentation
 
Cloud computing aenc - final
Cloud computing   aenc - finalCloud computing   aenc - final
Cloud computing aenc - final
 
Optimized Couchbase Data Management
Optimized Couchbase Data ManagementOptimized Couchbase Data Management
Optimized Couchbase Data Management
 
CloudCrowd gigaSpaces Presentation
CloudCrowd gigaSpaces PresentationCloudCrowd gigaSpaces Presentation
CloudCrowd gigaSpaces Presentation
 
Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014
 
Auckland Summit Keynote
Auckland Summit KeynoteAuckland Summit Keynote
Auckland Summit Keynote
 
Improve your Tech Quotient
Improve your Tech QuotientImprove your Tech Quotient
Improve your Tech Quotient
 
Cloud Computing Best Practices
Cloud Computing Best PracticesCloud Computing Best Practices
Cloud Computing Best Practices
 
ScalabilityAvailability
ScalabilityAvailabilityScalabilityAvailability
ScalabilityAvailability
 

Recently uploaded

Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 

Recently uploaded (20)

Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 

Amazon Dynamo

  • 1. Dynamo: Amazon’s Highly Available Key-Value Store Farley Lai University of Iowa poyuan-lai@uiowa.edu February 21, 2014 Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 1 / 14
  • 2. Motivation MapReduce processes big data in a parallel and distributed fashion. Daynamo forms the foundation of big data, namely, the storage. Shopping Cart Clients tend to insert and update items frequenty but review the cart to check out only at the end. Is it fun for the sytem to always ask you to retry later in minutes whenever there is an item inserted/updated in the shopping cart? Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 2 / 14
  • 3. SOA of Amazon’s Platform Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 3 / 14
  • 4. Roles Service Provider: Amazon Service: Dynamo, the storage service Customer: application/service vendors Client: applications/services User: human and/or bots Service Level Agreements (SLA) SLA are contracts signed by service providers and customers, specifying the quality of service guaranteed for a client access distribution. Example: service guaranteeing that it will provide a response within 300ms for 99.9% of its requests for a peak client load of 500 requests per second. Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 4 / 14
  • 5. What is Dynamo? A distributed key-value storage service built on a ring topology with high availability for writes eventual consistency Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 5 / 14
  • 6. Requirements and Assumptions Requirements Simple read/write to data items identified by unique keys ACID: automicity, consistency, isolation and durability SLA: latency constraints on the 99.9th percentile of the distribution Assumptions Trusted environment and machines without security concerns Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 6 / 14
  • 7. Problems, Techniques and Advantages Problems Partitioning High write availability Temporary failures Permanent failures Membership Farley Lai (UIOWA) Techniques Advantages Consistent Hashing Vector clocks with conlict resolution Sloppy Quorum, hinted handoff Incremental Scalability Version size is decoupled from update rates High availability and durability guarantee despite some unavailable replicas Fast replica synchronization decentralized registry for storing membership and liveness info Merkle trees Gossip protocol Amazon Dynamo (Big Data) February 21, 2014 7 / 14
  • 8. Partitioning Consistent hashing 1 key space 2 tokens assignment 3 replication 4 load distribution 5 node availability 6 node capacity Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 8 / 14
  • 9. Data Versioning Operations 1 read()⇒get() 2 write()⇒put() 3 conflict resolution 4 vector clock Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 9 / 14
  • 10. Sloppy Quorum 1 R(2) + W (2) > N(3) 2 latency Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 10 / 14
  • 11. Replica Synchronization Figure : Merkle hash tree1 Farley Lai (UIOWA) Figure : Merkle hash tree2 Amazon Dynamo (Big Data) February 21, 2014 11 / 14
  • 12. Evaluation: latency Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 12 / 14
  • 13. Evaluation: load balance Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 13 / 14
  • 14. Evaluation: write buffer Farley Lai (UIOWA) Amazon Dynamo (Big Data) February 21, 2014 14 / 14