在项目开发过程中有多种Elasticsearch版本和连接客户端可以选择,那么他们有什么区别,各种类型的客户端对Elasticsearch版本的兼容度如何?
Elasticsearch版本介绍
ES的版本管理机制:主版本.次版本.修正版本
主版本一年一发,主要是重大升级和改进,涉及底层Lucence版本升级、性能改进、重大特性发布
次版本2~3个月发一次,主要是少量特性功能发布(有阻断变化和废弃旧特性)及BUG修复
修正版本2周左右发一次,不添加新功能,只修复BUG
大版本主要功能特性差异,详细参见ES发展史
6.8.0/7.1.0后xpack 开源,基础版不需要授权免费使用,包括: 安全、监控等
多type支持
5.6.X 默认支持多type,可以通过配置只支持一个type
6.X 默认支持单一type,可以通过配置打开支持多type
7.X 只允许单一type,即_doc
比如Elasticsearch-V7.2.1,7是主版本、2是次版本,1是修正版本,每个版本实现的功能、特性和解决的bug可以在官方的release-notes中查看。
客户端分类
常见的客户端有以下几种:
ES从V0.9~V2.2 版本提供的客户端,集成该客户端的应用会以一个node节点的方式加入到ES集群,以集群节点的身份与ES通信。从V2.3版本开始移除,不提供这种类型的客户端,该类型的客户端在后续的ES版本中不可用。
ES从V0.9~V7.X 版本提供的客户端,该客户端使用transport模块(序列化协议)和远程的E