Skip to content
Blog

CrateDB v5.7 Release: Support for Foreign Data Wrappers, JWT Authentication, GCS Repositories, and More

We are proud to announce the release of CrateDB 5.7, packed with exciting new features and enhancements!

What is it about?

Foreign Data Wrapper

Foreign Data Wrappers open a new world of accessing foreign databases and directly accessing their data without the need to migrate it into CrateDB. With CrateDB 5.7, we’ve added initial support for FDW and general JDBC FDW integration.

Known limitations:

  • JDBC is the only available implementation;
  • PostgreSQL is the only JDBC driver built-in;
  • Only READ (DQL) queries are possible. Trying to issue any other non DQL queries like DML (INSERT / UPDATE / DELETE) or DDL (e.g. ALTER TABLE) will result in an exception;
  • Query clauses like GROUP BY, HAVING, LIMIT or ORDER BY are executed within CrateDB, NOT within the foreign system;
  • WHERE clauses can, in some circumstances, be pushed to the foreign system, but that depends on the concrete foreign data wrapper implementation. You can check if this is the case by using the EXPLAIN statement.

For more details, please read the full Foreign Data Wrapper documentation.

JWT Authentication

To support single sign-on application architectures, CrateDB 5.7 adds support for JWT authentication. When configured, any valid JWT token can be used to authenticate users to CrateDB.

Here's an example showing how to create a user with JWT authentication enabled:

CREATE USER john WITH (jwt = {"iss" = 'https://example.com', "username" = 'john@example.com'})

See the JWT authentication documentation for further details

Google Cloud Storage Repositories

With CrateDB 5.7, backup and restore of the data can be now done also using Google’s Cloud Storage service. This improves our integration with the Google Cloud infrastructure.

We are proud to announce that this implementation was contributed by the community user Herman Bergwerf, thank you very much!

Improved memory consumption of the ANALYZE statement

We got feedback from various users that they see huge memory (HEAP) consumption when issuing the ANALYZE statement. This is especially problematic as the ANALYZE statement is issued periodically in the background to collect statistics about the table’s data to improve query execution plans (e.g., JOIN statements). We came up with an improved implementation of how we collect the statistics, leading to an up to 70% memory consumption reduction while increasing performance by ~12%. 

CrateDB 5.7 also includes numerous additional SQL features and improvements.

Check out our full release notes for more details, especially the list of breaking changes.