ES查询的一些优化方式
filter和query
Query会计算得分,filte不是, 整体上query会更耗时
字段方式: KEYWORD 和 text,
Text检索的方式往往会占用更多性能,它往往需要伴随着模糊匹配和分词
分页的大小
From 和size的大小合理设置
堆内存设置:合理设置 JVM 堆内存大小,通常建议设置为系统内存的 50%,但不超过 32GB。
选择合理的垃圾回收机制例如G1 减少垃圾回收队搜索的影响
分片数量:根据数据量和查询负载合理设置分片数量。分片过多会增加管理开销,分片过少会导致单个分片负载过重。
副本数量:设置适当的副本数量以提高查询性能和数据冗余。通常,副本数量为1是一个好的起点。
超时参数
有这样两个参数,
一个是每个分片的文档手机数量阈值,到了查询请求就提前终止
另一个是timeout,到达了请求时间就直接返回
数据量大的情况下不要使用模糊查询