SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
Latency and Consistency
Tradeoffs in Modern
Distributed Databases
Dr Daniel Abadi
Agenda ■ The PACELC Theorem
■ ScyllaDB Cloud in Context
• Benchmarking PACELC
• Benchmark Set Up & Results
■ About ScyllaDB Cloud
■ Questions
2
3
Dr. Daniel Abadi
Daniel Abadi is the Darnell-Kanal Professor of Computer
Science at University of Maryland, College Park and was
named an ACM Fellow in 2020. His primary area of
research is database systems, and his publications have
been cited more than 23,000 times. He is known for his
contributions to distributed databases, column-store
databases, deterministic databases, graph databases, and
stream databases.
Every modern data store replicates data for
performance and availability.
DB 1 DB 2
network
What should we do if replicas can’t
communicate with each other?
DB 1 DB 2
network
partition
CAP Theorem says tradeoff:
Consistency vs. Availability
DB 1 DB 2
network
partition
CAP Theorem says tradeoff:
Consistency vs. Availability
DB 1 DB 2
network
partition
According to the CAP theorem every system
would be both consistent and available at all
times except during a network partition.
CAP theorem misses the point for global apps
Having siloed / localized version of
applications no longer acceptable
No replication 🡪 bad latency and availability
Write Read
Write
Read
10ms
400 ms
Synchronous replication hurts latency
Write
Read
400ms
Write
Read
Replication / consensus
400ms
10ms 10ms
We get consistency, at expense of latency
(e.g. Spanner, CockroachDB)
Alternative: Give each item a primary location,
consistent reads/writes directed there
Write Read
10ms
Write Read
10ms
e.g. CockroachDB (with its geo-partitioning
feature), SLOG, PNUTS
Read
Write
Write
Read
400 ms
400 ms
Asynchronous replication hurts consistency
Write Read
10ms
Write Read
10ms
Asynchronously replicate writes
We get latency, at expense of consistency
PACELC
• In the case of a partition (P), does the system choose availability (A) or consistency (C)?
• Else (E), does the system choose latency (L) or consistency (C)?
• PA/EL
• Systems that replicate asynchronously (e.g. Dynamo, Cassandra, COPS, Jessy, Walter, Scylla, …)
• PC/EC
• Partitioned systems and systems that replicate synchronously (e.g., Spanner, CockroachDB, Calvin, SLOG, …)
• PA/EC
• Systems that replicate synchronously except during a partition
• PC/EL: No good reason to exist
14
CockroachDB: PC/EC
Goal: Consistency
+ CockroachDB provides near strong-1SR consistency
(Jepsen)
+ Support ACID transactions
+ Provides high availability the same way ScyllaDB
does — with redundancy
+ Maintains consistency across replicas while serving
concurrent operations
+ Hybrid transaction scheduler makes reads
linearization cost-free
+ Written in Go--susceptible to garbage collection
spikes
Comparing Consistency and Latency
15
ScyllaDB: PA/EL
Goal: Availability and low latency
+ Async computing model
+ Supports a million lambda functions (“continuations”)
per second, per core
+ Offers an API for stronger consistency that leverages
lightweight transactions (LWT).*
+ From an ACID perspective, does not provide isolation
+ Written in C++, no garbage collection
*Scylla 5 will introduce Raft support, which will provide a
stronger type of consistency that is sometimes referred to as
“immediate consistency”.
Benchmark Configuration
16
Quantifying the Latency Trade-off
17
PC/EC
PA/EL
Complete Benchmark
Results
https://www.scylladb.com/product/benchmarks/
18
The industry’s fastest, safest, and most scalable distributed database
ScyllaDB Cloud
19
+ Built in C++ for low-level control
+ Fully asynchronous runtime
+ Millions of OPS per node
+ p99 latency less than 1ms
+ AWS and Google Cloud: Wide range of instance types
+ Isolated, dedicated instances for performance and security
+ Fully managed, even in your own AWS account
P99Conf: Oct 19-20
20
United States
2445 Faber St, Suite #200
Palo Alto, CA USA 94303
Israel
Maskit 4
Herzliya, Israel 4673304
www.scylladb.com
@scylladb
Questions and Answers

Contenu connexe

Tendances

Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...
Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...
Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...
Simplilearn
 
Intro to Big Data and NoSQL
Intro to Big Data and NoSQLIntro to Big Data and NoSQL
Intro to Big Data and NoSQL
Don Demcsak
 
The Hadoop Ecosystem
The Hadoop EcosystemThe Hadoop Ecosystem
The Hadoop Ecosystem
J Singh
 

Tendances (20)

On-boarding with JanusGraph Performance
On-boarding with JanusGraph PerformanceOn-boarding with JanusGraph Performance
On-boarding with JanusGraph Performance
 
Apache Spark Architecture
Apache Spark ArchitectureApache Spark Architecture
Apache Spark Architecture
 
Apache spark
Apache sparkApache spark
Apache spark
 
Apache Spark Introduction and Resilient Distributed Dataset basics and deep dive
Apache Spark Introduction and Resilient Distributed Dataset basics and deep diveApache Spark Introduction and Resilient Distributed Dataset basics and deep dive
Apache Spark Introduction and Resilient Distributed Dataset basics and deep dive
 
Key-Value NoSQL Database
Key-Value NoSQL DatabaseKey-Value NoSQL Database
Key-Value NoSQL Database
 
Hadoop Map Reduce
Hadoop Map ReduceHadoop Map Reduce
Hadoop Map Reduce
 
Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component
 
Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...
Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...
Pig Tutorial | Apache Pig Tutorial | What Is Pig In Hadoop? | Apache Pig Arch...
 
Intro to Big Data and NoSQL
Intro to Big Data and NoSQLIntro to Big Data and NoSQL
Intro to Big Data and NoSQL
 
Dynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and ComparisonDynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and Comparison
 
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLabApache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
 
The Hadoop Ecosystem
The Hadoop EcosystemThe Hadoop Ecosystem
The Hadoop Ecosystem
 
Introduction to apache kafka
Introduction to apache kafkaIntroduction to apache kafka
Introduction to apache kafka
 
Apache Pig: A big data processor
Apache Pig: A big data processorApache Pig: A big data processor
Apache Pig: A big data processor
 
SQL/NoSQL How to choose ?
SQL/NoSQL How to choose ?SQL/NoSQL How to choose ?
SQL/NoSQL How to choose ?
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
 
NoSql
NoSqlNoSql
NoSql
 
Big Data Analytics with Hadoop
Big Data Analytics with HadoopBig Data Analytics with Hadoop
Big Data Analytics with Hadoop
 
Apache Spark Streaming: Architecture and Fault Tolerance
Apache Spark Streaming: Architecture and Fault ToleranceApache Spark Streaming: Architecture and Fault Tolerance
Apache Spark Streaming: Architecture and Fault Tolerance
 
Machine Learning and the Elastic Stack
Machine Learning and the Elastic StackMachine Learning and the Elastic Stack
Machine Learning and the Elastic Stack
 

Similaire à Latency and Consistency Tradeoffs in Modern Distributed Databases

Real-world consistency explained
Real-world consistency explainedReal-world consistency explained
Real-world consistency explained
Uwe Friedrichsen
 
Seminar.2010.NoSql
Seminar.2010.NoSqlSeminar.2010.NoSql
Seminar.2010.NoSql
roialdaag
 
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
Qian Lin
 

Similaire à Latency and Consistency Tradeoffs in Modern Distributed Databases (20)

Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
 
Cassandra Consistency: Tradeoffs and Limitations
Cassandra Consistency: Tradeoffs and LimitationsCassandra Consistency: Tradeoffs and Limitations
Cassandra Consistency: Tradeoffs and Limitations
 
