NoSQL Zone is brought to you in partnership with:

Mitch Pronschinske is a Senior Content Analyst at DZone. That means he writes and searches for the finest developer content in the land so that you don't have to. He often eats peanut butter and bananas, likes to make his own ringtones, enjoys card and board games, and is married to an underwear model. Mitch is a DZone Zone Leader and has posted 2569 posts at DZone. You can read more from them at their website. View Full User Profile

Can VoltDB (an RDBMS) Outperform a NoSQL?

06.02.2010
| 13751 views |
  • submit to reddit
The NoSQL movement did not come about primarily because people specifically hated SQL, it was born out of a need for better scalability and simplicity in data management.  SQL was often the target of criticism because RDBMS had poor horizontal scalability and didn't handle unstructured data very well.  However, a new relational database called VoltDB solves many of the problems that NoSQL systems do.  It provides horizontal scalability at a cost per transaction that is extremely affordable, and it's open source.

VoltDB, LLC was founded last year by Andy Palmer and Mike Stonebraker.  Stonebraker is what you might call a database pioneer.  He's founded open source databases like Postgres and Ingres.  His newest project, VoltDB, is a relational database management system that uses Online Transaction Processing (OLTP) and SQL.  It was developed as part of a joint research project by Brown University, MIT, Yale University, and HP Labs.  

                                                            

VoltDB stores data in RAM or disk partitions, and then it distributes the data and the SQL engine across a server or server cluster.  It's design ensures transactional consistency while eliminating legacy overhead.  VoltDB conforms to the ACID model by using autonomous thread partitioning with data being replicated in the cluster.  VoltDB allows near-linear scaling across further clusters as well.  

VoltDB vs. Cassandra

According to performance test done by VoltDB, LLC, VoltDB ran five times faster than Apache Cassandra (a NoSQL database) and 45 times faster than an Oracle RDBMS.  The databases ran on an Intel Xeon X5550-based Dell PowerEdge R610 cluster.  Another benchmark (key-value) against Cassandra was done by VoltDB engineer John Hugg and recorded in this blog post.  In his conclusion, he mentioned a few comparisons and contrasts between Cassandra and VoltDB:

"It was fun to get to play with another system targeting the same scaling pain as us. Cassandra is the first distributed system I've used that is as easy as VoltDB to get running on a cluster. It also has a friendly community. An issue I did have was the lack of thorough documentation or non-trivial (or non-Twitter) examples.

VoltDB requires a little more effort up front to build an application. That said, for the same hardware, VoltDB will do more work, sometimes a whole lot more work. Also, it will do it with SQL, transactional serializability and a user manual." --John Hugg, VoltDB Engineer

The finance industry will be one of the first sectors that are interested in VoltDB, according to the company.  Web companies that manage large amounts of data with rapidly changing transaction volumes will also be interested.  Version 1.0 of the open source project is available now and licensed under the GPL.  A commercial version starts at $15k per year for a 4-node cluster installation.  The company will add management and monitoring tools to future versions of commercial VoltDB.

Comments

Joseph Ottinger replied on Thu, 2010/06/03 - 8:18am

Volt looks really neat - but it's not quite right to call it a traditional RDMS, given its limitations to be treated like one. I also don't see a good analysis of integration with the tools that RDMSes are designed for.

Carla Brian replied on Sat, 2012/06/30 - 11:08am

I think this is a good and effective application. I want to download this one. - Mercy Ministries

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.