Couchbase, which recently scored $105 million in venture financing, is going live with its managed Database-as-a-Service (DBaaS), Couchbase Cloud. Initially, the service will be available on AWS, with Azure and Google Cloud to follow later on.
The company has been preparing for this day for several years, first reengineering the database into microservices, and last year, as we reviewed, releasing a Kubernetes (K8s) operator. The operator, which Couchbase calls "autonomous" (strictly speaking, it isn't "autonomous"), is configured by a YAML file that specifies the requirements for instances and related dependencies, and the necessary Helm charts for defining K8s workflows. Couchbase Cloud utilizes this architecture for its cloud service. Couchbase claims that dozens of customers have either kicked the tires or are in production with the K8s operator.
Couchbase Cloud has been in managed beta since February. Currently available on AWS in North America and EMEA, over coming months the footprint will expand to Asia Pacific. Once deployed, Couchbase manages software upgrades and maintenance
On AWS, Couchbase Cloud works inside a Virtual Private Cloud (VPC) – that is, it appears as an extension of your internal network. Specifically, it runs on Amazon's Elastic Kubernetes Service (EKS). Through the K8s operator, Couchbase Cloud automates the tasks for elastic scaling and provides fine-grained control to map workloads to underlying AWS compute instances.
Compared to established DBaaS services, Couchbase Cloud offers some enhancements courtesy of its modern K8s architecture. They include a unified control plane that spans any modern Couchbase deployment – that is, any Couchbase deployment that uses the K8s operator. And because of the unified control, you can replicate across Couchbase K8s clusters, whether they are in your data center or in the public cloud. Ultimately, when Couchbase Cloud adds support of Azure or GCP, this could mean unified control across a multi-cloud deployment.
On the other hand, Couchbase Cloud lacks some of the ease associated with cloud DBaaS services. For instance, it is not a simple buying experience -- you don't go to Couchbase and order up a service with the instances automatically prescribed based on your desired level of service, and you are not billed from one place.
By comparison, most cloud DBaaS services are billed from a single source -- the DBaaS provider. Many -- although not all -- also abstract infrastructure when you start them. For instance, Amazon DynamoDB or Azure Cosmos DB abstract the underlying compute by use units relating to capacity (of compute, storage, memory, etc.).
For Couchbase Cloud, you first order up compute from Amazon EC2 just as if you were planning to run your own virtual cluster in the cloud. Then you go to Couchbase and order up the managed cloud service to run on it. You will be billed separately by AWS for infrastructure and Couchbase for the database service, although Couchbase will soon streamline this a bit by having Couchbase Cloud offered and billed through AWS Marketplace. Couchbase claims that this arrangement allows customers to leverage their existing AWS subscriptions and whatever discounts they have already negotiated.
Our take is that architecturally, Couchbase has gone all-in with a modern, cloud-native and cloud-neutral architecture that will allows its customers the flexibility to choose and manage deployment(s) in the cloud(s) of their choice, and be able to bridge this with any on-premise instances that they are running on their own internal K8s clusters. But for now, given the complexity of the buying experience and the need to configure your own clusters, Couchbase Cloud does not offer the same degree of simplicity that many established DBaaS services already offer. This makes it best suited for sophisticated customers that already have a fair degree of experience with compute clusters and cloud IaaS services, and we hope that as Couchbase mounts the learning curve with the new service, that it will subsequently add a prescribed tier to its offerings.