es查询性能优化

本文分享了Elasticsearch性能优化的多个关键点:内存和CPU要充足,数据分离存储,合理设置索引,数据预热提高查询速度,避免复杂查询,利用过滤器,考虑数据长期存储方案,适当增加副本数量,谨慎使用排序,并强调了资源投入的重要性。
摘要由CSDN通过智能技术生成

1.如果条件允许,内存和cpu一定要足够多,要超过总数据量的1半以上最好,当然数据量很大的时候要在经常查询数据的2倍以上。

2.数据分离存储,经常查询的数据放一些索引,不经常查询的放一部分索引,然后通过唯一的id关联即可,需要查那些不经常查的数据的时候通过id查询即可,这里可以和hbase联合使用。把条件字段和经常查看的字段放在es中,不经常查看的放hbase中,这样既可以省es的空间,性能效果也俱佳

3.数据大时,每个索引的数据量不要太大,一般很大的时候可以每天一个索引,或者每月一个索引,具体看业务来选择

4.进行数据预热,即,每天或者定期后台去访问那些经常查询的数据,把它们加载到filesys_cache中去,因为es查询时,如果缓存里有该数据就直接从缓存读取,没有就去硬盘把数据加载到该缓存中,下次再查时就快很多了,所以有时候es第一次查询时会有点慢,后面就快很多了

5.es中不要做太复杂的查询,尤其是关联查询,如果有些一定要关联,关联的条件也要尽量少,比如id即可

6.可以使用fitter过滤会快很多,尽量不要存为全文索引的数据类型,

7.es不适合做长期存储,一般只挑近期的,常用的放进去即可,久远的数据或者不常查询的,可以放到hive中,那些查的少,肯定速度也不要求,所以放hive中最合适

8.查询的时候当然是副本多一些比较好,但是一般3个副本就可以了,太多也不合适

9.有钱的话,多加一点cpu和内存是最好的,这是最实在的办法,有钱了,有资源了,上面那些就显得微不足到了。

10.另外es查询的时候尽量不要排序,看情况而定吧,排序的时候可能会有点慢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值