We’ve joined forces with Smartlogic to reveal smarter decisions—together.

Yes Daniel, There is NoSQL With ACID

I recently came across this question from Yehuda-Daniel Korotkin in the NoSQL forum of Linkedin asking “Do you think it is possible to make transactions in NoSQL?”

I encounter this question in one form or another pretty much all the time and respondents usually steer the person to the many resources that show that, quite reasonably, you can make a transaction with NoSQL…if the database technology is architected form the start to support it.

This time, however, one of the first comments started dismissing the need for the requirement: “Support for ACID transactions makes NoSQL databases a little useless because they become significantly slower while offering much less functionality than traditional databases.”

No No No! Don’t worry Daniel – you can have transactions with NoSQL! And unlike the hopeful legend of Virginia and Santa Claus where the answer is about faith… you can, very tangibly and without giving up functionality, have it today with Enterprise NoSQL.

Here is a quick summary of my post to that thread:

  1. Yes, you can have ACID with NoSQL!
  2. Not having it means that the system didn’t consider the ‘Management System’ part of the DBMS in its original design
  3. MarkLogic does this with Multi-Version Concurrency Control (timestamp control over the cluster), shared-nothing scale out (to simplify the updates and power truly parallelized query processing) and clusters to clusters to manage even the biggest data sets. And we’re happy to show anyone how we do it, here is a deep-dive a paper on exactly what MarkLogic does under the hood.
  4. This isn’t theory (or faith): some of the larger MarkLogic databases are a 1024 cluster that maintained performance as it scaled out and a 36-billion document database where a single document value update was reflected in the next search or query . . . Not to mention the 100s of MarkLogic-powered mission critical applications where people rely on data constancy to run their business.
  5. Without ACID, transactions and data consistency in the database, creating and managing this functionality is left as an exercise for the developers. The results are plain to see for anyone whose LinkedIn update didn’t stick or Facebook posts come in randomly and in duplicate. And those are excellent, engineering-focused technology companies – just think about what’s going in places whose main business isn’t technology!

So start with the right DBMS and yes, Daniel, you (and everyone else looking for the new generation of database) can have NoSQL with ACID!

Now as to that other big question around this time of year… here is a very old post about Santa (and actually batch updates with transactions) that certainly puts me in the Virginia camp!

Matt Turner - Chief Technology Officer - Media Publishing | MarkLogic

Matt Turner is the CTO, Media and Manufacturing at MarkLogic where he develops strategy and solutions for the media, entertainment and manufacturing markets. Matt works with customers and prospects to develop MarkLogic enterprise NoSQL operational data hubs that enable them to get the most of their data and deliver their products to the fans, audiences and customers that love them.

Before joining MarkLogic, Matt was at Sony Music and PC World developing innovative information and content delivery applications.

Start a discussion

Connect with the community




Most Recent

View All

Unifying Data, Metadata, and Meaning

We're all drowning in data. Keeping up with our data - and our understanding of it - requires using tools in new ways to unify data, metadata, and meaning.
Read Article

How to Achieve Data Agility

Successfully responding to changes in the business landscape requires data agility. Learn what visionary organizations have done, and how you can start your journey.
Read Article

Scaling Memory in MarkLogic Server

This not-too-technical article covers a number of questions about MarkLogic Server and its use of memory. Learn more about how MarkLogic uses memory, why you might need more memory, when you need more memory, and how you can add more memory.
Read Article
This website uses cookies.

By continuing to use this website you are giving consent to cookies being used in accordance with the MarkLogic Privacy Statement.