Elasticsearch HTML文件搜索性能提升实战

Elasticsearch性能优化实战
本文深入探讨Elasticsearch在大规模HTML文件搜索场景下的性能优化策略,包括集群内存设置、分片与副本调整、查询分页策略及高亮显示优化。通过实践案例,展示如何针对特定业务场景进行有效配置,显著提升搜索效率。

集群内存设置

Elasticsearch默认安装后设置的内存是1GB,对于任何一个现实业务来说,这个设置实在太小了,稍有大批量查询或者写入操作,集群很快就会出现问题。
ES在6.x版本后,通过修改安装路径elasticsearch/jvm.options文件来设置内存

-Xms10g
-Xmx10g

将内存设置为10g,重启服务后生效

systemctl restart elasticsearch.service

一个常见的问题是配置一个大内存,假设你有一个64G内存的机器,按照正常思维思考,你可能会认为把64G内存都给Elasticsearch比较好,但现实是这样吗, 越大越好?

当然,内存对于Elasticsearch来说绝对是重要的,用于更多的内存数据提供更快的操作,而且还有一个内存消耗大户-Lucene。

Lucene的设计目的是把底层OS里的数据缓存到内存中。Lucene的段是分别存储到单个文件中的,这些文件都是不会变化的,所以很利于缓存,同时操作系统也会把这些段文件缓存起来,以便更快的访问。
如果将所有的内存都分配给Elasticsearch,不留一点给Lucene,那全文检索性能会很差的。

所以标准的建议是把50%的内存给elasticsearch,剩下的50%也不会没有用处的,Lucene会很快吞噬剩下的这部分内存用于文件缓存。
推荐安装cerebro来查看ES集群的状态: cerebro.
在这里插入图片描述

副本和分片

分片(shard)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值