Streaming Analytics with Spark, Kafka, Cassandra and Akka by Helena Edelson
Streaming Analytics with Spark, Kafka, Cassandra and Akka by Helena EdelsonStreaming Analytics with Spark, Kafka, Cassandra and Akka by Helena Edelson
Streaming Analytics with Spark, Kafka, Cassandra and Akka by Helena Edelson
 
Real-world consistency explained
Real-world consistency explainedReal-world consistency explained
Real-world consistency explained
 
Data Engineering for Data Scientists
Data Engineering for Data Scientists Data Engineering for Data Scientists
Data Engineering for Data Scientists
 
No sql databases
No sql databases No sql databases
No sql databases
 
SQL and NoSQL in SQL Server
SQL and NoSQL in SQL ServerSQL and NoSQL in SQL Server
SQL and NoSQL in SQL Server
 
NoSQL_Night
NoSQL_NightNoSQL_Night
NoSQL_Night
 
Streaming Analytics with Spark, Kafka, Cassandra and Akka
Streaming Analytics with Spark, Kafka, Cassandra and AkkaStreaming Analytics with Spark, Kafka, Cassandra and Akka
Streaming Analytics with Spark, Kafka, Cassandra and Akka
 
Seminar.2010.NoSql
Seminar.2010.NoSqlSeminar.2010.NoSql
Seminar.2010.NoSql
 
Cassandra
CassandraCassandra
Cassandra
 
6269441.ppt
6269441.ppt6269441.ppt
6269441.ppt
 
Breakthrough OLAP performance with Cassandra and Spark
Breakthrough OLAP performance with Cassandra and SparkBreakthrough OLAP performance with Cassandra and Spark
Breakthrough OLAP performance with Cassandra and Spark
 
SMACK Stack - Fast Data Done Right by Stefan Siprell at Codemotion Dubai
SMACK Stack - Fast Data Done Right by Stefan Siprell at Codemotion DubaiSMACK Stack - Fast Data Done Right by Stefan Siprell at Codemotion Dubai
SMACK Stack - Fast Data Done Right by Stefan Siprell at Codemotion Dubai
 
Migrating Oracle database to Cassandra
Migrating Oracle database to CassandraMigrating Oracle database to Cassandra
Migrating Oracle database to Cassandra
 
5266732.ppt
5266732.ppt5266732.ppt
5266732.ppt
 
NoSql Database
NoSql DatabaseNoSql Database
NoSql Database
 
No sql
No sqlNo sql
No sql
 
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
 
Kafka Summit SF 2017 - Kafka Connect Best Practices – Advice from the Field
Kafka Summit SF 2017 - Kafka Connect Best Practices – Advice from the FieldKafka Summit SF 2017 - Kafka Connect Best Practices – Advice from the Field
Kafka Summit SF 2017 - Kafka Connect Best Practices – Advice from the Field
 

Plus de ScyllaDB

Plus de ScyllaDB (20)

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What Developers Need to Unlearn for High Performance NoSQL
What Developers Need to Unlearn for High Performance NoSQLWhat Developers Need to Unlearn for High Performance NoSQL
What Developers Need to Unlearn for High Performance NoSQL
 
Low Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsLow Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & Pitfalls
 
Dissecting Real-World Database Performance Dilemmas
Dissecting Real-World Database Performance DilemmasDissecting Real-World Database Performance Dilemmas
Dissecting Real-World Database Performance Dilemmas
 
Beyond Linear Scaling: A New Path for Performance with ScyllaDB
Beyond Linear Scaling: A New Path for Performance with ScyllaDBBeyond Linear Scaling: A New Path for Performance with ScyllaDB
Beyond Linear Scaling: A New Path for Performance with ScyllaDB
 
Dissecting Real-World Database Performance Dilemmas
Dissecting Real-World Database Performance DilemmasDissecting Real-World Database Performance Dilemmas
Dissecting Real-World Database Performance Dilemmas
 
