Elasticsearch 解决只能查询10000条数据方案

es官方默认限制索引查询最多只能查询10000条数据,查询第10001条数据开始就会报错,如下示例所示:

但是很多时候10000数据不能满足项目的需求,所以我们就要解除这个限制。解决办法主要有以下几种:

【方式一】(修改完配置文件,需要重启集群中的 ES 服务)

修改Elasticsearch 集群中的 配置文件 **config/elasticsearch.yml,**在配置文件最后增加一行,如下:

bash 复制代码
max_result_window: 200000000

【方式二】针对索引解除限制

针对所有索引解除限制:

bash 复制代码
PUT _all/_settings
{
	"index.max_result_window":200000
}

_all表示所有索引,针对单个索引的话修改成索引名称即可。

在创建索引时指定配置:

bash 复制代码
"settings":{
		"index":{
			"max_result_window": 500000
		}
 }

**温馨提示:**有可能修改完之后,通过api查询回来的totalhits还是只有10000条,解决如下 :

  • 在查询时候把 track_total_hits 设置为 true。

track_total_hits 设置为false禁用跟踪匹配查询的总点击次数,设置为true就会返回真实的命中条数。

java 代码在构建条件时候加上:

java 复制代码
searchSourceBuilder.trackTotalHits(true);

kibana 查询:

bash 复制代码
GET 索引名/_search
{
	"query": {
		"match_all": {}
	},
	"track_total_hits":true
}
相关推荐
长空任鸟飞_阿康14 小时前
如何设计支持 Skills 的 Agent?一套可扩展的四层架构
python·ai·架构·skills
滴啦嘟啦哒14 小时前
【具身笔记】【原理探究】一、对PI05源码的实践笔记
笔记·python·vla·具身
miofly14 小时前
GitHub 今日推荐|elephant-goldfish-model:先审查设计草案再写代码
python·开源·github
阿里云大数据AI技术14 小时前
云栖实录|从代码上下文到千亿级文档:Qoder × 阿里云 Elasticsearch 落地生产级Agent向量检索
人工智能·elasticsearch
云和数据.ChenGuang14 小时前
深入剖析 Python 的 MRO 规则:从 C3 线性化到实战踩坑
开发语言·python·1024程序员节
123_不打狼14 小时前
Squidiff:基于条件扩散模型预测细胞发育与扰动响应
开发语言·python·squidiff
databook14 小时前
用Python DSL 写轻量数据质检工具
python·数据分析
郝学胜-神的一滴15 小时前
AI 编程智能体 17:四步搞定专属AI智能体
大数据·人工智能·python·神经网络·算法·langchain·强化学习
岁寒良木15 小时前
麒麟 V10 (x86_64) 离线/联网部署 Docker 26.1.4 与 MaxKB v2.10 LTS 实战指南
python·docker·kylin
vx1530278236215 小时前
CDGA|AI时代,数据治理的位置下沉了吗?
大数据·人工智能·cdga·数据治理