Cockroach Labs announced today the public beta of CockroachDB Serverless. CockroachDB Serverless delivers a fully elastic cloud data infrastructure that enables building applications with less planning for capacity, performance, or availability. It is based on CockroachDB, a NewSQL database that seeks to combine the scalability of NoSQL systems with ACID guarantees of a traditional database system.
CockroachDB Serverless is a fully elastic and globally distributed database. It allows developers to instantly start an instance without setting up infrastructure and eliminate database operations. It includes built-in autoscaling and features a pay-per-use pricing model with a free tier, accessible without a credit card and commitment.
InfoQ spoke with Jim Walker, principle product evangelist at Cockroach Labs, regarding the announcement.
InfoQ: Is the CockroachDB serverless offering hosted on major cloud providers' infrastructure, or is it on CockroachDB's infrastructure? Which cloud providers and geographical regions are supported?
Jim Walker: CockroachDB Serverless is offered on AWS and GCP. As a beta release, it is single-region for now, and we will expand to multi-region and a global serverless database soon. Within each cloud provider, it is available to be deployed in three different distinct regions.
InfoQ: How does pricing work for the serverless offering? Do users pay for compute, storage and networking separately? How is consumption measured?
Walker: Our approach to pricing is based on three principles: make it easy to understand, deliver a free option, and ensure there are never any surprises with your bill.
When you create a CockroachDB Serverless cluster, you define a spending limit, and we ensure that you will never have a bill over this amount. We also provision 5GB of storage and 25M Request Units/month for free for every cluster. If you need more storage or Request Units, they cost $1 per additional GB storage and $1 per additional 10M Request Units.
Storage is measured as the logical size of your database, which is the size of all your rows. It's worth noting that CockroachDB Serverless automatically stores three replicas of all data across different AZs so that you can survive the failure of an entire AZ.
Request units measure the amount of compute and I/O operations each transaction will incur. Every transaction has varying requirements for resources, and we rate them on the backend. These amounts reset each month.
InfoQ: Is there complete feature parity between the serverless offering and the "regular" offering? What are the differences?
Walker: CockroachDB Serverless is a beta and not at feature parity with our flagship offering CockroachDB Dedicated. Most notably, it is not multi-region yet, and the API is not available. Further, the UI is limited, and backup/restore capabilities are scheduled daily and cannot be controlled. We expect better coverage early next year.
InfoQ: What is the expected cold-start latency for CockroachDB Serverless?
Walker: We expect a dormant cluster to be woken in under 100ms, and new cluster creation is measured in seconds.
InfoQ: How would you recommend users to choose between the serverless and other offerings? When would you advise users to avoid the serverless offering?
Walker: We recommend users choose CockroachDB Serverless for small projects, prototypes learning SQL, and getting started with CockroachDB. Production workloads with deeper requirements should choose CockroachDB Dedicated.
Serverless computing is a cloud computing execution model in which the cloud provider allocates machine resources on-demand, taking care of the servers on behalf of their customers. It became increasingly popular in recent years, with an increasing number of providers implementing a serverless offer.
An increasing number of providers now offer serverless database platforms as well. These offers include Amazon Aurora serverless, Azure SQL Database serverless and others. They aim to bring the benefits of the serverless execution model to the world of operational databases.