Database Performance at Scale Masterclass: Workload Characteristics by Felipe...
Database Performance at Scale Masterclass: Workload Characteristics by Felipe...Database Performance at Scale Masterclass: Workload Characteristics by Felipe...
Database Performance at Scale Masterclass: Workload Characteristics by Felipe...
 
Database Performance at Scale Masterclass: Database Internals by Pavel Emelya...
Database Performance at Scale Masterclass: Database Internals by Pavel Emelya...Database Performance at Scale Masterclass: Database Internals by Pavel Emelya...
Database Performance at Scale Masterclass: Database Internals by Pavel Emelya...
 
Database Performance at Scale Masterclass: Driver Strategies by Piotr Sarna
Database Performance at Scale Masterclass: Driver Strategies by Piotr SarnaDatabase Performance at Scale Masterclass: Driver Strategies by Piotr Sarna
Database Performance at Scale Masterclass: Driver Strategies by Piotr Sarna
 
Replacing Your Cache with ScyllaDB
Replacing Your Cache with ScyllaDBReplacing Your Cache with ScyllaDB
Replacing Your Cache with ScyllaDB
 
Powering Real-Time Apps with ScyllaDB_ Low Latency & Linear Scalability
Powering Real-Time Apps with ScyllaDB_ Low Latency & Linear ScalabilityPowering Real-Time Apps with ScyllaDB_ Low Latency & Linear Scalability
Powering Real-Time Apps with ScyllaDB_ Low Latency & Linear Scalability
 
7 Reasons Not to Put an External Cache in Front of Your Database.pptx
7 Reasons Not to Put an External Cache in Front of Your Database.pptx7 Reasons Not to Put an External Cache in Front of Your Database.pptx
7 Reasons Not to Put an External Cache in Front of Your Database.pptx
 
Getting the most out of ScyllaDB
Getting the most out of ScyllaDBGetting the most out of ScyllaDB
Getting the most out of ScyllaDB
 
NoSQL Database Migration Masterclass - Session 2: The Anatomy of a Migration
NoSQL Database Migration Masterclass - Session 2: The Anatomy of a MigrationNoSQL Database Migration Masterclass - Session 2: The Anatomy of a Migration
NoSQL Database Migration Masterclass - Session 2: The Anatomy of a Migration
 
NoSQL Database Migration Masterclass - Session 3: Migration Logistics
NoSQL Database Migration Masterclass - Session 3: Migration LogisticsNoSQL Database Migration Masterclass - Session 3: Migration Logistics
NoSQL Database Migration Masterclass - Session 3: Migration Logistics
 
NoSQL Data Migration Masterclass - Session 1 Migration Strategies and Challenges
NoSQL Data Migration Masterclass - Session 1 Migration Strategies and ChallengesNoSQL Data Migration Masterclass - Session 1 Migration Strategies and Challenges
NoSQL Data Migration Masterclass - Session 1 Migration Strategies and Challenges
 
ScyllaDB Virtual Workshop
ScyllaDB Virtual WorkshopScyllaDB Virtual Workshop
ScyllaDB Virtual Workshop
 
DBaaS in the Real World: Risks, Rewards & Tradeoffs
DBaaS in the Real World: Risks, Rewards & TradeoffsDBaaS in the Real World: Risks, Rewards & Tradeoffs
DBaaS in the Real World: Risks, Rewards & Tradeoffs
 
Build Low-Latency Applications in Rust on ScyllaDB
Build Low-Latency Applications in Rust on ScyllaDBBuild Low-Latency Applications in Rust on ScyllaDB
Build Low-Latency Applications in Rust on ScyllaDB
 
