There is a lot going on in the cloud related to database management systems (DBMS) these days, but I could not find a good roundup to reference – so here you go.
For the purpose of this analysis, I divide cloud DBMS offerings into four categories based on whether or not they are “relational” and the degree to which they are “native” to the cloud (e.g. integrated part of a cloud service). Note that I specifically exclude SaaS platforms with their underlying databases because often it’s not possible to tell what’s under the covers. Here’s the general breakdown:
Note that just about any database can be run in a cloud-based infrastructure. The key requirement is the ability have administrator rights to be able to install and configure the database, and the ability to generally have persistent volumes to mount the database. Virtually any RDBMS – Oracle, IBM DB2, SQL Server, Sybase, etc. – can run in most of the cloud infrastructures.
Recently there have been a lot of non-relational database systems gaining traction f or “web-scale” applications. These tend to be distributed “key-value” systems or document databases. They are all open source as well. HyperTable is an open source copy of the Google BigTable (“datastore”). HBase is a database that sits on top of Hadoop. Project Cassandra was developed at Facebook and released into open source. Collectively these entrants are being called the “NoSQL Movement.”
There are far fewer “native” cloud database options. On the non-relational front, SimpleDB from Amazon was among the first, followed by the Google AppEngine Datastore (based on BigTable). Amazon’s Elastic MapReduce is not a database, per se, but is a cloud version of Hadoop and enables large scale data manipulation (some people might object if I leave it out).
For relational databases, only Microsoft with their SQL Azure Database (aka “SQL Services”) is the only RDBMS-as-a-service that I can find. Initially the Microsoft offering, called SQL Data Services, did not offer full support for SQL. Based on a lot of feedback (presumably negative), Microsoft accelerated their support for complete relational functionality and their Tranact-SQL (T-SQL) interface. It is not clear if existing T-SQL applications can be migrated as is to SQL Azure, but that would presumably be the goal in the long term.
Based on what I’m seeing, the concept of native cloud database offering has yet to really take off. SimpleDB and Google Datastore (BigTable) are too proprietary and not widely adopted. SQL Azure is not even fully available yet. Perhaps the market is not there yet because there’s not much demand? Or perhaps it’s just early. Time will tell.
Let me know if I’ve missed anything with this simple roundup (post in the comments below).