Mike Stonebraker is well known in the database research world. He started Ingres way back in the 1970s while teaching at UC Berkeley. During the same time, IBM Research was working on the research prototype “System R” where SQL (relational algebra) was invented. Mike’s Ingres came up with Quel (Query language based on relational calculus). In the ultimate battle SQL won the database language war. Ingres became a commercial product enjoying some success for a while.
The road from research prototype to product is not always easy. IBM’s successful product DB2 on the mainframe was not an extension of the System R (unlike SQL/DS on the VM operating system with limited success), rather it derived many principles from the earlier commercially successful product, IMS.
Mike Stonebraker built another research prototype called “Illustra” and sold it to Informix (subsequently acquired by IBM). In recent years Mike moved to the east coast to MIT and continues his relentless research work. His new companies included Streambase and Vertica (a columnar database sold to HP last year). His latest work is a new product called VoltDB.
VoltDB is being positioned as “a high performance, scalable RDBMS for Big Data, high velocity OLTP and realtime analytics”. It is full-fledged ACID-confirmant RDBMS unlike its NoSQL brethren with relaxed consistency (eventually consistent model). At the same, it promises to eliminate the bottlenecks of current RDMSs towards extreme scaling – logging, locking, latching, and buffer management. VoltDB eliminates these bottlenecks by these approaches:
- data & associated processing are partitioned together and distributed across the CPU cores (“partitions”) of a shared-nothing hardware cluster
- Data is held in main memory, eliminating the need for buffer management
- Transactions execute sequentially in memory (no locking nor latching needed)
- synchronous multi-master replication for high availability
- command logging instead of “write-ahead” logging
These innovations enable VoltDB to run many times faster than traditional RDBMS products and to scale linearly on low-cost clusters of commodity servers, all the while maintiig ACID compliance. Hence it positions itself more for “transaction” processing applications (OLTP), rather than the NoSQL class that aims at data warehousing and analytics world. It can also be used for realtime analytics.
All these promises sound too good to be true. So far, none of Mike’s “commercial” products have swept the industry, even after they have been acquired by bigger giants. VoltDB does address a need for high-performant transactional applications with very high scalability. But the existing leaders such as Oracle, IBM, and Microsoft are not sitting idle, even though they are expensive solutions.
VoltDB has very few deployments to prove the theory so far. Let us wait and see.