There are two kinds of technologists in the world: those who see the database as a means to end and those who see it as an end in itself. For a long time, the latter group has dominated the database conversation, which has focused deeply on performance tuning, optimization and architectural strategies like sharding, vector processing, columnar storage and data consistency models.
But the former group — largely made up of developers who just want the database to enable the vision for their application and then get out of the way — is in fact hugely influential in database platform decisions. Cockroach Labs has introduced CockroachDB Serverless, which aims to deliver a low-friction database service geared to those very developers.
The Way to a Developer’s Heart
Developers don’t want to fetishize the idiosyncrasies of a database platform, nor the care and feeding of it. They just want the database to be easy to set up, simple to use, cheap to run, and to be fast and reliable, to the point where they don’t even have to think about it. In effect, developers want the database to disappear, leaving behind just an API (application programming interface) with which to store, fetch, query and analyze their data. And hopefully, said API will be very similar to one they already know.
This is the narrative Cockroach Labs is glomming onto with CockroachDB Serverless, which the company is releasing in Beta form. The service is unabashedly aimed at the low-friction developer demographic, providing a data layer that is SQL- and wire protocol-compatible with the popular PostgreSQL database platform.
Much of this was explained to The New Stack during a briefing with Jim Walker, Principal Product Evangelist at Cockroach Labs. Walker summed things up by explaining that CockroachDB Serverless seeks to become “the database of choice for every developer,” and explained that the new offering is “a fully-elastic, relational, cloud database fronted by a familiar SQL API that enables developers to start building instantly without planning for capacity, performance, or availability.”
CockroachDB Serverless scales automatically, using no discrete clusters or nodes. It, therefore, requires no sizing, sharding or tuning. Instead, similar to cloud database platforms like Amazon Aurora and Google BigQuery, CockroachDB Serverless isn’t something that needs to be provisioned or explicitly spun up. Instead, it provides a “your wish is my command”-style interface.
The service is free for up to 5GB of storage and 25M “request units” (RUs — a usage abstraction comprised of compute, network and IOPS) per month, not even requiring a credit card to get up and running. Clearly, a method of payment will be required for projects with usage in excess of those entry-level thresholds but, even there, billing is premised on a purely consumption-based model. This also means developers will incur little expense while they learn or experiment with the platform. And costs for running a monetized application in production will ostensibly accrue commensurate with revenue.
The Cloud Giveth; Traditional Approaches Taketh Away
Though a large majority of enterprises and individual users now rely on the cloud as their primary platform for net new development, this move hasn’t addressed the many fundamental operational challenges databases have faced. For example, legacy database scaling approaches aren’t conducive to realizing the cloud’s elasticity advantages. Similarly, implementing traditional active/passive high availability in the cloud doesn’t reduce complexity, relative to on-premises scenarios. Meanwhile, the cloud adds the challenge of transaction latencies that on-prem installations don’t face. Clearly, if we can’t realize the cloud’s advantages and we’re also suffering from the new challenges it poses, then a reboot is needed.
In essence, CockroachDB Serverless extends upon the features brought forth by its predecessors, Cockroach Enterprise and CockroachCloud, by providing qualities like automated elastic scale, automated resilience, consumption-based billing, ephemeral clusters, instant starts, multitenancy, and more.
As mentioned previously, this CockroachDB Serverless release is a beta version. As such, it comes with some constraints, one of which is that it’s only available for single-region use. The company says, however, that it will be ready for multiregion consumption early next year. Walker told us that other features, such as automated geo-partitioning and a REST interface, are coming soon as well.
Comparators and Competitors
CockroachDB has often been compared to Google Spanner, given Cockroach CEO Spencer Kimball‘s tenure at Google and his contributions to the “Colossus” iteration of the distributed Google File System (GFS). But, in the case of CockroachDB Serverless, it might be more useful to compare it to scale-out PostgreSQL cloud offerings like the aforementioned Amazon Aurora or Azure Database for PostgreSQL – Hyperscale. Unlike those cloud provider “house brand” offerings, however, CockroachDB Serverless runs on all three major cloud platforms, without requiring an account on any one of them. This versatility may indeed prove very attractive to developers.
Cockroach will need that appeal though, as it battles the incumbency of the big three commercial relational database platforms (Microsoft SQL Server, Oracle Database and IBM DB2) and their open source counterparts (PostgreSQL, MySQL and MariaDB). As the company gains traction with enterprise clients, it must also curry favor with grassroots developers. If it can, then its adversaries’ incumbency may become a less powerful asset and their long legacy a growing liability.
Disclosure: Post authors Andrew Brust and Farheen Raparthi work for Blue Badge Insights, a research, strategy and advisory firm serving data and analytics software companies, solution providers and customers.
Cockroach Labs is a sponsor of The New Stack.