我们开始在工作中使用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