我犯了一個設計方案的錯誤,因此我有兩個集合,其中一個文檔包含對另一個文檔的手動引用。我現在意識到我應該創建它,以便父代集合將其他集合包含爲子文檔。MongoDB:將引用文檔的集合作爲子文檔複製
問題是,我已經把這個方案放到了一個已經創建了數百個條目的生產環境中。我想要做的是以某種方式掃描所有現有數據,並將這些項目作爲子文檔複製到其引用的parent_id中。
這裏是我的架構的一個例子:
系列1 - 用戶
_id
Name
系列2 - 照片
_id
url
user_id
是否有一個快速的方法來改變現有文檔是這樣一個集合:
系列 - 用戶
_id
Name
Photos: [...]
一旦我有正確的數據庫設置,我可以很容易地修改我的代碼,以使用新的,但我遇到的問題是搞清楚如何快速/程序將文件複製到他們的父母。
其他詳細信息 - 我正在使用MongoHQ.com託管我的MongoDB。
謝謝。
你需要採取任何架構遷移這樣照顧自己,在代碼中。只需更新您的'User'模式,然後迭代您的集合以更新您的集合以反映新的模式。 – JohnnyHK 2013-02-19 21:36:10