我蒙戈DB包含以下集合名称,如MongoDB的更新多个集合
10.9.40.46
10.9.40.47
10.9.40.48
10.9.40.49
10.9.40.50
10.9.40.51
10.9.40.52
在所有集合具有文件N位数,每个文件在默认情况下有共同键名为“状态”的所有文件有“身份” 1 ,当我更新我的收藏改变“身份” 1比0我用下面的查询
db.getCollection("10.9.40.46").update({"status":1},{$set:{"status":0}},false,true)
上面的查询做工精细,但我想更新我的所有收藏品,然后我通过我的收藏名进行查询手工,所以有是我使用数据库a的MongoDB中的任何概念nd更新该数据库中的所有集合文档使用单个查询或类似的东西?我也使用循环来读取所有集合和更新文档,但由于大量的集合,我需要很长时间。
我会说集合是“典型”的,但并不总是用于对相同类型的文档进行分组。有些情况下,将不同类型的数据放在同一个集合中是值得的。 #minorNit –
如果我将所有集合文档放在单个集合中,那么我的单个集合会增加大小,而且我的代码每5分钟就会工作一次。我把新数据放入集合中,以便单个集合如何处理这种情况,可能存在像写锁一样的问题? – Yogesh
@yogesh收集大小不应该是一个问题。 MongoDB旨在扩展到庞大的集合大小。写锁是每个数据库,而不是每个集合。因此,使用更多集合并不会减少由于写入锁定而导致延迟操作的可能性。有关MongoDB中数据库锁定的更多信息,请参阅http://docs.mongodb.org/manual/faq/concurrency/。 – Philipp