SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
DAX: A Widely Distributed Multi-tenant
Storage Service for DBMS Hosting
Rui Liu, Ashraf Aboulnaga, Kenneth Salem
University of Waterloo
RDBMS in the Cloud
● Many cloud/non-cloud applications use
relational DBMS
○ easy-to-use
○ robust apps
○ good performance
○ possibility of scale-out (e.g., by sharding)
DBMS Setting in Cloud
Storage service
DB Log
DBMS
● Data and log are stored in network accessible
storage
● On failure, a new DBMS is launched
DBMS Setting in Cloud
Storage service
DB Log
DBMS
● Data and log are stored in network accessible
storage
● On failure, a new DBMS is launched
DBMS Setting in Cloud
Storage service
DB Log
DBMS DBMS
● Data and log are stored in network accessible
storage
● On failure, a new DBMS is launched
Data Center
Disaster Tolerance
● Current solutions: log shipping, storage
mirror or backup
○ Complex
○ Slow (synchronous)
○ Or, lost data (asynchronous)
Storage service
DB Log
DBMS
Data Center
Storage service
DB Log
DBMSLog Shipping
Mirror/Backup
OR
Our Solution
Disaster tolerant storage for DBMS Hosting
DBMS DBMS
App AppApp App
Data Center
Storage service
DBMS DBMS
App AppApp App
Data Center
Storage service
DAX
Distributed Application-controlled
Consistent Store
● Block I/O interface to DBMS
● Quorum-based, multi-
master replication
● distributed, replicated “key-
value store”
○ block ID ⇒ key
○ block contents ⇒ value
DAX client library
DBMS
DAX
Baseline: Quorum Reads and Writes
● Block replication: N times across DAX
servers
○ servers and copies cover all data center
● Reads and writes
○ Read: request N copies, return after 1 ≤ R ≤ N
○ Write: request N copies, return after 1 ≤ W ≤ N
● R = W = N/2 +1
○ replicas distributed across data centers
○ write quorum includes at least one remote replica
Local Read and Write Latencies
●N = 3, in a single data center
●Consistency penalty: waiting for more replicas is
slower
Wide-Area Read and Write Latencies
●N = 3, copies in Oregon and Virginia
●Much larger consistency penalty!
Goal of DAX
● Achieve the performance of R=1/W=1 while
maintaining consistency, durability, and
availability
Contributions
● Performance optimization
○ Optimistic I/O - reduce read latency
○ Client-managed durability - hide write latency
● Novel consistency guarantee
Optimistic I/O
● Key observation
With R=W=1, most reads do not return stale data
○ Single writer
○ DBMS buffer pool
○ Parallel writes
○ Network topology
● Solution
R=W=1, detect stale data, recover from it
○ record data block version numbers; check against
record when reading
Client-Managed Durability
● Key observations
○ Transaction semantics dictate when writes
must be safe (Durable) and when the DBMS
can tolerate unsafe writes
○ Database systems explicitly enforce data
durability at necessary points
■ Durable means “replicated W times”
Client-Managed Durability
● DAX has two kinds of writes
○ Data write, without durability guarantee
○ Synchronized write that ensures durability of previous
writes
● DBMS issues the synchronized write only
when its transaction protocols demand it
● Time between data write and synchronized
write enables latency hiding
Consistency in DAX
● Key idea: make DAX look like an
unreplicated storage system with explicit
synchronization points for updates
○ DAX’s clients (DBMS) are designed to work with this
model
● Two guarantees:
○ DBMS sees the latest version as long as it is up
○ Exactly one version survives a database failure; it is
the latest synchronized version, or later
Consistency Example
●Which write should each read see?
●R1 must see W3
●R2 can see W1, W2, or W3
●R3 must see the version seen by R2
Experiment Configurations
●9 DAX servers
●6 replicas distributed in
1 EC2 region
(1 zone)
3 EC2 regions
r1 r2 r3 r4 r5
DBMS
r6
DBMS
Virginia California Oregon
r1 r2 r3 r4 r5 r6
Throughput with DAX
MySQL and DAX in Amazon EC2
TPC-C Workload - 9 DAX Nodes
Summary
● DAX: disaster-tolerant storage for DBMS
hosting
○ Scalable in storage capacity, bandwidth and the
number of database tenants
● Data replication across data centers
● Optimistic I/O and client-managed durability
to reduce request latencies
● DBMS-appropriate consistency guarantee,
even across failures

Weitere ähnliche Inhalte

Was ist angesagt?

