Elasticsearch 8.16 发布,涵盖了查询优化、集群管理、数据保留策略、压缩算法改进、地理空间查询增强等多个方面

来源: OSCHINA
编辑: oschina
2024-11-13 08:00:00
AI总结

ElasticSearch 发布最新的 8.16 版本,该版本的完整发行说明请看

https://www.elastic.co/guide/en/elasticsearch/reference/8.16/release-highlights.html

新版本发行包下载地址:

https://www.elastic.co/cn/downloads/elasticsearch

值得关注的改进内容包括:

  1. ESQL INLINESTATS 命令

    • 新增了 INLINESTATS 命令,该命令执行统计(STATS)操作并将结果丰富到输出流中。例如,使用 INLINESTATS 可以输出每个分组的最大乘积值,并在查询结果中包含这些统计数据。
  2. 默认允许重新平衡(Rebalancing)

    • 在早期版本的 Elasticsearch 中,默认的 cluster.routing.allocation.allow_rebalance 设置为 indices_all_active,这在集群健康状态为黄色或红色时会阻止所有重新平衡操作。从8.16版本开始,默认设置更改为 always,除非明确启用了旧的分配器。
  3. 数据流生命周期中的全局保留(Global Retention)

    • 数据流生命周期现在支持在集群级别配置保留策略,即全局保留。可以配置两个不同的保留策略:
      • data_streams.lifecycle.retention.default:应用于所有未在数据流级别定义保留的数据流。
      • data_streams.lifecycle.retention.max:应用于所有数据流,允许在 max_retention 时间过后删除任何数据流数据。
  4. ZStandard 压缩

    •  index.codec 设置为 best_compression 的索引中,之前使用 DEFLATE 压缩存储字段,现在更改为使用 ZStandard 压缩算法。ZStandard 压缩可以减少存储使用量,并提供类似的索引吞吐量,实验表明 ZStandard 相比 DEFLATE 可以降低约 12% 的存储使用,并提高约 14% 的索引吞吐量。
  5. ESQL 中的聚合过滤器(Per agg filter)

    • 增加了对聚合作用域过滤器的支持,这些过滤器可以在每个分组的数据上动态工作。
  6. 支持多值字段在地理空间(Geospatial)谓词中

    • 支持在 WHERE 谓词中使用多值字段,这在空间谓词 ST_INTERSECTS  ST_DISJOINT 中是隐含的,因为这些谓词本身决定了是使用 ANY 还是 ALL
  7. 增强 SORT 推送到 Lucene

    • 增强了将排序操作推送到 Lucene 的能力,以覆盖对字段的引用和 ST_DISTANCE 函数。这可以显著提高性能,尤其是在执行地理空间排序查询时。
  8. 跨集群搜索遥测(Cross-cluster search telemetry)

    • 收集跨集群搜索的遥测数据,并在 _cluster/stats 输出中作为 "ccs" 字段返回。同时,_cluster/stats API 新增了 include_remotes=true 参数,用于收集连接的远程集群的数据。

这些变化涵盖了查询优化、集群管理、数据保留策略、压缩算法改进、地理空间查询增强等多个方面,旨在提高 Elasticsearch 的性能、灵活性和易用性。

展开阅读全文
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
分享
AI总结
返回顶部
顶部