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