sql-server – 为什么在MongoDB中使用分片?

我们开始在工作中使用MongoDB.

到目前为止,我被要求评估MongoDB是否可以同时执行副本集和分片.在搜索了一段时间后,我发现它可以,但除非真的有必要,否则应该避免分片.

我已经阅读了somewhere,使用MongoDB你真的需要有很多文档(比如数十亿)才能开始考虑Sharding,但是我无法理解这一点,因为在那些“统计数据”中没有提到普通文档的组织和大小.

我们现在的标准是RAM应该大于完成请求所需的内存负载.

这些引导我到那些问题:
MongoDB和SQL服务器有什么指令知道RAM中用于请求的内容?

使用Sharding与MongoDB有什么关键要求?

当某人解释为什么他们在MongoDB中使用Sharding时,有人能指点我的文章,帖子或任何内容吗?

MongoDB如何处理自动分片?

谢谢.

最佳答案 根据我的理解,您的工作集(您最常访问的数据)必须适合RAM才能获得良好的性能.如果没有,则可以选择分片.

副本集允许分配集合中的读取,而分片也可以用于分发写入.

在O’Reilly有一本名为“缩放mongodb”的书,解释了如何以及何时使用副本集和分片.

您还可以查看此页面:http://www.mongodb.org/display/DOCS/Sharding+Introduction

点赞