SlideShare a Scribd company logo
1 of 1
Download to read offline
Beyond reCAP: Local Reads and Linearizable Asynchronous Replication
A. Katsarakis*†, E. Gioratmis*♣, V. Gavrielatos†, P. Bhatotia♣, A. Dragojevic♦, B. Grot♠, V. Nagarajan♠, P . Fatourou♥
† Huawei Research, ♣TU Munich, ♦Citadel Securities, ♠University of Edinburgh, ♥University of Crete and FORTH, *Equal contribution
Theory
Crash-tolerant protocols: 2 out of 3
RC protocols:
- Relaxed Consistency
+ Asynchronous + Local reads
LS protocols:
- Synchronous
+ Linearizable
+ Local reads
RA protocols:
- Remote (costly) reads
+ Linearizable
+ Asynchronous
The L2AW theorem
Any Linearizable Asynchronous read/write register implementation that
tolerates a crash (Without blocking reads or writes), has no Local reads.
So can we not improve read performance without compromizes?
L2AW vs. CAP
Both Linearizability & Asynchrony
L2AW read performance in its tradeoff
Key for read-dominant workloads
Fault-tolerance
CAP: network partitions
+ msg loss + partitioned nodes
exec ops to violate safety
L2AW: server crashes
+ no msg loss + crashed nodes
do not exec ops to violate safety
When must compromise?
CAP: during network partitions
(not during partition-free)
sacrifice safety or progress of ops
L2AW: always sacrifice local reads
(even if crashes have not occurred)
Practice
Add missing piece to protocols
of all 3 (RC, LS, RA) categories
RC with ALRs → Linearizable
LS with ALRs → Asynchronous
RA with ALRs → Performant
ALR-enhanced throughput
of state-of-the-art protocols
+ 2x perf
+ Linearizable
+ Asynchronous
Almost Local Reads (ALRs)
Inevitably ALR latency > local reads
But little or no extra network and
processing costs to remote replicas
ALRs batch reads with a twist
Exec all reads in batch w/ local replica
+ one sync per batch on remote nodes
Syncs are cheap!
•writes act as implicit zero-cost syncs
•explicit sync has small constant cost
•1 sync per batch regardless its size
Motivation
Fault-tolerant Replicated Datastores
• Crash-tolerance: data are replicated
• High performance: especially for reads
• Strong consistency under asynchrony
→ correct — even if timeouts do not hold
Crash-tolerant Replication Protocols
determine actions for reads and writes
Ideal features
1. Linearizable
2. Asynchronous
3. Local reads: for max perf.
Online Services & Cloud Applications
Characterized by
• Many concurrent requests
• Read intensive workloads
• Need for data reliability
→ run on fault-prone h/w
†This work occurred when the authors were at the University of Edinburgh.

More Related Content

Similar to The L2AW theorem

Name Based Net Architectures
Name Based Net ArchitecturesName Based Net Architectures
Name Based Net Architectures
webhostingguy
 
Name Based Net Architectures
Name Based Net ArchitecturesName Based Net Architectures
Name Based Net Architectures
webhostingguy
 

Similar to The L2AW theorem (20)

ROUTING PROTOCOLS new.pptx
ROUTING PROTOCOLS new.pptxROUTING PROTOCOLS new.pptx
ROUTING PROTOCOLS new.pptx
 
LPWAN.pdf
LPWAN.pdfLPWAN.pdf
LPWAN.pdf
 
How Optimizely (Safely) Maximizes Database Concurrency.pdf
How Optimizely (Safely) Maximizes Database Concurrency.pdfHow Optimizely (Safely) Maximizes Database Concurrency.pdf
How Optimizely (Safely) Maximizes Database Concurrency.pdf
 
Excitingly simple multi-path OpenStack networking: LAG-less, L2-less, yet ful...
Excitingly simple multi-path OpenStack networking: LAG-less, L2-less, yet ful...Excitingly simple multi-path OpenStack networking: LAG-less, L2-less, yet ful...
Excitingly simple multi-path OpenStack networking: LAG-less, L2-less, yet ful...
 
Bathcamp 2010-riak
Bathcamp 2010-riakBathcamp 2010-riak
Bathcamp 2010-riak
 
Webinar Slides: Tungsten Connector / Proxy – The Secret Sauce Behind Zero-Dow...
Webinar Slides: Tungsten Connector / Proxy – The Secret Sauce Behind Zero-Dow...Webinar Slides: Tungsten Connector / Proxy – The Secret Sauce Behind Zero-Dow...
Webinar Slides: Tungsten Connector / Proxy – The Secret Sauce Behind Zero-Dow...
 
Cross Data Center Replication with Redis using Redis Enterprise
Cross Data Center Replication with Redis using Redis EnterpriseCross Data Center Replication with Redis using Redis Enterprise
Cross Data Center Replication with Redis using Redis Enterprise
 
Dynamic Routing All Algorithms, Working And Basics
Dynamic Routing All Algorithms, Working And BasicsDynamic Routing All Algorithms, Working And Basics
Dynamic Routing All Algorithms, Working And Basics
 