NoSQL Data Modeling 101
NoSQL Data Modeling 101NoSQL Data Modeling 101
NoSQL Data Modeling 101
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Dernier (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
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
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
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
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

Latency and Consistency Tradeoffs in Modern Distributed Databases

  • 1. Latency and Consistency Tradeoffs in Modern Distributed Databases Dr Daniel Abadi
  • 2. Agenda ■ The PACELC Theorem ■ ScyllaDB Cloud in Context • Benchmarking PACELC • Benchmark Set Up & Results ■ About ScyllaDB Cloud ■ Questions 2
  • 3. 3 Dr. Daniel Abadi Daniel Abadi is the Darnell-Kanal Professor of Computer Science at University of Maryland, College Park and was named an ACM Fellow in 2020. His primary area of research is database systems, and his publications have been cited more than 23,000 times. He is known for his contributions to distributed databases, column-store databases, deterministic databases, graph databases, and stream databases.
  • 4. Every modern data store replicates data for performance and availability. DB 1 DB 2 network
  • 5. What should we do if replicas can’t communicate with each other? DB 1 DB 2 network partition
  • 6. CAP Theorem says tradeoff: Consistency vs. Availability DB 1 DB 2 network partition
  • 7. CAP Theorem says tradeoff: Consistency vs. Availability DB 1 DB 2 network partition According to the CAP theorem every system would be both consistent and available at all times except during a network partition.
  • 8. CAP theorem misses the point for global apps
  • 9. Having siloed / localized version of applications no longer acceptable
  • 10. No replication 🡪 bad latency and availability Write Read Write Read 10ms 400 ms
  • 11. Synchronous replication hurts latency Write Read 400ms Write Read Replication / consensus 400ms 10ms 10ms We get consistency, at expense of latency (e.g. Spanner, CockroachDB)
  • 12. Alternative: Give each item a primary location, consistent reads/writes directed there Write Read 10ms Write Read 10ms e.g. CockroachDB (with its geo-partitioning feature), SLOG, PNUTS Read Write Write Read 400 ms 400 ms
  • 13. Asynchronous replication hurts consistency Write Read 10ms Write Read 10ms Asynchronously replicate writes We get latency, at expense of consistency
  • 14. PACELC • In the case of a partition (P), does the system choose availability (A) or consistency (C)? • Else (E), does the system choose latency (L) or consistency (C)? • PA/EL • Systems that replicate asynchronously (e.g. Dynamo, Cassandra, COPS, Jessy, Walter, Scylla, …) • PC/EC • Partitioned systems and systems that replicate synchronously (e.g., Spanner, CockroachDB, Calvin, SLOG, …) • PA/EC • Systems that replicate synchronously except during a partition • PC/EL: No good reason to exist 14
  • 15. CockroachDB: PC/EC Goal: Consistency + CockroachDB provides near strong-1SR consistency (Jepsen) + Support ACID transactions + Provides high availability the same way ScyllaDB does — with redundancy + Maintains consistency across replicas while serving concurrent operations + Hybrid transaction scheduler makes reads linearization cost-free + Written in Go--susceptible to garbage collection spikes Comparing Consistency and Latency 15 ScyllaDB: PA/EL Goal: Availability and low latency + Async computing model + Supports a million lambda functions (“continuations”) per second, per core + Offers an API for stronger consistency that leverages lightweight transactions (LWT).* + From an ACID perspective, does not provide isolation + Written in C++, no garbage collection *Scylla 5 will introduce Raft support, which will provide a stronger type of consistency that is sometimes referred to as “immediate consistency”.
  • 17. Quantifying the Latency Trade-off 17 PC/EC PA/EL
  • 19. The industry’s fastest, safest, and most scalable distributed database ScyllaDB Cloud 19 + Built in C++ for low-level control + Fully asynchronous runtime + Millions of OPS per node + p99 latency less than 1ms + AWS and Google Cloud: Wide range of instance types + Isolated, dedicated instances for performance and security + Fully managed, even in your own AWS account
  • 21. United States 2445 Faber St, Suite #200 Palo Alto, CA USA 94303 Israel Maskit 4 Herzliya, Israel 4673304 www.scylladb.com @scylladb Questions and Answers