Monday, April 12, 2010


Probably due to the predominant position of a few actors (Google, Amazon, Facebook, etc.), I often feel that all I used to learn about small size systems will soon be obsolete.

The current fashionable IT word is noSQL. If you don't have a minimum of IT culture and only read the buzzy articles you could think the SQL thing is dead.
After a short analysis, I collected a few answers and mainly understood, both old and new technologies will have a long life, but their opposition really makes us step back and reconsider.

First, there is ACID for atomicity, consistency, isolation and durability, the properties implemented by the Database management system (DBMS) to make sure the transactions proceed reliably.

Most of the time we use databases of this type in our indoor computing system. But when it comes to distributed ones (many nodes) you've got to understand that a choice has to be made. In 2000, Eric Brewer made a keynote speech at the ACM Symposium on the Principles of Distributed Computing (PODC) about key principles in the name of CAP:
  • Consistency (all nodes see the same data at the same time)
  • Availability (node failures do not prevent survivors from continuing to operate)
  • Partition Tolerance (the system continues to operate despite arbitrary message loss)
I'm not going to explain what others have done greatly before so read
Wikipedia : ACID
Wikipedia : Database management system
Nahurst : Visual Guide to NoSQL Systems
Kennygorman : Dropping ACID
Julianbrowne : Brewer's CAP Theorem
Highscalability : Drop ACID and Think About Data
Blip : Drop ACID and think about data

No comments :