我应该对MongoDB中的所有集合进行分片还是仅对其进行分片

时间:2014-03-09 01:50:05

标签: mongodb

我正在运行MongoDB集群(后端到我的网站)。我正在将我之前的数据库从简单转换为分片结构。

问题是:我应该对我的所有藏品进行分类,还是只对那些我希望增长的作品进行分类。我有一些收藏品永远不会比几千个文件大,最多几十万,我还应该给它们分片吗?如果是的话?现在在转换过程中或转换后没有着色和碎片?

重新解释一下这个问题:如果一张桌子不是太大,是否有分片的好处?

1 个答案:

答案 0 :(得分:1)

一个常见的误解是分片是基于集合的大小。这完全是不真实的。然而,通常意义上说,当一个集合达到一定的大小时,它可能存储在一个服务器上太多了,但另一方面,碎片的原因是由操作而不是大小决定的。

有意义的是,那些“成长很多”的应该被分片以在群集中分发这些操作,但是那些可能更安静的那些,例如较小的集合可以很乐意保留在主分片上。

关于何时对它们进行分片:这取决于操作。 Sharding旨在扩展读取和写入,因此它只是一个需要扩展集合的问题。

你可能有一个可能有1,000个项目的集合,但是如果操作要求它被分片,那么它需要分片。反之亦然,你可以收集10亿件物品,但仍然不值得分片。