ES实战回顾

1、你用的集群节点情况?

一个ES集群,18个节点,其中3个主节点,15个数据节点,500G左右的索引数据量,没有单独的协调节点,它的每个节点都可以充当协调功能;

2、你们常用的索引有哪些?

业务监控、搜索sug功能、B/M端的一些,业务历史数据,业务单等

3、这些索引怎么配置的高可用?

根据数据量设置分片(3、5个都有),并设置1个副本(副本无需过多,多了要同步,也会影响性能)

4、如何做索引优化的?

(1)夜里低峰期触发 定时任务:段合并

(2)按照日期建立索引,索引模版+用别名来查询多个索引

(3)定时任务:停用/删除索引

(4)copy_to 先term精确查,结果集不够的话再 match模糊查询

5、段合并是什么东西?

ES的倒排索引文件是存在segment中,segment是存在内存中,由于每次refresh都会生产新的segment,如果segment过多会消耗较大内存,定期进行段合并有几个好处:

(1)减少内存消耗,合并段的同时会释放已删除的索引空间,业务如果使用delete by id进行索引删除,es只是把数据标记为已删除,并没有释放空间,在segment合并时会把这些数据进行清理

(2)加快查询性能,每次搜索请求都需要依次检查每个段。段越多,查询越慢。


相关推荐
2401_831501731 小时前
Linux之Zabbix分布式监控篇(二)
数据库·分布式·zabbix
秋林辉2 小时前
Jfinal+SQLite处理 sqlite数据库执行FIND_IN_SET报错
jvm·数据库·sqlite
火火PM打怪中2 小时前
产品经理如何绘制服务蓝图(Service Blueprint)
大数据·产品经理
巴里巴气5 小时前
MongoDB复杂查询 聚合框架
数据库·mongodb
scheduleTTe8 小时前
SQL增查
数据库·sql
浮生带你学Java8 小时前
2025Java面试题及答案整理( 2025年 7 月最新版,持续更新)
java·开发语言·数据库·面试·职场和发展
期待のcode9 小时前
图片上传实现
java·前端·javascript·数据库·servlet·交互
小毛驴8509 小时前
redis 如何持久化
数据库·redis·缓存
吗喽1543451889 小时前
用python实现自动化布尔盲注
数据库·python·自动化
hbrown9 小时前
Flask+LayUI开发手记(十一):选项集合的数据库扩展类
前端·数据库·python·layui