Fresh out of Gartner’s research is a market prediction that in just three years (by 2022), 75 percent of all databases will be in cloud – and many deployments are what the firm calls “cloud-first” or “cloud-only.”
When we speak about “the” cloud, we are really speaking either of a specific cloud, say AWS or Google Compute Platform; or more generally about a way of managing computing infrastructure. Many companies are racing to put their data into not just a single instance but a “fabric” of clouds, based upon geographic regions, costs for different applications, or security requirements.
At Aerospike, we’ve been seeing aggressive cloud-based deployment for some time. In fact, more than 50 percent of all Aerospike deployments are in the cloud. Before we look at Aerospike in the cloud in more detail, let’s review some basic definitions.
Private Cloud is a way of managing all or a portion of a company’s data center in a way that provides the same on-demand managed service that a cloud provider does. If an internal developer needs a system; he can specify it and get the information to attach to it. Typically, this will be an Intel-based server, typically Dell or HPE, in a rack, with a set amount of compute and storage. It may also be possible to request storage from a storage area network (SAN) or virtual storage network (V-SAN) and have this attached to the compute server. Charges are placed against an internal budget. Under this model, the convenience to the users of resources is achieved, but the economies of scale are not necessarily the same for most companies as for an Amazon or Google. This is really just a new way of managing the data center to be more responsive and agile – and the capital costs and benefits accrue to the company.
Public Cloud is when a large provider such as Amazon, Google, Microsoft or IBM supplies the hardware and infrastructure software on a subscription basis. (Some of these providers started out selling the excess capacity that they had on hand for their own businesses use.) They’ve since moved on beyond that. The sophistication of the data centers and the economies of scale for these larger providers is a strength. They also have developed and continue to evolve new computing and application models that provide for a high degree of elasticity. The microservices models and NoSQL databases are a key part of these new models, allowing applications to scale up and down as the loads increase and decrease. While the elasticity is not perfect (you cannot always get the number of instances of the size and capability you need), for the most part it allows a very efficient use of resources. This can be a real benefit for seasonal businesses like retail. A key benefit is that not only do you avoid capital costs, you also require less IT staff. You request and pay and you get for the time you need.
Hybrid Cloud is a term used to describe using a combination of on-premise data center assets managed as a private cloud in combination with public cloud resources. Some consider a true Hybrid Cloud to be one where you can combine resources for the same application from the private cloud and the public cloud. One key benefit is using the public cloud as a way of gaining elasticity for the private cloud. This is often called “bursting” to the cloud, where when resources at the data center are exceeded you can gain resources to expand clusters with resources from the public cloud.
Multi-cloud is used to describe when a company decides to use multiple cloud providers. Sometimes this occurs when one company acquires another, but often it is a conscious decision to avoid vendor lock-in with one provider. Companies have started to be more sophisticated about the strengths of a given cloud provider for specific uses and applications. This may be based upon performance, ease of management in a given situation, but also may take into account cost efficiencies for different use cases. An example is the differences in egress costs where data is moved from a public cloud to a private cloud. This often occurs when back office systems need to be integrated with front-office or edge systems.
As companies gain experience using the cloud(s), most are consciously moving to a multi-cloud/hybrid cloud model. Smaller companies and startups often begin with one cloud provider delivering all their computing needs, but through being acquired or as they achieve scale often migrate to more complex patterns.
This all sounds rather complex, but as the cloud has evolved so have the tools to manage complex and dynamic computing infrastructure. The term “infrastructure as code” is often used to describe the new paradigm. Scripting languages and orchestration models such as Kubernetes, Ansible, Chef, and Puppet provide languages and a well-developed vocabulary for deploying and controlling on-demand resources to serve elastic and scalable applications built for the new cloud computing world.
Aerospike and Cloud Infrastructure
So, what does this have to do with Aerospike and our database? Many of our customers (more than half) are deploying across the models described above, in increasingly sophisticated hybrid or bursting models that provide elasticity at hyperscale performance
One customer in the retail space modified their deployment scripts to work in conjunction with their management tools to allow bursting from their data center to a public cloud provider. As the resource needs of their Aerospike cluster approached their capacity they burst out into the public cloud and scaled up the cluster in real-time. This allowed them to keep up with demand on their e-tail sites and realize the value they had created during a large promotion.
Many of Aerospike’s core strengths are ready-made for the cloud, including a shared-nothing architecture and automatic discovery, healing and replication. We’ve worked hard to partner with the major platforms and build out the seamless installation guides and tools needed for the cloud. This includes defining instances that work well for real-time NoSQL databases, and to embrace and configure new technologies to leverage the full value of hardware advances, like Intel Optane DC persistent memory technology.
There’s still work to be done, after all, the cloud continues to advance quickly and each cloud has its own native nuances and approaches. And customers clearly want hybrid approaches. Part of the driver for hybrid is to take advantage of unique capabilities from different cloud vendors.
But multi-cloud management is a mess. And we are far from being able to seamless switch infrastructure between providers. Provisioning and management continue to improve with a set of RESTful APIs exposing all of our functionality in terms of deployment and management in a way that can be used within Kubernetes and other orchestration models. More and more our large community of customers openly share their scripts and orchestrations on our Aerospike Community Launchpad, helping each other at all turns.
Another way Aerospike is supporting our customers’ efforts in the cloud is by working closely with the major cloud providers to help them define instances that work well for real-time NoSQL databases. This includes working with them and other partners such as Intel to ensure that you will be able to extract the maximum value from new capabilities such as non-volatile RAM technology. And of course, we continue to work with them on how best to configure Flash drives so that we can deliver the price/performance that you have come to expect.
We’re walking hand in hand with our customers, and listening and adapting as they aggressively e embrace cloud innovation for great gains. We are actively engaged with the major cloud providers and are listening to you, our customers, and to our partners to ensure that we deliver the best experience and highest performing NoSQL database to support your real-time needs. Let us know what you think.
Listen to one of our customers talk about their on-premises and hybrid cloud deployment: