Cockroach Labs, provider of distributed SQL databases, has updated its CockroachDB database with new automation and scalability features.
CockroachDB 22.1 became generally available on May 24th and is the first major update to the database since Cockroach DB 21.2 release was released in November 2021.
Cockroach Labs is based in New York has raised $633 million in venture capital, including a $160 million round in January 2021. The rationale behind CockroachDB is to enable a distributed and highly resilient database that cannot easily fail or die, similar to it is difficult to kill a cockroach in the physical world.
The CockroachDB 22.1 update integrates a new management API aimed at making it easier for developers to programmatically access the database in DevOps and automation tools. The new update also provides more insight into database operations to improve performance and operational efficiency.
The distributed SQL database market is growing as vendors look to help enterprises scale out deployments. Among the major players in the market Distributed SQL Database Provider Yugabytewhich grossed $188 million as of October 2021. Google recently released its AlloyDB database as a newcomer to the niche.
AlloyDB, Yugabyte, and CockroachDB are all compatible with the open source PostgreSQL database to varying degrees. A vulnerability that CockroachDB says it is working to close allows for even more PostgreSQL compatibility.
CockroachDB users employ distributed SQL database upgrades
Among the users of CockroachDB is the digital product development company RapidOps, based in Charlotte, NC, which uses the distributed SQL database to power its custom sales platform, Salesmate.
The company started with MySQL, but that database wasn’t able to meet Salesmate’s needs as usage increased, said Dipesh Patel, CTO and co-founder of RapidOps.
CockroachDB now serves as Salesmate’s system of record because it meets Salesmate’s needs in a distributed database that includes horizontal scaling capabilities, efficient backup and recovery processes, and the ability to tie data to a specific geographic location, Patel said.
A key challenge for Patel is enabling automation across the RapidOps environment, which wasn’t quite as easy as he might have wished in previous versions of CockroachDB.
“Specifically for 22.1, we’re most excited about the new API as it will allow our engineering teams to programmatically control the deployment, scaling and monitoring of our clusters,” said Patel.
The distributed SQL database CockroachDB 22.1 adds access control
One of the features in the CockroachDB 22.1 update is a feature the vendor calls access control.
Access control was previewed in a previous release, but it wasn’t enabled by default, said Peter Mattis, CTO and co-founder of Cockroach Labs.
The ability is important because it allows the system to automatically deprioritize certain operations when it becomes overloaded. A system can become overloaded for a variety of reasons, including bugs in the software causing resource contention, or a database operation error.
Admission control works by providing the ability to delay database operations such as a schema change when the congestion condition is triggered in order to give a higher priority to maintaining availability and performance for the database as a whole.
The distributed SQL database CockroachDB 22.1 offers configurable quality of service options for running workloads, in addition to enabling access control by default.
“If you run multiple microservices on a cluster, you can prioritize traffic from one of those microservices over another,” Mattis said.
Time-to-live capabilities offer new data management options
One of the more esoteric yet significant features in CockroachDB 22.1 is a feature known as Time to Live (TTL), which specifies how long a given row or data entry should exist in the database before it is deleted.
“It’s very common that you have a spreadsheet that you want to put data in and the data is only useful for a specific period of time,” Mattis explained. “Maybe the data is only useful for a week and then a report is made and then the data is no longer useful.”
Before the CockroachDB 22.1 distributed SQL database update, users had to manually delete the old data or write a custom script to remove data that was no longer useful. With TTL, users can now automatically remove older data.
But wiping data with TTL also leverages resiliency features in the database just in case the removed data is needed at a later date, with a feature called Multi-Version Concurrency Control, Mattis noted.
“So if you delete a piece of data, it still exists for a certain period of time,” he said.
Filling the PostgreSQL compatibility gap in the future
A primary goal of Cockroach Labs is to provide as much compatibility as possible with the open source PostgreSQL database.
A missing element is support for user-defined functions, which allow users to perform user-defined operations on data within a SQL query, e.g. B. a data transformation.
“We are aiming for full Postgres compatibility and are gradually moving towards that,” said Mattis.