mongo复制是否拆分数据或复制数据

时间:2011-12-16 14:34:16

标签: mongodb mongoose gridfs

我正在创建一个基于mongoDB / nodejs的CMS,我使用GridFS来存储所有上传的文档。我的问题是:

  

MongoDB复制集是否允许增加数据库存储量,或   只是重复数据库。对于Instance,如果我有5台服务器   每个存储1TB,如果我复制mongo跨越所有存储,会   我的GridFS系统理论上有5TB的存储空间(减去缓存和   填充)或1TB的存储重复多次以便更好地读取   性能

谢谢!

3 个答案:

答案 0 :(得分:2)

非正式说明:

复制=多个节点上的数据的相同副本,即每个1TB的5个节点总共提供1TB。

分片/分区=数据的分数进入节点,即每个1TB的5个节点总共提供5TB。

每种方法都有一定的优点和缺点,例如,复制可以帮助读取吞吐量,并且可以作为备份,但减慢插入速度(取决于提交级别),而分区可以帮助插入吞吐量和分布式查找。 同样,详细信息留给存储系统实现者。

答案 1 :(得分:2)

Sharding表示在多个节点之间拆分数据,这在您拥有大量数据时非常有用。

Replication表示将数据从一个节点复制到另一个节点,当您的应用程序被大量读取或者您想要备份数据时,它非常有用。

资源:

http://www.mongodb.org/display/DOCS/Sharding
http://www.mongodb.org/display/DOCS/Replication
http://nosql-exp.blogspot.com/2010/09/mongodb-sharding-and-replication-with.html

答案 2 :(得分:1)

  

MongoDB复制集是否允许增加数据库存储量,或   只是重复数据库。

Mongo可以做到这两点。

第一种情况称为sharding

第二种情况称为replication