Databases in the Cloud
Technology leaders are being inundated with a flood of new cloud architectures, strategies and products – all guaranteed by vendors and various industry pundits to solve all of our database challenges. This seemingly endless array of public cloud based DBMS offerings can quickly become bewildering.
DBaaS and DBPaaS Defined
Like any other term that is associated with the cloud, the definition of DBaaS and DBPaaS architectures often depends upon the vendor or industry expert you are talking to.
DBaaS and DBPaaS are multi-tenant systems that, depending on the vendor and architecture chosen, provide customers with varying degrees of scalability, elasticity and administrative self-service. Let's review the 2 key terms:
Elasticity – The ability of a system to dynamically increase or decrease computing resources based on current, real-time workload changes. An elastic system is able to automatically provision computing resources to meet the current workload demands placed upon it.
Scalability – The ability of a system to be easily scaled to meet forecasted future demands – as in capacity planning.
Database as a Service (DBaaS) DBAs have access to the database instance and, depending on the provider, are able to perform the majority, or a subset of, instance administrative activities. The vendor providing the service takes care of the hardware and OS layers as well as the database binaries. In addition, DBaaS vendors offer varying levels of features that may include monitoring, patching, event notifications, geo-replication for availability and backups.
Database Platform as a Service (DBPaaS) combines Database as a Service (DBaaS) with Platform as a Service (PaaS). DBPaaS providers raise their level of ownership to include the database software. DBPaaS DBAs perform very limited or no database instance administration activities.
Hybrid DBMS Clouds
Hybrid DBMS clouds are the DBMS vendors' attempts to overcome a lack of consistency between public and private implementations.
Many database vendors' on-premises database offerings differ from their public cloud counterparts. In addition, public cloud implementations also differ from each other. Oracle, Amazon, Google all offer cloud versions of MySQL and, although very much alike in many areas, they also have key differences.
The environments often differ in database features and functionality, data access mechanisms, administrative processes and interfaces, maintenance utilities, monitoring, security controls, backup/recovery, disaster recovery and tuning and performance.
A utopian hybrid DBMS cloud would be an environment that has a combination of public and private cloud DBMS architectures that are totally transparent and seamless to administrators and developers.
For developers, it would be an environment that allows 100% code compatibility between private and public clouds.
For DBAs, it would be an environment that is monitored and administered exactly the same way, regardless of whether that system is running on a server in the shop’s data center or in the public cloud.
Cloud DBMS - Attractive, Cost Effective Alternatives to On-Premises Systems
The rapid growth of cloud DBMS offerings are providing organizations with cost-effective alternatives to on-premises systems. When calculating TCO and return on their database investment, savvy decision makers are now considering cloud systems as attractive alternatives to more traditional on-premises database data stores.
RDX Cloud DBMS Recommendations
Evaluate Architectures - Not Products
In order to thoroughly evaluate public cloud based DBMS offerings, IT professionals must examine their architectures, not just DB products. This includes the vendor’s costing models, provisioning mechanisms, interfaces, server hardware, storage architecture, operating system, database, security controls and edge technologies and products. The cloud DBMS vendor’s architecture must be evaluated and compared to competing offerings.
Understand Vendor Lock In
Customers are often required to tailor their database deployments to the vendor’s cloud based architecture. The amount of tailoring required is directly proportional to the level of complexity and effort required to switch cloud DBMS providers.
Choose Your Vendor Wisely
With most on-premises systems, your organization is able to control the entire environment – hardware, software and ongoing administration and maintenance procedures. With public DBMS cloud implementations, your system’s availability, performance and security is now also dependent upon a third-party cloud services provider. You will no longer be in control of your own destiny, so choose your vendor wisely.
Don't Expect Your Staff to Become Cloud DBMS Experts Overnight
It will take time for your personnel to learn cloud based database management systems. Depending on the vendor, their architectures can range from simple to complex. Any new architecture, including DBMS public cloud implementations will require training time. Most vendor offerings have interfaces that allow customers to configure their cloud environment. Depending on the vendor, these interfaces can range from rudimentary to rocket science.
Staffing Changes May Be Required
Cloud DBMS architectures may require changes to your support team’s organizational infrastructure. Database and application architects play an important role in the selection, configuration and implementation of public cloud based DBMS platforms.
The vendors provide user interfaces that allow customers to configure the cloud DBMS environments. There is a significant learning curve, and personnel must be dedicated to learn and fully understand how the chosen vendor’s configuration and provisioning services are utilized.
No Database is an Island
Most database systems are not stand alone. They take data feeds from other systems and may generate and refine data that is ingested by other applications. Performance becomes an issue when large files need to be transferred to the cloud database for ingestion or the cloud database sends data to other systems for processing. When selecting databases for cloud implementation, evaluate its interaction with other systems. If you don’t, you may find that your staff will spend a significant amount of time wrestling with the tasks of getting data into and out of the cloud database.
Expect Policy and Procedure Changes to Occur
Public cloud DBMS systems are monitored and administered differently than their private cloud counterparts. New policies and procedures will need to be created and changes to existing documentation will be required.
Impact on Existing Toolsets
Application development, monitoring, administration and security tools that are standards for your shop may, or may not, work with the cloud based architecture. Your personnel will need to evaluate the impact that the new cloud based environments have on your in-house toolsets.
Be Aware of Feature Mismatch
Cloud DBMS users can be affected by the consistency problems previously described in this white paper. They find out that not all of the database features their applications rely upon are available in the cloud, or the data access mechanisms they use don’t work exactly the same way. Personnel are then required to spend additional time reducing the negative impact of issues generated by the lack of consistency between public and private cloud DBMS architectures.
Security is Still an Issue
Is the data you are storing in the cloud regulated by internal or external security policies or protection laws? Regardless of what the vendors and industry pundits tell you, you are increasing the security risk when you store data in the public cloud. More people are becoming involved in the administration of your environment. You are sharing the responsibility of securing your data with a third-party provider and are relying upon the quality of their security controls. This sharing of security does not mean that you turn the responsibility of securing your data over to the vendor. Organizations choosing to implement cloud based DBMS systems need to increase their level of scrutiny.
RDX Cloud DBMS Services
Cloud DBMS Migration Services
Migrating databases to the cloud doesn't have to be a challenge. RDX has extensive experience in cloud migrations and offers best practices and guiding principles designed to achieve successful cloud implementations.
DBMS Application Needs Analysis
RDX works with the customer to determine if the application's requirements for security, availability, performance and DB features can be achieved using a cloud based database system.
Cloud DBMS Vendor Evaluations
The market arena has exploded with dozens of vendor offerings that range the spectrum – from niche solution providers to super-sized competitors that include Amazon, Oracle, Microsoft and IBM. RDX helps the customer to design and perform a well thought out, detailed analysis of the competing offerings.
RDX's migration team will create database migration cost estimates and assist customers in the development of migration project plans with action items, timelines and milestones.
Test Plan Creation and Execution
The creation of thorough test plans prevents unwanted surprises from occurring during production migrations. RDX works with customers on the creation of test plans that include establishing performance benchmarks on existing environments and cloud systems, and the testing of overall application functionality.
Detailed production migration plans and turnover checklists result in less error prone and less stressful production migrations. RDX partners with the customer to design and execute robust production migration test plans and turnover checklists.
Cloud DBMS Support Services
Once the migration is complete, RDX's support professionals provide the same high-quality monitoring, administration and problem resolution services for cloud databases as they do for on-premises environments.
Cloud DBMS Monitoring
Monitoring tools provided by cloud DBMS vendors vary greatly in features and functionality. RDX's monitoring specialists thoroughly evaluate the selected vendor's monitoring architecture and design and implement a monitoring strategy that meets each customer's unique needs.
In addition, RDX is also able to utilize SolarWinds to monitor most popular cloud DBMS architectures. SolarWinds provides comprehensive application and server monitoring for alerting, reporting and management.
24/7 Database Operations Center
RDX dedicates an entire team of professionals that are responsible for creating, implementing and enhancing a strategic blueprint for the proactive monitoring and trouble-shooting of cloud based database applications. Since the proactive support blueprint is already in place, companies employing RDX to support their cloud databases do not have to spend the additional monies required to create a proactive support environment.
Cloud DBMS Administration
RDX is able to provide the same robust set of administration services for cloud database systems that we do for on-premises implementations. RDX's cloud DBMS support professionals provide a full suite of DBA services that include object change management, SQL and database tuning, problem analysis and correction, security, backup/recovery, application development support and advanced feature analysis and implementation.