How Incremental Compaction Reduces Your Storage Footprint
How Incremental Compaction Reduces Your Storage FootprintHow Incremental Compaction Reduces Your Storage Footprint
How Incremental Compaction Reduces Your Storage FootprintScyllaDB
 
Gluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster.org
 
System Design & Scalability
System Design & ScalabilitySystem Design & Scalability
System Design & ScalabilityJohn DiFini
 
Replication and rebuild in cStor
Replication and rebuild in cStorReplication and rebuild in cStor
Replication and rebuild in cStorOpenEBS
 
Redis Conf 2019--Container Attached Storage for Redis
Redis Conf 2019--Container Attached Storage for RedisRedis Conf 2019--Container Attached Storage for Redis
Redis Conf 2019--Container Attached Storage for RedisOpenEBS
 
Avoiding Data Hotspots at Scale
Avoiding Data Hotspots at ScaleAvoiding Data Hotspots at Scale
Avoiding Data Hotspots at ScaleScyllaDB
 
Erasure codes and storage tiers on gluster
Erasure codes and storage tiers on glusterErasure codes and storage tiers on gluster
Erasure codes and storage tiers on glusterRed_Hat_Storage
 
Elasticsearch avoiding hotspots
Elasticsearch  avoiding hotspotsElasticsearch  avoiding hotspots
Elasticsearch avoiding hotspotsChristophe Marchal
 
Caffe + H2O - By Cyprien noel
Caffe + H2O - By Cyprien noelCaffe + H2O - By Cyprien noel
Caffe + H2O - By Cyprien noelSri Ambati
 
Redis as a Main Database, Scaling and HA
Redis as a Main Database, Scaling and HARedis as a Main Database, Scaling and HA
Redis as a Main Database, Scaling and HADave Nielsen
 
Dustin Black - Red Hat Storage Server Administration Deep Dive
Dustin Black - Red Hat Storage Server Administration Deep DiveDustin Black - Red Hat Storage Server Administration Deep Dive
Dustin Black - Red Hat Storage Server Administration Deep DiveGluster.org
 
Lisa 2015-gluster fs-introduction
Lisa 2015-gluster fs-introductionLisa 2015-gluster fs-introduction
Lisa 2015-gluster fs-introductionGluster.org
 
Data Management in Cloud Platforms
Data Management in Cloud PlatformsData Management in Cloud Platforms
Data Management in Cloud Platformsshnkoc
 
State of the_gluster_-_lceu
State of the_gluster_-_lceuState of the_gluster_-_lceu
State of the_gluster_-_lceuGluster.org
 
Dynamo db and Cross Region Migration
Dynamo db and Cross Region MigrationDynamo db and Cross Region Migration
Dynamo db and Cross Region MigrationAnamika Gupta
 
How to Meet Your P99 Goal While Overcommitting Another Workload
How to Meet Your P99 Goal While Overcommitting Another WorkloadHow to Meet Your P99 Goal While Overcommitting Another Workload
How to Meet Your P99 Goal While Overcommitting Another WorkloadScyllaDB
 

Was ist angesagt? (20)

How Incremental Compaction Reduces Your Storage Footprint
How Incremental Compaction Reduces Your Storage FootprintHow Incremental Compaction Reduces Your Storage Footprint
How Incremental Compaction Reduces Your Storage Footprint
 
Gluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephant
 
System Design & Scalability
System Design & ScalabilitySystem Design & Scalability
System Design & Scalability
 
Replication and rebuild in cStor
Replication and rebuild in cStorReplication and rebuild in cStor
Replication and rebuild in cStor
 
Redis Conf 2019--Container Attached Storage for Redis
Redis Conf 2019--Container Attached Storage for RedisRedis Conf 2019--Container Attached Storage for Redis
Redis Conf 2019--Container Attached Storage for Redis
 
Avoiding Data Hotspots at Scale
Avoiding Data Hotspots at ScaleAvoiding Data Hotspots at Scale
Avoiding Data Hotspots at Scale
 
Dedupe nmamit
Dedupe nmamitDedupe nmamit
Dedupe nmamit
 
Erasure codes and storage tiers on gluster
Erasure codes and storage tiers on glusterErasure codes and storage tiers on gluster
Erasure codes and storage tiers on gluster
 
Elasticsearch avoiding hotspots
Elasticsearch  avoiding hotspotsElasticsearch  avoiding hotspots
Elasticsearch avoiding hotspots
 
