PACELC Theorem Flashcards

(8 cards)

1
Q

In distributed systems, a choice needs to be made between availability and consistency, which levels of compliance represent these in databases?

A

Consistency can be achieved through ACID compliance (Atomicity, Constancy, Isolation, and Durability).

Availability can be achieved in technologies through BASE (Basically Available, Soft-State, and Eventual Consistency).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is BASE Compliance? What does it guarantee and which technologies use it?

A

BASE compliances means that a technology will provide basic availability, soft-state, and eventual consistency. Most non-relational stores leverage this such as MongoDB, Cassandra, and Redis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How does a database transaction function in a system prioritize consistency? How about availability?

A

Consistency, typically achieved through ACID, requires that any replicas will not succeed unless the operation has been confirmed through its peers.

Availability will not require peer-acknowledgement and will respond with local data instead of ensuring the latest consistent results.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

When is CAP Theorem not applicable?

A

In systems that have no network or logical partitions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is PACELC Theorem? What two components make it up?

A

PACELC is a combination of CAP Theorem (PAC) and an alternative for when it doesn’t apply (ELC).

It states that in the presence of partitions (P), you can choose between availability (A) or consistency (C).

If you do not have partitions (Else, E), you can choose between latency (L) or consistency (C).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is an example of a technology that relies on partition tolerance (P) and availability (A) and otherwise leverages low-latency (EL)?

A

Dynamo and Cassandra are both PA/EL.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What’s an example of a system that prioritize partition tolerance (P) consistency (C), and will always choose consistency over latency (EC).

A

BigTable and HBase will always choose consistency whenever applicable (PC/EC).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What’s a database technology that will choose availability in the presence of partitions (PA), but otherwise will focus on consistency?

A

MongoDB, in its default configuration, runs in a primary-replica mode with all writes being performed on the primary and async-replicated to the replica. It can be configured to optimize writes via a sync-or-semi-sync replication to improve consistency.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly