赞
踩
每个index索引由多个分片组成,每个分片本质上就是一个Lucene索引, 因此会消耗相应的文件句柄, 内存和CPU资源,也就是一个请求的真正响应者,一台服务器上处理多个分片请求会争夺资源,包括io,cpu,内存等等。
**分片过小:**导致分片过多占用过多的文件句柄, 内存和CPU资源。
**分片过大:**会影响Elasticsearch 在重新平衡数据时可以移动分片的速度,例如发生故障后,将取决于分片的大小和数量以及网络和磁盘性能。建议值30G,不超过50G分片,太大会影响查询速度,导致超时等现象。
所以这个问题最终是在分片大小和分片数量间的平衡。
es服务器堆内存根据服务器内存大小进行配置,eg:31g/256g
单台服务器存储分片数=每gb堆内存×20 &&<750,实际经验超过900会内存严重不足
单个索引分片数=数据量÷30g
每个节点建议的单个索引分片数<3:因为分片分布在同一个服务器上。请求开始竞争相同的硬件资源时, 性能便会逐步下降。
如果该索引分片数过多可以考虑业务需求是否需要分割索引。周表,天表,月表等划分。
内存:磁盘需求最优比例=1:50 256g=13T
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。