我在考虑开始我的第一个CouchDB项目,但由于我有ORM背景,我担心如何创建可能难以维护的文档。
例如,如果我有以下模型:
A *--->(1)B
这意味着对于每个A对象,都有一个B对象,并且有许多A实例可以共享一个B对象。在这种情况下,在A中有指向B的指针/外键。
我可以创建一个包含所有A数据和B数据的文档。然而,我的问题是,如果在以后的某个阶段(创建了10000个文档之后),我可能需要更改一些数据,这意味着我必须更新所有文档。
在ORM /规范化数据库世界中,我只需更新B,所有引用现在都更新到了数据库中。
在CouchDB中我该如何处理这个问题,或者说NoSQL方法不适合这些类型的情况吗?
例如,如果我有以下模型:
A *--->(1)B
这意味着对于每个A对象,都有一个B对象,并且有许多A实例可以共享一个B对象。在这种情况下,在A中有指向B的指针/外键。
我可以创建一个包含所有A数据和B数据的文档。然而,我的问题是,如果在以后的某个阶段(创建了10000个文档之后),我可能需要更改一些数据,这意味着我必须更新所有文档。
在ORM /规范化数据库世界中,我只需更新B,所有引用现在都更新到了数据库中。
在CouchDB中我该如何处理这个问题,或者说NoSQL方法不适合这些类型的情况吗?