All we hear these days is the Cloud this and the Cloud that. Everyone is asking each other, "Are you in the Cloud yet?"
"And what is the Cloud?" you may ask. I'll tell you... It's a marketing buzzword; nothing more than a new way to describe third-party IT services. While these third-party services have been around for years and years, it's just now that having someone else handle some or all of your IT infrastructure has been picking up steam as a cool thing to do.
Clever marketing aside, third-party data and DBMS hosting is a worthy consideration. There are plenty of reasons to recommend it, from lower costs, scalability, and high accessibility rates, to name a few. On the other hand, there are just as many worrisome issues, including those of ownership, liability, and privacy.
In this installment of the Database Buyer's Guide series, we're going to look at the pros and cons of Cloud-based Database services to help you determine whether or not they might be a suitable choice for your business.
Database-as-a-Service versus Data-as-a-Service
Cloud-based database solutions fall into two basic categories: Database-as-a-Service (DBaaS) and Data-as-a-Service (DaaS). The key difference between the two is mainly how the data is managed.
DaaS gives you the ability to define your data and then query against this data from anywhere in the world that has an Internet connection. Unlike traditional database solutions, DaaS does not implement typical RDBMS interfaces such as SQL. Instead, the data is accessed via common set of APIs. Moreover, DaaS is best suited to basic data management querying and manipulation.
DBaaS is a far more robust data solution, offering full database functionality. In a DBaaS, a management layer is responsible for the continuous monitoring and configuring of the database to achieve optimized scaling, high availability, multi-tenancy, and effective resource allocation in the Cloud. Thus, the developer is spared much of the hassles of the tedious ongoing DB management tasks and operations, as those are automatically handled by the service.
There are three basic flavors of Cloud-based database services, which differ on how much flexibility the user has to customize the environment.
At one end of the scale, there are computing clouds where the user has access to a barebones machine with just an operating system to which he/she gets full flexibility in installing and configuring his/her preferred RDBMS software. This setup is known as an Infrastructure as a Service (IaaS) Cloud. A good example of this type of service is Amazon's Elastic Computing Cloud (EC2). This platform would be an excellent choice for someone who wanted to have full control over their hosted database.
Another common model for deploying RDBMS in the Cloud is the Virtual appliance model. A virtual appliance is a Virtual Machine environment image with a pre-installed pre-configured application. Amazon also offers pre-configured MySQL, Oracle, and Microsoft SQL Server virtual appliances for deployment in its EC2 Cloud.
Finally, Native Cloud Database-as-a-Service like Xeround's MySQL Cloud database typically uses NoSQL Databases, which are administered using a Web interface. Native Cloud databases tend to be better equipped to optimally use Cloud resources and provide better availability and stability, compared to non-Cloud RDBMS software being adopted for Cloud use.
The Pros and Cons of Cloud-based Database Solutions
As hot as Cloud Computing is right now, giving a stranger access to your data is not something that should be considered lightly. On the plus side:
· It's affordable: That's probably the first reason that companies want to hop on the Cloud bandwagon. With Cloud-based Database Solutions, you can greatly reduce operational costs and capital expenditures on hardware, software licenses, and implementation services because you only pay for what you use.
· It's both Scalable and Flexible: Database hosting companies are often well positioned to maximize resources for better efficiency and reduce unused capacity. They can also scale your services up or down to meet the changing needs of your business.
· Increased Efficiency: Cloud computing gives the benefit of shared hardware, automated processes, and familiar technologies. You and your employees can access the database from anywhere by using any PC, mobile device, or browser. It also reduces overall energy use.
· Security Concerns: One concern with respect to Cloud computing is that your data is accessible on the Web. That raises a whole set of questions. Can you take a chance that someone hacks into your database provider and steals your precious data? In the event of a security breach, who is responsible? If a third party loses your customers' information, you can't just hide behind your Cloud provider! At least, you shouldn't. Beyond the Web accessibility issues, how secure is the provider's physical location? Are they diligent in performing backups? Do they have a second off-site data repository? There's really no way to be one hundred percent sure. You just have to trust that your provider is taking good care of your data.
· Loss of Internet Connection Risk: Since your data transactions will be taking place over the Internet, you should consider how losing access to your database might affect your business productivity. Is that a risk that you can live with? There is a high availability standard called the five nines. That's an uptime of 99.999%, which works out to about five minutes of down time per year! Can your prospective host guarantee that kind of availability?
· Limited Customizability: When dealing with so many businesses, a Database Service Provider can only be so flexible. If you require in-depth customizations and integration with your current systems for your daily business functions, Cloud computing may not be able to accommodate to your requirements.
As we saw here today, the decision as to whether or not your business should embrace the Cloud model of data and data service management is not one that should be taken lightly. While the thought of unloading data management to a third party can be tempting, if any of the three cons mentioned above affect your business, the Cloud may just not be in the cards for you.
While you're weighing the pros and cons presented here, you may also want to peruse another article I wrote on Cloud-based database solutions entitled Should You Move Your MySQL Database to the Cloud? That covers some of the same subject matter as today, but with a more MySQL slant.