Database solutions in cloud computing. Cloud computing is the “IT” thing, and for good reason. What does this mean for databases? I don’t think there is any doubt about the virtues of cloud services, concepts of scalability, reliability, flexibility and bang-for-your-buck have been well investigated and answered in depth. What I want to know is, what database solutions are on offer and why would you choose one of these over say, standard SQL Server, or a non-relational solution over a relational instance. So who is providing db services in the cloud?
Microsoft Azure cloud – has its own special cloud version of SQL Server. How does this work? Is it for all intents and purposes the same as working with a local SQL Server? Is it API-based. Is it optimised to distribute the workload, or does it operate on an instance of an OS?
Amazon Web Services. Amazon provide a relational SQL-based solution, and also provide non-relational solutions (MongoDB, dynamoDB). What does Amazon do that Microsoft Azure isn’t? What is their point of difference? MongoDB seems to be quite popular (it comes up all the time on StackOverflow) – why do people use this non-relational db? In what situations would you choose (or not) to go down the non-relational route?
OpenStack & SWIFT. These guys are relatively new. Boosting off original research from NASA, their aim is MASSIVE scalability (aiming for 1x10e6 server instances!!!) The really cool thing (for me anyway) is that Openstack is completely built upon Python. This is their culture, and a prime objective that the company maintains. My brief look into SWIFT implies that the db interface is API driven. So what does this mean? Is it easier, harder, what if you want to do something a little bit out of the box? Openstack is a truly open-source project, anyone can contribute. What is the advantage of this (from the USER’s perspective), does this give OpenStack an edge in some applications, or is it simply a different flavour?
These are only the first few things that pop to mind. Already I can tell that it is going to be tough to narrow the scope of this to something useful (and still interesting!). I want to thank Todd for this idea – while similar to my thoughts around comparing data storage methods (relational vs. non-relational vs. data warehousing…) – this is far more current! Hopefully with other people’s help we will be able to really define this potential) project.
Bring it on!