Tuesday, September 30, 2008

Cloud Databases

Joab Jackson, in his "Cloud computing leaving relational databases behind" article, makes some pretty interesting points on the incompatibility of relational databases with cloud-based infrastructures. He first list the various cloud optimized databases:

And then notes that they all have cloud computing-specific characteristics.

  • They can be run in distributed environments,
  • None of them are transactional in nature, and
  • They all sacrifice some advanced querying capability for faster performance.

Since the national security community literally lives and dies by the information in their relational databases, what does that mean if the community adopts cloud technology in order to benefit from the scalability and economy?

The key issue here is that in cloud implementations, database material is spread across different locations. Executing complex queries with relational databases across vast geographic distances can slow response time. It is also difficult to design and maintain an architecture to replicate relational data across different locations and keep that data in sync if one location goes down.

Since cloud implementations are seemingly the wave of the future, community CIO's and analyst alike need to start thinking about the implications of the coming transition from relational databases today.

2 comments:

Anonymous said...

I don't know Kevin, I think relational db's will be around for a long time.

You know when we start thinking in the cloud, we think every cloud computing application is going to have millions of users so can't use a relational database, but there are lots and lots of problems that relational databases solve -- in the cloud -- very easily.

And there are some very scalable websites built on top of relational databases.

James Urquhart said...

I second Randall's comment. If your database is focused on complex set-based analytics, then stick to a relational database. If you need to map the results of that analytics to a large audience, replicate results from the relational query results to either static pages or perhaps a Map-Reduce based data store. It doesn't have to be a "paradigm shift" in any way shape or form.