Re:The confusing CAP and ACID wording
by threeseed on Sunday March 29, 2015 @05:16PM
(#9286509)
Maintaining strong consistency in some NoSQL databases e.g Cassandra is merely a config parameter away. Really isn't that hard.
[ Parent
| on HN ]
Are you able to do full atomic transactions in Cassandra now? Like the ones described in the article:
begin
val1 = read(account1)
val2 = read(account2)
newVal1 = val1 - 100
newVal2 = val2 + 100
write(account1, newVal1)
write(account2, newVal2)
commit
Last time I checked this was not possible, only light compare-and-swap operations.Are you talking about the same kind of consistency as the parent post?
There's only one type of consistency in the CAP theorem. The OP is probably just inexperienced with NoSQL databases since Cassandra, Riak and HBase all support strongly consistent operations.
...over a single key, which is an extremely limited guarantee compared to what a lot of applications need. I'm aware that Cassandra offers a limited notion of linearisable transactions, but last I checked they weren't all that great in terms of functionality or correctness - that may well have changed in the last year or so, of course.
Re:The confusing CAP and ACID wording
by kasey_junk on Sunday March 29, 2015 @06:54PM
(#9286805)
But there is a second consistency he could be talking about, ie ACID consistency. Thus the article...
Let me clarify then. Strong consistency = ACID consistency.
If I write the data and then immediately read it I will get the new data under all circumstances.
And ACID DB solves a tiny fraction of consistency issues.
Most of the really difficult problems show up when you have multiple users and still need consistency.
Granted, ACID databases make solving most of these far simpler.