【发布时间】:2012-11-26 03:28:06
【问题描述】:
我正试图绕过CouchDB。我正在尝试将MongoDB 关闭为CouchDB,因为我认为views 的概念对我更有吸引力。在CouchDB 中,看起来所有记录都存储在一个数据库中。没有集合或任何东西的概念,例如MongoDB。那么,当存储不同的数据实体(如用户、博客文章、cmets 等)时,您如何在 map reduce 函数中区分它们?我正在考虑只使用某种type 属性,并且对于每个项目,我只需要确保始终指定type。当我阅读 CouchDB 食谱网站时,这种思路得到了一定程度的强化,其中一个示例做了同样的事情。
这是最可靠的方法,还是有更好的方法?我正在考虑替代方案,我认为唯一的其他替代方法基本上是尽可能多地嵌入到逻辑文档中。就像,数据库中的直接记录都是User 记录,每个User 都有一个Posts 数组,您只需将所有Posts 添加到其中。这里的缺点是嵌入式文档不会获得自己的id 属性,对吗?
【问题讨论】:
标签: couchdb data-modeling