Here at Cockroach Labs, we want to arm you with tools you need to build better products, deliver better customer experiences, and maybe even create the next billion-dollar idea. Our goal with CockroachDB is to make it easier for any and every developer to deliver data-intensive applications, allowing them to easily take advantage of high availability and elastic scale.
With our latest release, CockroachDB 20.2, we have added updates to make developers even more productive with a broader range of workloads. We’ve also continued to improve the security and management capabilities of the database and, as always, have made considerable improvements to the performance of CockroachDB. With this release we are also incredibly happy to note that the majority of these new capabilities are available in our free option, CockroachDB Core.
With CockroachDB 20.2 you can now:
As a general-purpose, distributed SQL database, CockroachDB is the right choice for any data-intensive application. The updates in 20.2 expand CockroachDB’s support to more workloads and give access to more developers. We’re excited to see what you build!
Read on for more details, then head over to the 20.2 Docs for a full list of what’s new. Note that all features mentioned in this blog post are available for free in our open-source option. If you want to try out CockroachDB 20.2 yourself, you can download the release here or try it for free on CockroachCloud.
In 20.2, we focused on giving developers more tools, so they can build more types of applications and realize the full potential of those applications.
Spatial data powers some of the world’s most innovative apps and services, letting you answer questions like, “Where’s the nearest gas station?” and “How long will it take for my ride-sharing vehicle to arrive?” and even, “Where can I catch a Pokémon?” The only problem is, this data has been locked away in brittle legacy or separate specialized databases, making it difficult for developers to support large datasets in the cloud.
With 20.2, we give spatial data the same first-class treatment as other data types, bringing it into the cloud age and making it easier to develop applications that use it. CockroachDB is the first SQL database to build this functionality from the ground up for a distributed environment. This means you can now effortlessly scale your spatial data and have the confidence it will survive outages. And you can serve all your customers with fast, always-on experiences no matter where they are on the globe.
CockroachDB now supports the following, all of which are open-source, available for free, and accessible with PostGIS-compatible SQL:
Our DB Console (formerly Admin UI) displays metrics like SQL performance, network traffic, and storage capacity and is critical for troubleshooting and debugging. CockroachDB 20.2 adds two new pages to help developers introspect and understand query performance:
CockroachDB is wire compatible with PostgreSQL and delivers standard SQL syntax, so you can use our database as your next generation relational store. In 20.2, we’ve improved our SQL capabilities adding:
CockroachDB supports a variety of popular data access tools, including ORMs, making it easier to develop in your preferred programming language. Specifically, for 20.2 we improved support for Java by adding better compatibility with Hibernate, MyBatis, and Spring Data JDBC; and Ruby by adding compatibility with Active Record. We also built out an adaptor for the Go data access layer upper/db.
Many thanks to all the community developers who collaborated with us on these projects. Don’t hesitate to let us know in Slack if there’s a tool you wish CockroachDB supported, or if you’d like to collaborate on building out support!
As with every release we are committed to constantly improving CockroachDB’s performance and we’ve made significant advances with 20.2.
Your database should make you more efficient, not slow you down and 20.2 introduces updates to let you more seamlessly deploy and manage CockroachDB—both with an Enterprise license and for free.
CockroachDB is already the easiest database to run with Kubernetes—indeed, it is the only database architected and built from the ground up to deliver on the core distributed principles of atomicity, scale and survival. This means you can manage your database in Kubernetes, rather than alongside it. And hundreds of our customers are doing just that.
Today we’re introducing CockroachDB on Kubernetes, a version of our distributed database that packages up CockroachDB with our brand new, open-source Kubernetes Operator. We’ve learned a whole lot about Kubernetes over the past few years by using it for our own database-as-a-service, CockroachCloud and we’ve packaged many of these learnings into an open-source Kubernetes Operator. This offering makes CockroachDB even easier to deploy on Kubernetes,
With CockroachDB on Kubernetes, you get a truly cloud-native database plus automated management and best practices with our new Operator:
We want you to be able to build scalable production applications on our community option, CockroachDB Core. And with each release, we carefully review all of our capabilities to determine if any existing or new features should be placed into Core. We’ve outlined a set of guidelines to help us make these determinations and it seems we increasingly err on the side of Core these days.
In our last major release (20.1), we added Role-Based Access Control (RBAC) to CockroachDB Core, giving community users more control over security. In this release, we’ve already spoken to the new Spatial capabilities that have been added to Core, and we’ve also added more advanced backup/restore capabilities to Core, including BACKUP, RESTORE, and EXPORT.
We’ve been delighted to see CockroachDB Core clusters grow to support terabytes of data, and we recognize that scalable, distributed backups are crucial for these types of production applications. We hope these additions will let our community users achieve both effortless scale and peace of mind in production, with rock-solid disaster recovery plans:
More advanced Backup features, such as Incremental Backups, Encrypted Backups, Locality-Aware Backups, and Revision History remain only in CockroachDB Enterprise and CockroachCloud.
We’re incredibly grateful for the community feedback that challenges us to make our product better—for every discussion thread, Slack post, and email. Keep them coming!
To make CockroachDB as low-touch as possible, we’ve added more automated management capabilities and general improvements to operations.
With 20.2, we’ve continued to improve CockroachDB’s security and compliance story to meet enterprise requirements and data privacy regulations.
With the goal of continuous improvement of CockroachDB, our team built a new storage engine from scratch, called Pebble. Previously, CockroachDB used RocksDB, and while it has served us well, we saw an opportunity to further enhance CockroachDB with a purpose-built storage engine.
Pebble is an open-source key value store written in Go, and it bring a number of improvements to CockroachDB:
Pebble is the default storage engine in CockroachDB 20.2, with the option to enable RocksDB if desired. Learn more about Pebble in this blog post.
With the updates in CockroachDB 20.2, we continue to move towards a world where the database automatically handles all rote operations, scale, and resilience. It gives you a flexible platform you don’t have to worry about. It works, and it opens up a world of possibilities. And all that means you can focus your energy and output on developing, creating, and innovating. CockroachDB 20.2 is the database for modern cloud applications—let’s see what you can build!
This blog post covers just a sampling of the updates in 20.2. For a full list, head over to the 20.2 Docs. To try out these features yourself, just download CockroachDB Core or spin up an instant, free cluster on CockroachCloud, our CockroachDB-as-a-Service offering.
Finally, we love feedback and would love to hear from you. Please join our Slack community and connect with us today!