我犯了一个设计方案的错误,因此我有两个集合,其中一个文档包含对另一个文档的手动引用。我现在意识到我应该创建它,以便父代集合将其他集合包含为子文档。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