Routing In Fat Trees
Routing In Fat TreesRouting In Fat Trees
Routing In Fat Trees
 
Aurora_session.pdf
Aurora_session.pdfAurora_session.pdf
Aurora_session.pdf
 
Physical organization of parallel platforms
Physical organization of parallel platformsPhysical organization of parallel platforms
Physical organization of parallel platforms
 
Disaggregated Networking - The Drivers, the Software & The High Availability
Disaggregated Networking - The Drivers, the Software & The High AvailabilityDisaggregated Networking - The Drivers, the Software & The High Availability
Disaggregated Networking - The Drivers, the Software & The High Availability
 
What is 3d torus
What is 3d torusWhat is 3d torus
What is 3d torus
 
Lecture summary: architectures for baseband signal processing of wireless com...
Lecture summary: architectures for baseband signal processing of wireless com...Lecture summary: architectures for baseband signal processing of wireless com...
Lecture summary: architectures for baseband signal processing of wireless com...
 
OLSRVSBABEL.docx
OLSRVSBABEL.docxOLSRVSBABEL.docx
OLSRVSBABEL.docx
 
Surviving KubeDoom - Even demons can't kill an intrusion of CockroachDB!
Surviving KubeDoom - Even demons can't kill an intrusion of CockroachDB!Surviving KubeDoom - Even demons can't kill an intrusion of CockroachDB!
Surviving KubeDoom - Even demons can't kill an intrusion of CockroachDB!
 
Presentation8
Presentation8Presentation8
Presentation8
 
Link_NwkingforDevOps
Link_NwkingforDevOpsLink_NwkingforDevOps
Link_NwkingforDevOps
 
Name Based Net Architectures
Name Based Net ArchitecturesName Based Net Architectures
Name Based Net Architectures
 
Name Based Net Architectures
Name Based Net ArchitecturesName Based Net Architectures
Name Based Net Architectures
 

Recently uploaded

JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
Max Lee
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
mbmh111980
 

Recently uploaded (20)

StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdfStrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
 
Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024
 
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
 
IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand
 
SQL Injection Introduction and Prevention
SQL Injection Introduction and PreventionSQL Injection Introduction and Prevention
SQL Injection Introduction and Prevention
 
10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
 
AI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in Michelangelo
 
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
 
What need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java DevelopersWhat need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java Developers
 
Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024
 
architecting-ai-in-the-enterprise-apis-and-applications.pdf
architecting-ai-in-the-enterprise-apis-and-applications.pdfarchitecting-ai-in-the-enterprise-apis-and-applications.pdf
architecting-ai-in-the-enterprise-apis-and-applications.pdf
 

The L2AW theorem

  • 1. Beyond reCAP: Local Reads and Linearizable Asynchronous Replication A. Katsarakis*†, E. Gioratmis*♣, V. Gavrielatos†, P. Bhatotia♣, A. Dragojevic♦, B. Grot♠, V. Nagarajan♠, P . Fatourou♥ † Huawei Research, ♣TU Munich, ♦Citadel Securities, ♠University of Edinburgh, ♥University of Crete and FORTH, *Equal contribution Theory Crash-tolerant protocols: 2 out of 3 RC protocols: - Relaxed Consistency + Asynchronous + Local reads LS protocols: - Synchronous + Linearizable + Local reads RA protocols: - Remote (costly) reads + Linearizable + Asynchronous The L2AW theorem Any Linearizable Asynchronous read/write register implementation that tolerates a crash (Without blocking reads or writes), has no Local reads. So can we not improve read performance without compromizes? L2AW vs. CAP Both Linearizability & Asynchrony L2AW read performance in its tradeoff Key for read-dominant workloads Fault-tolerance CAP: network partitions + msg loss + partitioned nodes exec ops to violate safety L2AW: server crashes + no msg loss + crashed nodes do not exec ops to violate safety When must compromise? CAP: during network partitions (not during partition-free) sacrifice safety or progress of ops L2AW: always sacrifice local reads (even if crashes have not occurred) Practice Add missing piece to protocols of all 3 (RC, LS, RA) categories RC with ALRs → Linearizable LS with ALRs → Asynchronous RA with ALRs → Performant ALR-enhanced throughput of state-of-the-art protocols + 2x perf + Linearizable + Asynchronous Almost Local Reads (ALRs) Inevitably ALR latency > local reads But little or no extra network and processing costs to remote replicas ALRs batch reads with a twist Exec all reads in batch w/ local replica + one sync per batch on remote nodes Syncs are cheap! •writes act as implicit zero-cost syncs •explicit sync has small constant cost •1 sync per batch regardless its size Motivation Fault-tolerant Replicated Datastores • Crash-tolerance: data are replicated • High performance: especially for reads • Strong consistency under asynchrony → correct — even if timeouts do not hold Crash-tolerant Replication Protocols determine actions for reads and writes Ideal features 1. Linearizable 2. Asynchronous 3. Local reads: for max perf. Online Services & Cloud Applications Characterized by • Many concurrent requests • Read intensive workloads • Need for data reliability → run on fault-prone h/w †This work occurred when the authors were at the University of Edinburgh.