何时使用单独的CouchDB数据库?

何时使用单独的CouchDB数据库?,couchdb,Couchdb,我正在设计一个基于CouchDB的系统。它将有几个不同的组件——一个用户列表、一个主数据存储、日志记录等等。我想了解的是,CouchDB数据库的范围应该是什么?我应该为每个组件建立单独的数据库,还是将所有内容都放在一个数据库中,并为每个文档使用“type”属性?我知道单个数据库可以变得非常大,但将所有内容都保存在一个数据库中,而不是将数据库拆分,是否会影响视图的性能?从本质上讲,所涉及的权衡是什么 大家干杯。问得好,丹 我认为这基本上是一个优化问题。一个好主意是不要过早地优化(分为多个数据库)。

我正在设计一个基于CouchDB的系统。它将有几个不同的组件——一个用户列表、一个主数据存储、日志记录等等。我想了解的是,CouchDB数据库的范围应该是什么?我应该为每个组件建立单独的数据库,还是将所有内容都放在一个数据库中,并为每个文档使用“type”属性?我知道单个数据库可以变得非常大,但将所有内容都保存在一个数据库中,而不是将数据库拆分,是否会影响视图的性能?从本质上讲,所涉及的权衡是什么

大家干杯。

问得好,丹

我认为这基本上是一个优化问题。一个好主意是不要过早地优化(分为多个数据库)。(一个例外可能是日志,它可以快速控制所有其他数据,需要经常压缩。我可能会立即将日志分离。)

视图性能不会受到影响。作为预定义查询(视图定义)的交换,CouchDB始终保证快速查看结果

是否拆分为多个数据库通常取决于身份验证和权限问题。如果您使用的是普通的web服务器前端,那么问题就不那么严重了


与所有视图一样,如果您经常查询,它们也很好。查询使视图保持最新,响应速度快。查询中的延迟会导致为下一个查询建立处理。在生产中,这不是什么大问题。

谢谢,这正是我想要的答案!我的直觉是反对过早的优化,我已经开始将其保存在一个数据库中,但是分离日志的建议听起来不错。