What’s new in 9.0
editWhat’s new in 9.0
editComing in 9.0.
Here are the highlights of what’s new and improved in Elasticsearch 9.0!
ESQL: INLINESTATS
editThis adds the INLINESTATS
command to ESQL which performs a STATS and
then enriches the results into the output stream. So, this query:
FROM test | INLINESTATS m=MAX(a * b) BY b | WHERE m == a * b | SORT a DESC, b DESC | LIMIT 3
Produces output like:
| a | b | m | | --- | --- | ----- | | 99 | 999 | 98901 | | 99 | 998 | 98802 | | 99 | 997 | 98703 |
Always allow rebalancing by default
editIn earlier versions of Elasticsearch the cluster.routing.allocation.allow_rebalance
setting defaults to
indices_all_active
which blocks all rebalancing moves while the cluster is in yellow
or red
health. This was
appropriate for the legacy allocator which might do too many rebalancing moves otherwise. Today’s allocator has
better support for rebalancing a cluster that is not in green
health, and expects to be able to rebalance some
shards away from over-full nodes to avoid allocating shards to undesirable locations in the first place. From
version 8.16 allow_rebalance
setting defaults to always
unless the legacy allocator is explicitly enabled.
Add global retention in data stream lifecycle
editData stream lifecycle now supports configuring retention on a cluster level, namely global retention. Global retention allows us to configure two different retentions:
-
data_streams.lifecycle.retention.default
is applied to all data streams managed by the data stream lifecycle that do not have retention defined on the data stream level. -
data_streams.lifecycle.retention.max
is applied to all data streams managed by the data stream lifecycle and it allows any data stream data to be deleted after themax_retention
has passed.