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: 设置合理的路由机制。

其他调优

部署调优,业务调优等。

相关推荐
非极限码农3 小时前
Neo4j图数据库上手指南
大数据·数据库·数据分析·neo4j
莫叫石榴姐4 小时前
SQL百题斩:从入门到精通,一站式解锁数据世界
大数据·数据仓库·sql·面试·职场和发展
Hello.Reader4 小时前
Flink 状态后端(State Backends)实战原理、选型、配置与调优
大数据·flink
dundunmm7 小时前
【每天一个知识点】[特殊字符] 大数据的定义及单位
大数据
IT森林里的程序猿7 小时前
基于Hadoop的京东电商平台手机推荐系统的设计与实现
大数据·hadoop·智能手机
笨蛋少年派8 小时前
MapReduce简介
大数据·mapreduce
秃头菜狗8 小时前
十四、运行经典案例 wordcount
大数据·linux·hadoop
INFINI Labs8 小时前
Elasticsearch 备份:方案篇
大数据·elasticsearch·搜索引擎·gateway·snapshot·backup·ccr
Java战神8 小时前
Hadoop
大数据·hadoop·分布式
望获linux9 小时前
【实时Linux实战系列】实时系统的可观测性:Prometheus 与 Grafana 集成
大数据·linux·服务器·开发语言·网络·操作系统