ElasticSearch 常用查询优化方式

设计阶段调优
1: 根据业务增量需求,采取基于日期模板创建索引,通过 roll over API 滚动索引;
2: 使用别名进行索引管理;
3: 每天凌晨定时对索引做 force_merge 操作,以释放空间;
4: 采取冷热分离机制,热数据存储到 SSD,提高检索效率;冷数据定期进行 shrink操作,以缩减存储;
5: 采取 curator 进行索引的生命周期管理;
6: 仅针对需要分词的字段,合理的设置分词器;
7: Mapping 阶段充分结合各个字段的属性,是否需要检索、是否需要存储等。

写入调优
1: 写入前副本数设置为 0;
2: 写入前关闭 refresh_interval 设置为-1,禁用刷新机制;
3: 写入过程中:采取 bulk 批量写入;
4: 写入后恢复副本数和刷新间隔;
5: 尽量使用自动生成的 id。

查询调优
1: 禁用 wildcard;
2: 禁用批量 terms(成百上千的场景);
3: 充分利用倒排索引机制,能 keyword 类型尽量 keyword;
4: 数据量大时候,可以先基于时间敲定索引再检索;
5: 设置合理的路由机制。

其他调优

部署调优,业务调优等。

相关推荐
许彰午30 分钟前
# 从OOM到根治的完整过程——导出大数据的应急、根因分析与游标方案
java·大数据·数据库·系统架构
Justice Young1 小时前
Flink第四章:运行架构
大数据·flink
陈天伟教授2 小时前
AI 未来趋势:产业应用范式之变
大数据·开发语言·人工智能·gpt
智能化咨询2 小时前
(112页PPT)德勤制造业企业数据治理平台规划方案(附下载方式)
大数据·运维·人工智能
eastyuxiao2 小时前
流程图 + 配置清单 在团队 / 公司项目管理场景的落地应用
大数据·运维·人工智能·流程图
历程里程碑2 小时前
MySQL数据类型全解析 + 代码实操讲解
大数据·开发语言·数据库·sql·mysql·elasticsearch·搜索引擎
绘梨衣5472 小时前
django-elasticsearch-dsl-drf 搜索服务搭建教学文档
python·elasticsearch·django
测试员周周3 小时前
【AI测试功能2】AI功能测试的“不可确定性“难题与应对思路:从精确断言到统计判定的完整方案
大数据·人工智能·python·功能测试·测试工具·单元测试·测试用例
eastyuxiao3 小时前
流程图 + 配置清单 在团队 / 公司知识管理场景的应用落地
大数据·流程图
Adolf_19933 小时前
Mac 配置Homebrew + Oh My Zsh + npm全局权限问题
大数据·elasticsearch·搜索引擎