May 2, 2010

Daniel Abadi on NoSQL design tradeoffs

In a thought-provoking post, Daniel Abadi points out NoSQL-related terminological problems similar to the ones I just railed against, and argues

To me, CAP should really be PACELC — if there is a partition (P) how does the system tradeoff between availability and consistency (A and C); else (E) when the system is running as normal in the absence of partitions, how does the system tradeoff between latency (L) and consistency (C)?

and goes on to say

For example, Amazon’s Dynamo (and related systems like Cassandra and SimpleDB) are PA/EL in PACELC — upon a partition, they give up consistency for availability; and under normal operation they give up consistency for lower latency. Giving up C in both parts of PACELC makes the design simpler — once the application is configured to be able to handle inconsistencies, it makes sense to give up consistency for both availability and lower latency.

However, I think Daniel’s improved formulation is still misleading, in at least two ways:

Comments

2 Responses to “Daniel Abadi on NoSQL design tradeoffs”

  1. RYW (Read-Your-Writes) consistency explained | DBMS2 -- DataBase Management System Services on May 2nd, 2010 1:32 am

    […] Daniel Abadi’s views on NoSQL design tradeoffs Categories: Amazon and its cloud, NoSQL, OLTP, Parallelization, Theory and architecture  Subscribe to our complete feed! […]

  2. Daniel Abadi on May 2nd, 2010 10:10 am

    The only part of your criticism I take issue with is the 33% number. Going from >=1 messages over a wide area network to 0 messages over a wide area network (i.e. all replication is done asynchronously instead of in the critical path for a transaction) is a big deal (it can improve latency by a factor of 2X to 10X). This is actually a major design decision for companies like Amazon and Yahoo that need to allow writes from any part of the world. But doing replication asynchronously means lower consistency even when there are no failures or partitions (the ELC part of PACELC).

Leave a Reply




Feed: DBMS (database management system), DW (data warehousing), BI (business intelligence), and analytics technology Subscribe to the Monash Research feed via RSS or email:

Login

Search our blogs and white papers

Monash Research blogs

User consulting

Building a short list? Refining your strategic plan? We can help.

Vendor advisory

We tell vendors what's happening -- and, more important, what they should do about it.

Monash Research highlights

Learn about white papers, webcasts, and blog highlights, by RSS or email.