Elasticsearch 参考指南(在6.4中的重要更改)

在6.4中的重要更改

本节讨论在将应用程序迁移到Elasticsearch 6.4时须要注意的更改。json

bin/plugin不能再删除x-pack了
bin/plugin remove x-pack再也不有效,在升级到6.4或之后的版本以前,你应该删除X-Pack插件,更多介绍在滚动升级和完整集群重启升级。

也请参阅发行亮点和发行说明。elasticsearch

API更改

字段功能请求格式

在过去,fields能够做为参数提供,也能够做为请求体的一部分提供,如今不提倡在请求体中指定fields,而是应该始终经过请求参数提供字段,在7.0.0中,字段功能API将不接受请求主体中提供的fields插件

在收缩/分割操做期间复制源设置

在之前的Elasticsearch版本中,调整大小操做(收缩/分割)只会从源索引中复制index.analysisindex.similarityindex.sort设置。Elasticsearch 6.4.0引入了一个请求参数copy_settings,除了不可复制的索引设置外,它将从源中复制全部索引设置。这个参数在6.x中默认为false,在6.4.0中当即被弃用,将只能在8.x中被设置为true,并将在9.0.0中删除。注意,当使用此参数时,意味着将复制全部可复制的设置,这包括为调整大小操做必须放置的索引块,以及为执行调整大小操做而设置的任何分配设置。若是使用此参数,你将不得不在操做以后发出请求,以调整目标索引上所需的设置,或者经过调整大小操做发送这些设置的所需值。code

搜索和查询DSL更改

限制Regexp查询请求中可使用的regex的长度

由许多操做符组成的长字符串的Regexp查询可能会遇到堆栈溢出,为了防止出现这种状况,Regexp查询请求中可使用的regex的最大长度限制为1000,对于特定索引,这个默认最大值能够经过设置index.max_regex_length来更改。orm

脚本

遗留存储的脚本格式已被废弃

不使用顶级script对象的存储脚本格式已被弃用,这些格式的支持将在下一个主要版本中删除。对象

这包括template存储的脚本格式和不将脚本封装在script json对象中的格式。索引

REST客户端

旧的低级别performRequest已被弃用

performRequestperformRequestAsync在6.3版本的低级别客户端中已经被弃用,支持performRequest(Request)performRequestAsync(Request, ActionListener),这些将容许咱们向客户端添加更多的特性,而不须要添加更多的performRequest变体。ip

旧的高级别request方法已被弃用

高级别客户端上的全部request方法都已被弃用,以支持采用RequestOptions的新变体,这容许高级别客户端的用户对单个请求定制许多其余方法没法使用的选项。rem

HostSniffer重命名为NodeSniffer和signature更改

为了容许Sniffer获取更多的元数据,咱们将它从嗅探HttpHost更改成嗅探Node,引入了一个新类来包含链接信息和元数据,好比节点的角色或在elasticsearch.yml中定义的任何属性,这些能够被新的RequestOptions#setNodeSelector使用。字符串

相关文章
相关标签/搜索