我蒙戈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