Caffe + H2O - By Cyprien noel
Caffe + H2O - By Cyprien noelCaffe + H2O - By Cyprien noel
Caffe + H2O - By Cyprien noel
 
Redis as a Main Database, Scaling and HA
Redis as a Main Database, Scaling and HARedis as a Main Database, Scaling and HA
Redis as a Main Database, Scaling and HA
 
Redis Beyond
Redis BeyondRedis Beyond
Redis Beyond
 
Dustin Black - Red Hat Storage Server Administration Deep Dive
Dustin Black - Red Hat Storage Server Administration Deep DiveDustin Black - Red Hat Storage Server Administration Deep Dive
Dustin Black - Red Hat Storage Server Administration Deep Dive
 
Lisa 2015-gluster fs-introduction
Lisa 2015-gluster fs-introductionLisa 2015-gluster fs-introduction
Lisa 2015-gluster fs-introduction
 
Data Management in Cloud Platforms
Data Management in Cloud PlatformsData Management in Cloud Platforms
Data Management in Cloud Platforms
 
YDAL Barcelona
YDAL BarcelonaYDAL Barcelona
YDAL Barcelona
 
State of the_gluster_-_lceu
State of the_gluster_-_lceuState of the_gluster_-_lceu
State of the_gluster_-_lceu
 
Dynamo db and Cross Region Migration
Dynamo db and Cross Region MigrationDynamo db and Cross Region Migration
Dynamo db and Cross Region Migration
 
How to Meet Your P99 Goal While Overcommitting Another Workload
How to Meet Your P99 Goal While Overcommitting Another WorkloadHow to Meet Your P99 Goal While Overcommitting Another Workload
How to Meet Your P99 Goal While Overcommitting Another Workload
 
Introduce to spark
Introduce to sparkIntroduce to spark
Introduce to spark
 

Ähnlich wie DAX: A Widely Distributed Multi-tenant Storage Service for DBMS Hosting

Hadoop 3 @ Hadoop Summit San Jose 2017
Hadoop 3 @ Hadoop Summit San Jose 2017Hadoop 3 @ Hadoop Summit San Jose 2017
Hadoop 3 @ Hadoop Summit San Jose 2017Junping Du
 
Apache Hadoop 3.0 Community Update
Apache Hadoop 3.0 Community UpdateApache Hadoop 3.0 Community Update
Apache Hadoop 3.0 Community UpdateDataWorks Summit
 
Challenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightChallenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightGluster.org
 
Scalability broad strokes
Scalability   broad strokesScalability   broad strokes
Scalability broad strokesGagan Bajpai
 
Ceph data services in a multi- and hybrid cloud world
Ceph data services in a multi- and hybrid cloud worldCeph data services in a multi- and hybrid cloud world
Ceph data services in a multi- and hybrid cloud worldSage Weil
 
Initial presentation of swift (for montreal user group)
Initial presentation of swift (for montreal user group)Initial presentation of swift (for montreal user group)
Initial presentation of swift (for montreal user group)Marcos García
 
Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...
Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...
Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...Redis Labs
 
Cloud storage: the right way OSS EU 2018
Cloud storage: the right way OSS EU 2018Cloud storage: the right way OSS EU 2018
Cloud storage: the right way OSS EU 2018Orit Wasserman
 
Webinar: NAS Refresh? – 5 Reasons to Consider the Cloud
Webinar: NAS Refresh? – 5 Reasons to Consider the CloudWebinar: NAS Refresh? – 5 Reasons to Consider the Cloud
Webinar: NAS Refresh? – 5 Reasons to Consider the CloudStorage Switzerland
 
Building zero data loss pipelines with apache kafka
Building zero data loss pipelines with apache kafkaBuilding zero data loss pipelines with apache kafka
Building zero data loss pipelines with apache kafkaAvinash Ramineni
 
Netflix Open Source Meetup Season 4 Episode 2
Netflix Open Source Meetup Season 4 Episode 2Netflix Open Source Meetup Season 4 Episode 2
Netflix Open Source Meetup Season 4 Episode 2aspyker
 
An Introduction to Apache Cassandra
An Introduction to Apache CassandraAn Introduction to Apache Cassandra
An Introduction to Apache CassandraSaeid Zebardast
 
Gluster dev session #6 understanding gluster's network communication layer
Gluster dev session #6  understanding gluster's network   communication layerGluster dev session #6  understanding gluster's network   communication layer
Gluster dev session #6 understanding gluster's network communication layerPranith Karampuri
 
