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)加快查询性能,每次搜索请求都需要依次检查每个段。段越多,查询越慢。


相关推荐
爱莉希雅&&&30 分钟前
Docker 部署 MySQL 双主双从同步架构详细笔记
linux·运维·数据库·mysql·docker·架构·主从同步
Rubin智造社2 小时前
04月17日AI每日参考:Claude Opus 4.7正式发布,智元机器人大会今日开幕
大数据·人工智能·机器学习·claude code·智元机器人·deepseek v4·claude opus 4.7
Polar__Star2 小时前
如何结合计划任务实现自动定时备份任务配置_全自动化运维管理
jvm·数据库·python
weixin_580614007 小时前
如何提取SQL日期中的年份_使用YEAR或EXTRACT函数
jvm·数据库·python
Alex艾力的IT数字空间8 小时前
在 Kylin(麒麟)操作系统上搭建 Docker 环境
大数据·运维·缓存·docker·容器·负载均衡·kylin
2301_813599558 小时前
SQL生产环境规范_数据库使用最佳实践
jvm·数据库·python
a9511416428 小时前
Go 中通过 channel 传递切片时的数据竞争与深拷贝解决方案
jvm·数据库·python
qq_189807038 小时前
如何修改RAC数据库名_NID工具在集群环境下的改名步骤
jvm·数据库·python
aXin_ya8 小时前
Redis 高级篇(最佳实践)
数据库·redis·缓存
zhangchaoxies8 小时前
如何检测SQL注入风险_利用模糊测试技术发现漏洞
jvm·数据库·python