Obt*_*bto 12 database-design couchdb nosql
我刚刚开始使用couchdb,到目前为止我真的很喜欢它,但我想知道你什么时候应该创建一个新的数据库.
这就是我的意思:
如果我要在具有多个博客的服务器上创建一个博客,这是一个RDBMS,我将创建一个名为fox_blog的数据库,并为帖子,评论等创建表和关系.
现在在CouchDB中,我只需要制作3种文档类型:帖子,评论和用户帐户.
但这是我的问题:我是否会创建一个名为fox_blog的数据库并为每个文档添加一个"类型"字段(例如,在帖子文档中会有一个'type'字段,其值为'post')?或者我会为每个文档创建一个单独的数据库,并在名称前面加上fox_(例如,db name将是fox_posts的帖子)?或者这些都不正确吗?
如果有任何不清楚的地方,请告诉我,有点难以解释
通常,我尝试在每个自己的数据库中保留单独的应用程序.在这种情况下,如果在单个界面中访问所有不同的博客,请将其保存在1个数据库中,使用type
和之类的字段blog
来标识每个文档.
如果您运行多个博客,每个博客都在他们自己的域或地址访问,您可能需要考虑将每个博客分段到他们自己的数据库中.基本上,CouchDB在这里给你很大的灵活性,所以利用它和实验.
更重要的是,不直接支持跨多个DB进行查询 - 尽管有很多方法可以解决这个问题.
在你的情况下,在单独的数据库中的帖子,评论和行为根本不起作用.
您可以使用duck-typing或使用类型字段"post/comment"等.
CouchDB有一个内置的用户数据库,也可以在你的应用程序中访问.