Cloud Architecture best practices
Cloud Architecture best practicesCloud Architecture best practices
Cloud Architecture best practicesOmid Vahdaty
 
Simplifying Disaster Recovery with Delta Lake
Simplifying Disaster Recovery with Delta LakeSimplifying Disaster Recovery with Delta Lake
Simplifying Disaster Recovery with Delta LakeDatabricks
 
Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)
Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)
Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)Rick Hwang
 
Data Scotland 2019: You can run SQL Server on AWS
Data Scotland 2019: You can run SQL Server on AWSData Scotland 2019: You can run SQL Server on AWS
Data Scotland 2019: You can run SQL Server on AWSJohn McCormack
 

Ähnlich wie DAX: A Widely Distributed Multi-tenant Storage Service for DBMS Hosting (20)

Hadoop 3 @ Hadoop Summit San Jose 2017
Hadoop 3 @ Hadoop Summit San Jose 2017Hadoop 3 @ Hadoop Summit San Jose 2017
Hadoop 3 @ Hadoop Summit San Jose 2017
 
Apache Hadoop 3.0 Community Update
Apache Hadoop 3.0 Community UpdateApache Hadoop 3.0 Community Update
Apache Hadoop 3.0 Community Update
 
Challenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightChallenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan Lambright
 
Scalability broad strokes
Scalability   broad strokesScalability   broad strokes
Scalability broad strokes
 
Ceph data services in a multi- and hybrid cloud world
Ceph data services in a multi- and hybrid cloud worldCeph data services in a multi- and hybrid cloud world
Ceph data services in a multi- and hybrid cloud world
 
Initial presentation of swift (for montreal user group)
Initial presentation of swift (for montreal user group)Initial presentation of swift (for montreal user group)
Initial presentation of swift (for montreal user group)
 
Dynomite @ Redis Conference 2016
Dynomite @ Redis Conference 2016Dynomite @ Redis Conference 2016
Dynomite @ Redis Conference 2016
 
Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...
Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...
Dynomite: A Highly Available, Distributed and Scalable Dynamo Layer--Ioannis ...
 
Cloud storage: the right way OSS EU 2018
Cloud storage: the right way OSS EU 2018Cloud storage: the right way OSS EU 2018
Cloud storage: the right way OSS EU 2018
 
Webinar: NAS Refresh? – 5 Reasons to Consider the Cloud
Webinar: NAS Refresh? – 5 Reasons to Consider the CloudWebinar: NAS Refresh? – 5 Reasons to Consider the Cloud
Webinar: NAS Refresh? – 5 Reasons to Consider the Cloud
 
Building zero data loss pipelines with apache kafka
Building zero data loss pipelines with apache kafkaBuilding zero data loss pipelines with apache kafka
Building zero data loss pipelines with apache kafka
 
Netflix Open Source Meetup Season 4 Episode 2
Netflix Open Source Meetup Season 4 Episode 2Netflix Open Source Meetup Season 4 Episode 2
Netflix Open Source Meetup Season 4 Episode 2
 
An Introduction to Apache Cassandra
An Introduction to Apache CassandraAn Introduction to Apache Cassandra
An Introduction to Apache Cassandra
 
SNIA SDC 2016 final
SNIA SDC 2016 finalSNIA SDC 2016 final
SNIA SDC 2016 final
 
Gluster dev session #6 understanding gluster's network communication layer
Gluster dev session #6  understanding gluster's network   communication layerGluster dev session #6  understanding gluster's network   communication layer
Gluster dev session #6 understanding gluster's network communication layer
 
Cloud Architecture best practices
Cloud Architecture best practicesCloud Architecture best practices
Cloud Architecture best practices
 
Simplifying Disaster Recovery with Delta Lake
Simplifying Disaster Recovery with Delta LakeSimplifying Disaster Recovery with Delta Lake
Simplifying Disaster Recovery with Delta Lake
 
Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)
Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)
Study Notes - Architecting for the cloud (AWS Best Practices, Feb 2016)
 
Running MySQL in AWS
Running MySQL in AWSRunning MySQL in AWS
Running MySQL in AWS
 
Data Scotland 2019: You can run SQL Server on AWS
Data Scotland 2019: You can run SQL Server on AWSData Scotland 2019: You can run SQL Server on AWS
Data Scotland 2019: You can run SQL Server on AWS
 

Kürzlich hochgeladen

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 

