MongoDB数据库分区

时间:2013-05-24 13:16:55

标签: mongodb database-design

我已经阅读了MongoDB并发和数据库范围的写锁定。

我有一个问题。将一个逻辑数据库存储在不同的MongoDB数据库中是否正常?

例如,我有很多集合,很少会更新,但很多时候会对它们进行读取操作。可以将它们存储在不同的数据库中吗?

这种做法的缺点是什么?

1 个答案:

答案 0 :(得分:1)

将内容存储在不同的数据库中总是可以的,但它不太可能对您有所帮助。即使MongoDB具有数据库级别锁定(2.2 / 2.4),它也会在检测到页面错误(慢速“从磁盘读取”)即将发生时采用积极的让步。当它检测到这种情况时,它将产生写锁定,以便读取可以继续。拥有大量并发写入的读取并不像您想象的那么多.h

如何确保缓慢的“从磁盘读取”不会经常发生的唯一方法是确保整个工作集适合RAM。 What does it mean to fit "working set" into RAM for MongoDB?对此有很好的解释。