Editorials

A New Database Bug

There’s another database engine entering the already full market place. Cockroach DB will surely get your attention, simply by the name. What makes this new data engine different? Why would you consider it?

At the root, Cockroach DB is a distributed database engine. Data is highly scalable, to petabytes and more through the implementation of a fabric composed of multiple machines. Thousands of nodes are reasonable.

Well, that has already been done by many different data engines. Scalability is not new. But, it has come with a cost. Most large scale data engines do not support ACID capabilities. ACID assures that your data is in a complete state before, during and after modifications. All changes, or no changes, are applied. Cockroach DB does this through transactions, applied across multiple nodes.

Transactions in a distributed database are interesting; and much better than eventually accurate as many data engine implementations do. Cockroach DB takes transactions a step further. Instead of locking transactions, transactions are blocking, assuring they are applied in the appropriate order. Interestingly, they do not process transactions first in first serve. Instead transactions are assigned a priority. They are processed by the highest priority first.

The Cockroach DB team consists of many individuals who have spent years in massively scaled systems. It will be interesting to see how their implementation of difficult data solutions evolve. I found Cockroach DB through a blog on their ACID transactions. Check it out.

Cheers,

Ben