Kürzlich hochgeladen (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

DAX: A Widely Distributed Multi-tenant Storage Service for DBMS Hosting

  • 1. DAX: A Widely Distributed Multi-tenant Storage Service for DBMS Hosting Rui Liu, Ashraf Aboulnaga, Kenneth Salem University of Waterloo
  • 2. RDBMS in the Cloud ● Many cloud/non-cloud applications use relational DBMS ○ easy-to-use ○ robust apps ○ good performance ○ possibility of scale-out (e.g., by sharding)
  • 3. DBMS Setting in Cloud Storage service DB Log DBMS ● Data and log are stored in network accessible storage ● On failure, a new DBMS is launched
  • 4. DBMS Setting in Cloud Storage service DB Log DBMS ● Data and log are stored in network accessible storage ● On failure, a new DBMS is launched
  • 5. DBMS Setting in Cloud Storage service DB Log DBMS DBMS ● Data and log are stored in network accessible storage ● On failure, a new DBMS is launched
  • 6. Data Center Disaster Tolerance ● Current solutions: log shipping, storage mirror or backup ○ Complex ○ Slow (synchronous) ○ Or, lost data (asynchronous) Storage service DB Log DBMS Data Center Storage service DB Log DBMSLog Shipping Mirror/Backup OR
  • 7. Our Solution Disaster tolerant storage for DBMS Hosting DBMS DBMS App AppApp App Data Center Storage service DBMS DBMS App AppApp App Data Center Storage service
  • 8. DAX Distributed Application-controlled Consistent Store ● Block I/O interface to DBMS ● Quorum-based, multi- master replication ● distributed, replicated “key- value store” ○ block ID ⇒ key ○ block contents ⇒ value DAX client library DBMS DAX
  • 9. Baseline: Quorum Reads and Writes ● Block replication: N times across DAX servers ○ servers and copies cover all data center ● Reads and writes ○ Read: request N copies, return after 1 ≤ R ≤ N ○ Write: request N copies, return after 1 ≤ W ≤ N ● R = W = N/2 +1 ○ replicas distributed across data centers ○ write quorum includes at least one remote replica
  • 10. Local Read and Write Latencies ●N = 3, in a single data center ●Consistency penalty: waiting for more replicas is slower
  • 11. Wide-Area Read and Write Latencies ●N = 3, copies in Oregon and Virginia ●Much larger consistency penalty!
  • 12. Goal of DAX ● Achieve the performance of R=1/W=1 while maintaining consistency, durability, and availability Contributions ● Performance optimization ○ Optimistic I/O - reduce read latency ○ Client-managed durability - hide write latency ● Novel consistency guarantee
  • 13. Optimistic I/O ● Key observation With R=W=1, most reads do not return stale data ○ Single writer ○ DBMS buffer pool ○ Parallel writes ○ Network topology ● Solution R=W=1, detect stale data, recover from it ○ record data block version numbers; check against record when reading
  • 14. Client-Managed Durability ● Key observations ○ Transaction semantics dictate when writes must be safe (Durable) and when the DBMS can tolerate unsafe writes ○ Database systems explicitly enforce data durability at necessary points ■ Durable means “replicated W times”
  • 15. Client-Managed Durability ● DAX has two kinds of writes ○ Data write, without durability guarantee ○ Synchronized write that ensures durability of previous writes ● DBMS issues the synchronized write only when its transaction protocols demand it ● Time between data write and synchronized write enables latency hiding
  • 16. Consistency in DAX ● Key idea: make DAX look like an unreplicated storage system with explicit synchronization points for updates ○ DAX’s clients (DBMS) are designed to work with this model ● Two guarantees: ○ DBMS sees the latest version as long as it is up ○ Exactly one version survives a database failure; it is the latest synchronized version, or later
  • 17. Consistency Example ●Which write should each read see? ●R1 must see W3 ●R2 can see W1, W2, or W3 ●R3 must see the version seen by R2
  • 18. Experiment Configurations ●9 DAX servers ●6 replicas distributed in 1 EC2 region (1 zone) 3 EC2 regions r1 r2 r3 r4 r5 DBMS r6 DBMS Virginia California Oregon r1 r2 r3 r4 r5 r6
  • 19. Throughput with DAX MySQL and DAX in Amazon EC2 TPC-C Workload - 9 DAX Nodes
  • 20. Summary ● DAX: disaster-tolerant storage for DBMS hosting ○ Scalable in storage capacity, bandwidth and the number of database tenants ● Data replication across data centers ● Optimistic I/O and client-managed durability to reduce request latencies ● DBMS-appropriate consistency guarantee, even across failures