Friday, May 03, 2013

Banks and ACID transactions

For the millionth time, I hate it when people exaggerate. (Yes, that's meant as humour!) But seriously, when you have a single point on a graph, you can make any line or curve you want fit it! In order to make true judgements, we need all of the facts. And as a scientist, I'm always on the lookout for experiments, experience, facts etc. that shoot holes in existing theories, since that's how science advances.

Now why do I say all of the above? Because we have a prime example of people jumping to the wrong conclusion based on incomplete facts. Once again it's around ACID transactions, because apparently banks don't use them! I'm sure that'll come as a surprise to many of my banking friends and colleagues, but it has to be true because they're not used in ATMs (in some countries). Based on this one fact (which I'm sure it correct in some circumstances/locales), it seems that all bank transactions are BASE and not ACID. I've discussed ACID, BASE and CAP before, so I won't go into details. However, it seems that this meme has been picked up by a lot of people:

Therefore, I just wanted to make sure everyone understood that there's a lot more to banking than ATM machines. ACID transactions are a backbone of a lot of what goes on throughout the financial services sector. Of course there are areas where ACID transactions aren't needed and shouldn't be used. I've said as much myself over the years. With all of the work we've been involved with around extended (non-ACID) transactions, that should be obvious.

So I do not have an issue with someone suggesting that ACID is not suitable for a specific use case. Where I do have a problem is when people jump to the conclusion that just because ACID isn't right for one use case it seems to mean it's not right for all use cases. That's like saying that atoms don't exist because you can't see them with the naked eye!

No comments: