CockroachDB adds support for Kubernetes and geospatial data

roach-motel-2.jpg

In its new 20.2 release, which now includes general availability, Cockroach Labs adds support to a data type that has been at the top of the wish list for its clients: geospatial data. And to facilitate cloud-native implementation, the company is a new operator of Kubernetes (K8s). To summarize, the platform, Cockroach DB, was inspired by Google Cloud Key, provides an SQL relational transaction processing platform designed for distributed deployment.

The highlight of the new release is the addition of geospatial data types, a feature that topped customer wish lists. Geospatial data naturally fits a platform like CockroachDB designed for geographic distribution. The impending view is that geospatial data with the support of distributed scripts can be written in the node closest to the region. The obvious benefit is faster writing. And then for logistics customers like DoorDash, geospatial helps them more efficiently manage food delivery data. It also fits in well with CockroachDB’s existing support for spatial partitioning of data, so that it is located only on specific nodes or within specific data centers – it provides geospatial data still local. It can prove useful for companies with multiregional networks, whether it’s managing supply chains or IoT use cases.

Geospatial data connects JSON document data as an extended data type. We expect that the company will at some point get around adding support to time series data. The main challenge for cockroaches is that since they run on their own open source engine rather than a popular one like PostgreSQL, they can not easily piggyback on extended data type support that already exists in society – they have to start the development of added data types itself.

The 20.2 release also includes a new K8s operator that simplifies private or hybrid cloud installation. It adapts local editions of CockroachDB with Cockroach sky there are currently offers on AWS and Google Cloud. Specifically, the K8s operator will make it easier for customers running their own implementations to scale up or down. So far, the K8s operator is operating within a geographical area; we expect Cockroach Labs to add more regions at some point.

Another improvement is one that customers will not notice if written correctly. With this release, CockroachDB is changing its standard open source storage engine RocksDB to its own internally built engine, Rolling Stone (which is also open source and available for download on GitHub). The purpose was for the company to gain better control over its own destiny. As we recently reported, RocksDB has proven a popular engine as a log-based key store that was originally developed on Facebook and which has served a wide range of downstream utility cases.

But Pebble is a far more compact engine with a footprint that is only about 10% of the size of RocksDB. Cockroach has phased in Pebble over the past year, and at the next release, 21.1, is the only engine supported. With a more compact engine under its control, the company believes it will make the process of adding performance optimizations much more straightforward.

The company updates its platform twice a year with the latest release, 20.1 back in the spring, focusing on developer-specific features, such as enabling database schema restructuring without taking it down along with extended support for object relationship mapping (ORM) frameworks. Looking ahead, could a serverless cloud service be the next logical step for Cockroach to make life easier for developers?