When planning to use a DBaaS solution, customers will likely need help with tasks such as deployment, migration, support, off-site backup, system integration and disaster recovery. Then there are the applications that connect to the database and the databases themselves that need to be designed, developed, deployed, tuned and monitored. And what about organizations that are implementing hybrid systems or need help managing multiple cloud service providers?
DBaaS is an excellent solution for both DBAs and Application Architects to increase their level of agility, efficiency and cost effectiveness. Lean IT strategies benefit from potentials for lower infrastructure costs and faster delivery times for database management related functions allowing database professionals the ability to focus on performance optimization and DB technical strategies.
From the perspective of application development and ownership, DBaaS addresses many of the limitations inherent to a traditional RDBMS solution. A major benefit for developers is the ability to rapidly self-provision databases for temporary use at minimal cost.
Database cloud services eliminate the need for organizations to dedicate many resources to on-site database storage. They don’t have to install, configure or maintain hardware, and basic administration of software is fully automated. In addition to the infrastructure footprint housing the database itself, DBaaS will often cover the physical and administrative requirements for high availability and disaster recovery. Options for replication, backup and load balancing are “baked-into” the service.
With DBaaS, database-related processes become standardized and repeatable, allowing teams to more easily procure services, deploy applications, plan capacity and manage resources. The DBaaS model can also help reduce data and database redundancy and improve overall Quality of Service.
Understand the Limitations
Sound’s great…right?! Well, it is…as long as you understand how the service you are getting is defined and more importantly what the service does not allow for. There are big advantages to be leveraged with DBaaS, however there are also some limitations.
Anything put in the in the cloud, is subject to network performance issues outside of your direct control. If the Internet service provider, the cloud service supporting the database, or any points in between become clogged or go down, they might experience issues related to data latency or application failure. At least if a problem occurs in-house, the infrastructure team can more easily troubleshoot its cause.
In addition, features available in the typical RDBMS are not always available in a DBaaS system. For example, Windows Azure SQL Database (formerly SQL Azure) is Microsoft’s DBaaS offering that provides a database platform similar to SQL Server. However, Windows Azure SQL Database doesn’t support features such as data compression and table partitions, and the Transact-SQL language elements available in SQL Database are only a subset of those available in SQL Server. Amazon’s Oracle offering via RDS restricts use of the following features:
- Real Application Clusters (RAC)
- Data Guard / Active Data Guard
- Oracle Enterprise Manager (although “DB control” is OK)
- Automated Storage Management
- Data Pump
People looking to migrate databases to the cloud need to thoroughly asses what features may be needed but might not be available.
What about Database Administrators?
In addition, the nature of DBaaS (like any cloud based service) is limited by what can be automated in their service. They do not provide the targeted individual attention that may be needed to plan their configuration or tune their use. DBAs remain a valuable commodity whether operating in the cloud or in house. XaaS services delivered in the cloud do not accommodate non-standard requests or deep-dive tasks requiring human intervention or analysis.
Plan Your Work…Work Your Plan
Diligence is necessary when planning a move for database environments to DBaaS. The platform can offer considerable cost savings to an organization. For database admins DBaaS can allow them to increase their level of automation, simplify basic configuration tasks and focus on new technologies and opportunities for improving performance. Application developers benefit by the added agility and availability of development and test environments that can be provisioned rapidly. Application owners get more for less cost as environments supporting development are only paid for when they are in use and production environment resource costs are dynamically scaled with load.
The database tier is critical within the application tech stack. It is also one of the more costly components that business critical applications require. DBaaS solutions provide lower resource costs and much greater speed and flexibility during development. Customers have the opportunity to self-provision and self-administer for low criticality environments and DBAs can keep their attention on optimizing configuration and performance for systems where the level of importance to the business needs to be assured.