Monday, May 21, 2012

DBMSaaS - Database Management System as a Service


DBMSaaS – Database Management System as a Service
Bill Schoonmaker - Vice President of Data Architecture at Adaptivity, Inc
May 10th, 2012

Consider cost savings, risk reduction and space savings.  While these may not be the first things you think of when you think of your database, all are reasons to discover that recently, a new paradigm shift has begun.  While there seems to be some disagreement on a proper acronym or even name, for this blog, I will refer to it as DBMSaaS, or Database Management System as a Service.  This is different than DaaS (Data as a Service) as that is typically used for data sets that can be used across various lines of business, usually slowly changing lookup data.  A good example of DaaS would be the Microsoft Azure Markeplace.  There you’ll find subscription ready data to access from your applications.  You don’t have to manage or maintain the data, you just use it.  Now that we understand the differences between DaaS and DBMSaaS, why exactly would someone be interested in putting their database in the cloud?  

In today’s cloud centric world, there are many vendors that are offering infrastructure as a service (IaaS).  Vendors such as Amazon, Microsoft, 6 Fusion, Rackspace and dozens more provide the ability to quickly stand up all types of virtual servers.  Typically if you are using an IaaS vendor you will deploy a virtual server for your database in addition to your application and web servers.  Your database software is then installed on the server and the databases you need are configured and maintained.  This is similar to what would be done in your own environment only you are not housing the server on your own hardware.  

With DBMSaaS, there is no need for you to manage the server or in some cases even manage the database.  You simply set up the structure of your database and load the data.  Backups and database upgrades are handled by the vendor and in some cases horizontal scalability is as easy as clicking a few buttons or may be automatic.  Microsoft SQL Azure, Amazon Relational Database Service and Oracle Database Cloud Service are just three of the ready to deploy solutions for setting up and maintaining your database in the cloud.  In addition to these three, there are a growing number of DBMSaaS providers.  You should have no trouble finding one that suits your needs.  But, outside of vendor selection, how do you make a choice to go to the cloud with your database at all?

There are a few important questions you will need to answer first about your existing database before you can consider the move to DBMSaaS.  Questions such as, how secure does my data need to be?  Or, how much data do I need to store in my database?  And, what kind of throughput do I need for my database?  Addressing these questions up front will help you begin to understand if your database is right for cloud deployment.  If you need absolute control over your data and manage access on a user by user basis then your database is probably better off in your own environment behind your own firewall.  If you need to store more than a terabyte of data, you’re more than likely better serviced by using your own infrastructure.  Finally, if you need extremely fast (sub second) access to your data and most of your access happens on your own network then you are probably better off rolling your own.

The next logical step is find support for your particular DBMS.  What database engine does it run on?  There are solutions for Oracle, SQL Server, MySQL, CouchDB and a few others.  If your database currently runs on Sybase ASE for example, you would not be a candidate for DBMSaaS as there isn’t vendor support for it yet.  Sybase is working with Amazon RDS to implement their DBMS in the Cloud but no release date has been specified.  Similarly, if you are running DB2 then there currently isn’t an option either.  If you find that your DBMS is not supported by a DBMSaaS vendor then you will either be tackling a DBMS migration project or considering traditional IaaS.

Now, you’ve made it to the next step.  There is a vendor that supports your DBMS and you’ve answered some high level questions about your database and its needs.  Now what?  There are myriad additional questions that should be asked before you make the leap to DBMSaaS.  These questions range from low level database features such as high availability, backup operations and encryption all the way to business intelligence support. Each vendor offers their own feature set so you will need to explore each one in order to find out what is best for you.  In general, pricing is competitive.  Especially when you factor in the cost of a full-time database administrator and the license for the database itself these services begin to make a lot of sense.  That is, IF your database meets the right criteria.  The vendors will continue to enhance their DBMSaaS offerings.  Staying informed through the various blogs and product announcements may mean that an answer of no today may be an answer of yes in the future.  The right partner can help you make intelligent decisions.  Adaptivity prides itself on our ability to help you make the right decisions with regard to cloud suitability for your applications and databases.  Check out our offerings today at www.adaptivity.com.

No comments:

Post a Comment

Please keep all comments relevant to the particular blog post. Try to keep the comments positive and please avoid flaming either me or other posters. I reserve the right to delete any posts that are not relevant but I promise not to be an overbearing moderator. Thanks!