CrateDB 3.2 (stable) is available.
In brief: support for changing the number of shards on existing tables, enhanced PostgreSQL dialect compatibility, the addition of window functions, and stricter license handling.
Here's a detailed overview:
As more and more customers use CrateDB to power their Internet of Things (IoT) and machine data applications, the need for window functions grows.From the PostgreSQL docs:
"A window function performs a calculation across a set of table rows that are somehow related to the current row. This is comparable to the type of calculation that can be done with an aggregate function. But unlike regular aggregate functions, use of a window function does not cause rows to become grouped into a single output row — the rows retain their separate identities."
In CrateDB 3.2, aggregation functions can now be used in combination with time windows. This is an important step forward for our window function support.
We will continue to work on this feature.
We improved PostgreSQL syntax compatibility, increasing the number of PostgreSQL clients, tools, and libraries that work with CrateDB.
Here's a common problem: you've set up your CrateDB cluster, and it worked fine at first, but now you're experiencing problems trying to scale up. In most cases, this is because the original sharding configurations you chose are sub-optimal for the new size of your tables.
In the past, the only way to address this issue was to effectively create new tables with a new configuration and copy the data across.In CrateDB 3.2, however, you can now increase or decrease the number of shards for an existing table.
About a year ago, we added built-in support for MQTT. However, most customers are using RabbitMQ or Azure Event Hub for messaging queues and streaming, so use of the CrateDB MQTT feature has been low.
We want CrateDB to be sustainable and compact with a clear focus. To that end, built-in MQTT support is deprecated in CrateDB 3.2 and will probably be removed by 4.0.
License handling has changed.
Previously, CrateDB could be switched into the enterprise edition by configuring an enterprise license.
In Crate 3.2, enterprise features are on by default, and you have 30 days to try them at no cost. After 30 days have passed, you will need to add an enterprise license or configure CrateDB to run as the community edition.
(Subject to conditions, you can run CrateDB in production for free if you are a non-profit organization or an educational institution.)
We also made a bunch of smaller changes in this release, for example:
- Renaming tables is now atomic
- The CrateDB admin UI is now available in French
- New functions like generated series
- Unnest can now be used in the select column
Do you want to help shape the CrateDB product roadmap? It will only take you a few minutes.