浅谈Elastic Search V8版本的一些重大改进

首先说明下本文只阐述一些对我们日常使用影响比较大的更改,比如学的时候是Elastic Search v7.x及其以下的版本,但是用的时候却是Elastic Search v8.x,还有一种情况就是从低版本迁移到高版本,这两种情况的话我们都需要关注下,下面这两个链接是官方的更新日志,在这里我只说下使用上变化比较大的几个点吧:

v8.0.0发布说明: www.elastic.co/guide/en/el... v8.0.0中的重大更改: www.elastic.co/guide/en/el...

1 配置方面

1.1 xpack.security.enabled默认值为true

yaml 复制代码
# Enable security features
xpack.security.enabled: true

xpack.security.enrollment.enabled: true

1.2 xpack.security.http.ssl默认值为true

yml 复制代码
# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
  enabled: true
  keystore.path: certs/http.p12

1.3 xpack.security.transport.ssl默认为true

配置任何 SSL 设置都是错误的 xpack.security.transport.ssl 无需同时配置 xpack.security.transport.ssl.enabled.

如果您不想启用 SSL 并且当前正在使用其他 xpack.security.transport.ssl 设置中,请执行下列操作之一:

  • xpack.security.transport.ssl.enabled 显式指定为 false
  • 停止使用其他 xpack.security.transport.ssl 设置
yaml 复制代码
# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:
  enabled: false
  verification_mode: certificate
  keystore.path: certs/transport.p12
  truststore.path: certs/transport.p12

2 REST API 更改

8.0 对 Elasticsearch REST API 引入了几项重大更改。虽然更新应用程序以考虑这些更改非常重要,但在单次升级中查找和更新每个 API 调用可能会很痛苦且容易出错。为了简化此过程,Elasticsearch官方在 REST API 中添加了对 7.x 兼容性标头的支持。在许多情况下,这些可选标头允许您向 8.0 群集发出与 7.x 兼容的请求,并接收与 7.x 兼容的响应。

具体可参见:www.elastic.co/guide/en/el...

2.1 删除了type

删除了types查询参数。以前,可以将类型与索引查询参数组合在一起,以返回特定映射类型的索引统计信息。8.0 中删除了映射类型。

2.2 删除了_xpack

在 7.0 中,我们弃用了路径中包含 _xpack 的 REST 端点。这些 端点现已在 8.0 中删除。已弃用和删除的每个终结点 替换为不包含 _xpack 的新终结点。举个例子, /{index}/_xpack/graph/_explore 替换为 /{index}/_graph/explore

兼容性 当 rest-api-compatibility 为 请求,任何包含以下内容的请求 "_xpack"前缀将重新路由到不带 _xpack 的相应 URL 前缀。

2.3 删除映射types

已删除映射类型。包含映射类型的 API 终结点也已被删除。请改用无类型终结点。部分示例:

API Typed API endpoint Typeless API endpoint
Bulk <target>/<type>/_bulk <target>/_bulk
Count 计数 <target>/<type>/_count <target>/_count
Delete 删除 <index>/<type>/<_id> <index>/_doc/<_id>

3 总结

综上就是Elastic Search v8相对低版本做出的相对较大的改动,当然最详细的内容还是要仔细的阅读官方文档,上面这些也是本人在使用过程中遇到问题的时候做出的排查进而总结出来的点,希望能给到大家帮助。

相关推荐
leobertlan5 小时前
2025年终总结
前端·后端·程序员
面向Google编程5 小时前
从零学习Kafka:数据存储
后端·kafka
易安说AI6 小时前
Claude Opus 4.6 凌晨发布,我体验了一整晚,说说真实感受。
后端
易安说AI6 小时前
Ralph Loop 让Claude无止尽干活的牛马...
前端·后端
易安说AI6 小时前
用 Claude Code 远程分析生产日志,追踪 Claude Max 账户被封原因
后端
颜酱7 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
Coder_Boy_10 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
掘金者阿豪11 小时前
关系数据库迁移的“暗礁”:金仓数据库如何规避数据完整性与一致性风险
后端
ServBay11 小时前
一个下午,一台电脑,终结你 90% 的 Symfony 重复劳动
后端·php·symfony
sino爱学习11 小时前
高性能线程池实践:Dubbo EagerThreadPool 设计与应用
java·后端