提升 Elasticsearch(ES)搜索性能可以从索引设计、查询优化、集群架构、硬件与配置等多个层面入手。下面按实战优先级系统地总结:
text 字段被默认同时建 keywordindex: falsetext,聚合/排序用 keyword"type": "keyword"
而不是 text 做精确匹配ik_max_word < ik_smart < standardkeywordenglish 分析器减少 token 数经验:
数据量 < 100G:3–5 个分片
❌ 错误:
{ "from": 10000, "size": 10 }
✅ 推荐:
search_afterscroll(离线导出)point in time (PIT)"filter": {}
filter 可缓存,性能远优于 must❌:
{ "wildcard": { "name": "*abc" }}
✅:
"abc*"
keywordterms + execution_hint: map(小基数)text 聚合"_source": ["id", "title"]
masterdataingestcoordinating64G 机器 → 31G 堆
"number_of_replicas": 1~2
filter 查询自动缓存now)refresh_interval(如 30s)GET _nodes/hot_threads
GET _search?profile=true
GET _cat/indices?v
GET _cat/thread_pool?v
✅ 高并发搜索场景:
✅ 日志搜索场景:
_source(可选)如果你愿意,可以告诉我:
我可以直接给你针对性的 ES 调优方案。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。