提问:布和纸怕什么?

32亿级别的数据,2.83TB 集群如何配置 分片如何配置,求大神指点

匿名 | 发布于2018年04月02日 | 阅读数:2487

1,目前数据的每天增量是360多万
2,目前是9 nodes  11 indices 
3,每个节点是5个分片
已邀请:

ESWorker

赞同来自: lhb124056305

其实数据最好带上每个document的大小;
还有就是分片不是越多越好,一个node分片不要太多,多的话也就2-3个。
有条件可以做压测,测一下吞吐量,索引速度。(一个node中只有一个分片的情况下)
根据压测情况,调整分片个数。

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自: lhb124056305

1)分片太少会使索引无法扩展。

例如,极端情况设置为1,则索引所有文档存储到一个分片中。对于每个搜索,只有一个节点参与计算。如果索引的文档很多,查询很耗费性能。

2)分片太多对性能造成不利影响。

因为,ES在所有分片上运行查询(除非在请求中指定了路由键),然后提取并合并所有返回的结果。

3)建议: 索引<1GB, 分片设置为1; 大多数场景,保留默认值5, 索引>30GB,增加分片。

注意:创建索引后,分片不能改变,但副本数可以改变。 创建新的索引,可借助reindex完成迁移。

4)实践 1亿个文档,大约150GB索引,100个线程发送搜索请求,最有分片数目:11个。

原文地址: 英文:https://www.ebayinc.com/storie ... ebay/

lhb124056305 - 80后IT男

赞同来自:

服务器肯定是少了,cpu 内存这些也有问题的,所以现在就想看大神有没有很好的集群方案推荐

code4j - coder github: https://github.com/rpgmakervx

赞同来自:

一般我的做法是每个机器一到两个主分片,分片多了管理开销大而且查询花内存更多,但是如果你一个分片很大的时候 拆成两个有利于写入。不过如果是日志类别的索引 还是要从拆索引的角度优化,拆分片效果未必会很好。

要回复问题请先登录注册