elasticsearch 8.0重大变化

Elasticsearch 8.0进行了多项重大变更,包括action.destructive_requires_name默认为true,indices.query.bool.max_clause_count已被弃用,indices.lifecycle.poll_interval必须大于1秒等。文件和native realms现默认启用,realms需设置order,多个配置选项如cluster.routing.allocation.disk.include_relocations已被删除。升级前需了解这些变化以确保程序兼容。
摘要由CSDN通过智能技术生成

目录

action.destructive_requires_name 默认为true

xpack.searchable.snapshot.shared_cache.size在non-fronzen节点上进行设置

indices.query.bool.max_clause_count 已弃用且无效

indices.lifecycle.poll_interval 必须大于1

file 和native realms现在已启用,除非明确禁用

realms必须设置order

cluster.routing.allocation.disk.include_relocations已被删除

cluster.join.timeout 已被删除

discovery.zen 设置已被删除

http.content_type.required 已被删除

http.tcp_no_delay 已被删除

network.tcp.connect_timeout 已被删除

node.max_local_storage_nodes 已被删除

accept_default_password 已被删除

roles.index.cache.* 设置已被删除


Elasticsearch 8.0升级之前,先看一下es 8更改、新增了些什么东西,以防影响程序正常运行

action.destructive_requires_name 默认为true

以前,默认为false允许用户使用通配符模式来删除、关闭、或更改索引上的index blocks。为了防止意外删除与通配符匹配的索引,现在默认要求破坏性操作显式地明明要求修改的索引

xpack.searchable.snapshot.shared_cache.size在non-fronzen节点上进行设置

  • 详细

不能在xpack.searchable.snapshot.shared_cache.size在没有data_forzen节点角色的节点上进行设置。此设置为部分安装的索引的共享缓存保留磁盘空间。Elasticseach仅将部分安装的索引分配给具有该data_forzen角色的节点

我理解你的问题是关于 Elasticsearch 8.0 Java API 中的 SearchResponse 类的使用。 SearchResponse 类是 Elasticsearch Java API 中的一个重要类,用于存储搜索请求的响应结果。可以通过该类获取搜索结果的各项信息,例如搜索结果的总数、搜索响应的状态信息以及搜索结果中的每个文档的具体信息。 在 Elasticsearch 8.0 中,可以通过以下方式创建 SearchResponse 对象: ``` SearchResponse response = client.search(searchRequest, RequestOptions.DEFAULT); ``` 其中,searchRequest 是一个 SearchRequest 对象,用于定义搜索请求的具体参数,例如搜索的索引、搜索的查询语句等等。client 是 Elasticsearch 的客户端对象,通过该客户端对象可以执行各种 Elasticsearch 操作,包括搜索操作。 一旦执行搜索请求,就可以得到一个 SearchResponse 对象,可以通过该对象获取搜索结果的各项信息,例如搜索结果的总数: ``` long totalHits = response.getHits().getTotalHits().value; ``` 以上代码中,getHits() 方法返回一个 SearchHits 对象,该对象包含了所有搜索结果的详细信息。getTotalHits() 方法可以获取搜索结果的总数。value 属性可以获取具体的搜索结果总数值。 除了获取搜索结果的总数,还可以通过 SearchResponse 对象获取各个搜索结果的详细信息,例如搜索结果中第一个文档的具体信息: ``` SearchHit hit = response.getHits().getAt(0); String id = hit.getId(); String sourceAsString = hit.getSourceAsString(); ``` 以上代码中,getAt() 方法通过索引获取搜索结果中的具体文档信息。getId() 方法可以获取该文档的 ID 值,getSourceAsString() 方法可以获取该文档的具体内容。 以上是 Elasticsearch 8.0 Java API 中 SearchResponse 类的基本使用方法,希望可以帮助到你!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值