Column Stores: Teaching an Old Elephant New Tricks
Prof. Michael Stonebraker is a controversial visionary, who is known for nothing less than Ingres, Postgres, Vertica, Streambase, Illustra, VoltDB, SciDB, besides being a renowned MIT professor. My recent blog post about Stonebraker’s talk at the EPFL (host university to Prof. Martin Odersky, creator of the Scala Language and Co-Founder of Typesafe) has triggered a very interesting discussion on reddit.
While Stonebraker is very sure about his obviously biased claims that “The Traditional RDBMS Wisdom is All Wrong”, the bottom line of the reddit discussion included:
- Not everyone solves the problems Stonebraker solves. His claims about RDBMS being obsolete may be too absolute.
- The absoluteness of his claims is nothing new. He’s already claimed absolute success for ORDBMS (in this case, he was right – see comment by Paul Brown).
- Oracle Exadata supports hybrid columnar compressions since 2009. This was (deliberately?) omitted by Stonebraker. It would be interesting to hear him compare Oracle’s solution with his own – e.g. with Vertica
- SQL Server 2012 also introduced column store indexes, jumping on the “NewSQL” train.
Interesting insight on SQL Server’s enhancement can be seen in this blog post by Microsoft’s Nicolas Bruno, who challenges the fact that column stores cannot be implemented by “traditional RDBMS”. As Nicolas Bruno stated, an “Old Elephant” can be taught new tricks. “Traditional RDBMS” have proven to adapt to long-term trends in the database industry. Their success isn’t based around the fact that they are mainly fast, or particularly well-designed to respond to niche problem domains. Their success is mainly based on the fact that they are designed according to Codd’s 12 Rules, and thus to be extremely flexible in how they separate data interfacing (SQL) from data storage.
A lot of additional insight and ongoing links can be found in these blog posts by Daniel Lemire, where he had challenged Stonebraker’s similar claims already four years ago: