Will Fitch recently wrote an blog post titled “Distributed Database Systems”. On the surface, it would seem that this article is a discussion of the different options and possibly a conclusion as to which one the author chose and why. The article does give you some of that but more importantly, he discusses some of the roadblocks a corporate development team faces when adopting a new technology.
For our company, and probably all others in a similar scenario, the biggest disadvantage would be code and culture change. We’re used to writing code that connects to a database and executes a stored procedure that lives in the database and is written in SQL. Introducing this new architecture would completely change our environment. Stored procedures would likely be written in Java or another JIT language. The CRUD functionality would then execute that instead. This essentially means a rewrite of much of the site.
The article does go on to discuss that their eventual conclusion was that VoltDB was the best product for their needs. Will discusses why they reached this conclusion.
Will does a good job of weighing the advantages to his team vs. the disadvantages. This is not a technical article at all, it’s written from the point of view of the person who had to make the decision and talks about the options he considered and why he chose VoltDB. It does get to be a time ad for VoltDB near the end but overall this is a very good read for team leads and department heads who are considering distributed databases.