Sie sind auf Seite 1von 30

Millions of Tiny Databases

Enmanuel Medrano 2011-5852


Table of contents

• Tough CAP Tradeoffs


• Availability and Blast Radius
• Physalia Architecture
CAP theorem
States that it is impossible for a distributed data store to simultaneously
provide more than two out of the following three guarantees.

• Consistency: Every read receives the most recent write or an error


• Availability: Every request receives a (non-error) response, without
the guarantee that it contains the most recent write
• Partition tolerance: The system continues to operate despite an
arbitrary number of messages being dropped (or delayed) by the
network between nodes

When a network partition failure happens should we decide to

• Cancel the operation and thus decrease the availability but ensure
consistency
• Proceed with the operation and thus provide availability but risk
inconsistency
Amazon Elastic Block Store (Amazon EBS)

Amazon Elastic Block Store (Amazon EBS) provides block level storage volumes for use with EC2 instances. EBS volumes behave like raw,
unformatted block devices. You can mount these volumes as devices on your instances. EBS volumes that are attached to an instance are
exposed as storage volumes that persist independently from the life of the instance. You can create a file system on top of these volumes or
use them in any way you would use a block device (such as a hard drive). You can dynamically change the configuration of a volume
attached to an instance.
Simplified Storage System

Client

Primary Replica
Client

Network Partition

Primary Replica
A Higher Power
(Configuration Service)

I still want to be Please, sir, can I be


primary! the primary?

Primary Replica
A Higher Power
(Configuration Service)

I still want to be Please, sir, can I be


primary! the primary?

Primary Replica
Higher Power Client

Primary
Replica
A Higher Power
(Configuration Service)

Please, sir, can I be


the primary?

Primary Replica
Here?

Or
Here?
© 2020, Amazon Web Services, Inc. or its
Affiliates.
s
Affiliates.
© 2020, Amazon Web Services, Inc. or its
Affiliates.
Availabilit
y and
Blast
Radius
© 2020, Amazon Web Services, Inc. or its
Affiliates.
Availabilit
is typically
y improved with
Redundancy
Availabilit
is typically
y improved with
Redundancy*
* Unless failures are correlated
Infrequent
Short
Small
Infrequent
Short
Small
“Blast Radius”
Physalia Architecture
Client

Primary Replica
Physalia Cell
• Replicated state machine

• Configuration for one volume, or


small set of volumes.

• K/V store API

• Strict serializable transactions


Client

Minimize
The
Radius
Primary Replica
Topology Details
Matter

Lower Partition
Risk Radius
Lower
Availability
Blast Radius
Take Advantage of Eventual Consistency When You Can!

• Discovery Cache (clients discover


nodes)
• Monitoring
• ”Meta” control plane
Optimize for Blast Radius

• Minimize impact of partitions (and CAP tradeoffs),


• overload,
• software bugs &
• operational issues.

Build humility into the system.


The
End

Das könnte Ihnen auch gefallen