The term “cloud” is so ubiquitous that it means different things to everyone. For these purposes, we will define it in relation to infrastructure; the cloud is the ability to auto-provision a subset of available compute/network/storage to meet a specific business need via virtualization (IaaS).
As far as applications, the cloud is browser-based access to an application (SaaS), and, importantly, the utility-based consumption model of paying for these services that has caused a major disruption in the traditional models of technology.
This has led to a paradigm shift in client-server technology. Just as the mainframe morphed into mini-computing, which led to the client-server model, cloud-computing and Amazon Web Services (AWS), the ubiquity of the cloud is the next phase in the evolution of IT. In this phase, applications, data and services are being moved to the edge of the enterprise data center.
A CIO wanting to lower IT spending and mitigate risk has many options:
- Move budget and functionality directly to the business (shadow IT) and empower the use of public cloud options
- Move to a managed service — private cloud for the skittish
- Create a private cloud with the ability to burst to a public cloud (i.e., hybrid cloud)
- Move 100% to a public cloud provider managed by a smaller IT department
Each one of the options listed above comes with pros and cons. With all the available database options, it can be difficult to determine which one is the best solution for an enterprise.
The three key issues most central to an organization’s database needs are performance, security, and compliance. So what are best practices for database management strategies for each deployment option to manage those priorities?
Let’s briefly examine five use cases for deploying your enterprise database strategy: on-premise/private cloud, hybrid cloud, public cloud, appliance-based, and virtualized.
- On Premise/Private Cloud
- Hybrid Cloud
- Public Cloud
- Appliance Database
- Virtualized Database
- Selecting the Right Database
One of the main pros of this type of database deployment scenario is that an enterprise will have control over its own environment, which can be customized to its specific business needs and use cases. This boosts trust in the security of the solution, as IT and CIOs own and control it.
Where a customer is located relative to where data is located can impact legacy applications. Latency can be an issue if users located in a different part of the globe than the company are accessing data via mobile device, resulting in overall poor user experience.
Another con is capital expenditures (CAPEX). Traditionally, the break-even ROI for on-premise deployment — between hardware, software and all required components — is about 24 and 36 months, which can be too long for some organizations. Storage costs also can get expensive.
A feature that could be a pro or con, depending on how one looks at it, is that IT will have a greater involvement. This sometimes can impact an enterprise’s ability to go to market quickly.
Before moving to an on premise/private cloud database, it’s important to examine expected ROI — if the ROI timeline is more than two or three years into the future, then this option can be justified, but this timeline may not apply for all organizations.
Perceived security and compliance are other considerations. Some industries have security regulations that require strict compliance, such as financial services and health care. Countries like Canada, Germany, and Russia are drafting stricter data residency and sovereignty laws that require data to remain in the country to protect their citizens’ personal information. Doing business in those countries, while housing data in another, would be in violation of those laws.
Security measures and disaster recovery both must be architected into a solution as well.
A hybrid cloud is flexible and customizable, allowing managers to pick and choose elements of either public or private cloud as needs arise. The biggest advantage of hybrid cloud is the ability to do “cloud bursting.” A business running an application on premise may experience a spike in data volume during a given time of month or year. With hybrid, it can “burst” to the cloud to access more capacity only when needed, without purchasing extra capacity that would normally sit unused.
A hybrid cloud lets an enterprise self-manage an environment without relying too much on IT and it gives the flexibility to deploy workloads depending on business demands.
More importantly, disaster recovery is built into a hybrid solution and thus removes a key concern. An organization can mitigate some restraints of data sovereignty and security laws with a hybrid cloud; some data can stay local and some can go into the cloud.
The cons of a hybrid cloud are that integration is complicated; trying to integrate an on-premise option into a public cloud adds complexity that may lead to security issues. Hybrid cloud also can lead to sprawl, where growth of computing resources underlying IT services is uncontrolled and exceeds the resources required for the number of users.
While hybrid gives the flexibility to leverage the current data center environment with some best-of-breed SaaS offerings, it’s important to have a way to govern and manage sprawl. Equally as important is having a data migration strategy architected into a hybrid cloud. This helps reduce complexity while enhancing security.
The main advantage with public cloud is its almost infinite scalability. Its cost model, too, is an advantage, with pay-as-you-go benefits. It offers faster go-to-market capability and gives an enterprise the ability to utilize newer applications, as using legacy applications in the cloud can be challenging.
As in a hybrid cloud, sprawl can also be a problem in the public cloud. Without a strategy to manage and control a public cloud platform, costs can spiral and negate the savings and efficiency. But keep in mind that the public cloud may open the door to shadow IT, creating a security issue.
Data visibility is another downside; once data goes into a cloud, it can be hard to determine where it actually resides, and sovereignty laws can come into play for global enterprises. Trust in the public cloud is an issue for CIOs and decision makers, which is why hybrid — the best of both worlds — is such a popular deployment option.
Public clouds also are often homogenous by nature; they are meant to satisfy many different enterprises’ needs (vs. on premise, which is designed just for one company), so customization can be a challenge.
While a public cloud is operational expenditures (OPEX) friendly, it can get expensive after the first 36 months. Keep TCO in mind when deploying a workload: its lifecycle and overall cost benefit, as well as how the true cost of that application will be tracked.
Latency issues can occur, depending on how an enterprise has architected its public cloud and how it has deployed applications or infrastructure, which can greatly affect the quality of user experience. To improve performance, distributing apps and data close to a user base is a better solution than the traditional approach, where everything is in one data zone.
Disaster recovery will be built in, so there is no need for enterprise to architect it on its own. Security with a public cloud is always a challenge, but can be mitigated with proper measures such as at-rest encryption and well-thought-out access management tools or processes.
Traditionally, this is an on-premise solution — either managed by a vendor or in an enterprise’s own data center. There are many popular vendors that provide this solution, and using one vendor to control the complete solution can offer performance and support gains.
However, this also can be a disadvantage, because it locks an enterprise into a single vendor, and appliance-based databases tend to be a niche, use-case-specific option. Vendor selection is an essential process to make certain that the partnership works both in the present and the future.
Appliance databases, because of their specialized, task-specific nature, are expensive. They can be cost-effective over time if they are deployed properly.
One advantage of virtualization is the ability to consolidate multiple applications onto a given piece of hardware, which leads to lower costs and more efficient use of resources.
The ability to scale is built into a virtualized environment, and administration is simple, with a number of existing tools to administer a virtualized environment.
With virtualization, patching can sometimes be an issue; each OS sits on top of a hypervisor and IT may have to patch each virtual machine (VM) separately in each piece of hardware.
It’s best to plan for a higher initial CAPEX, because the cost of installing a database needs to be accounted for. An enterprise can opt for an open-source solution like kernel-based virtual machines (KVM), but this solution often requires additional set-up expenses.
A con is that the enterprise itself will be the single point of failure; if hardware fails, VMs go down. Fault-proof disaster recovery is a major concern and must be well architected.
There can be network traffic issues because multiple applications will be trying to use the same network card. The actual server an enterprise employs must be purpose built for the virtualized environment.
Virtualization is ideal for repurposing older hardware to some extent, because IT can consolidate many applications onto hardware that might have been written off. It is well suited to clustering; being able to cluster multiple VMs over multiple servers is a key benefit as far as disaster recovery.
It comes with a Capex, but over time, Opex is reduced because of consolidation (a lot of processes will be automated), so lower operational expenses and savings over time lead to a quicker return and lower total cost of ownership. However, licensing costs can get expensive.
An enterprise can achieve better data center resource utilization because of the smaller footprint, which saves on the costs of running servers and allows an enterprise to host multiple virtual databases on same physical machine while maintaining complete isolation of the operating system layer.
As you can see, selecting a deployment option is not a trivial matter. Therefore, how can a CIO or SI mitigate the risk of choosing one over another? Cost can’t be the only driver.
Just as mainframe eventually led to cloud, enterprises may find success if they can enable the simple path from legacy on-prem databases to a private cloud with APIs to the public cloud that will connect a legacy architecture to mobile, Internet of Things (IoT), and automated intelligence (AI), and, potentially a launching pad for a hybrid cloud architecture with best of breed public cloud services: storage, applications, etc.
Every enterprise has its own challenges, goals and needs and there is no one-size-fits-all recommendation when selecting a database. Carefully examine your own infrastructure as well as ROI expectations, long-term business goals, sovereignty laws, IT capabilities, and resource allocation to determine which of these databases is the right one for your enterprise — now and years down the line.
This article was originally posted “Database Dilemma: Selecting The Best Database For Your Organization” from Cloud Strategy Magazine.