许多设计文档是否陷入了Couchdb?

Elf*_*erg 4 couchdb

我的公司正在使用CouchDB,我很快就要与它进行交互了,所以我正在接受一个速成课程,当我阅读各种教程和示例时,我遇到了令人惊讶的一个:许多设计文件陷入困境CouchDB?

我读到的具体示例(镜像我自己的用例)是中间层为每个客户创建新设计文档,将所有查询和关联生成的b-tree限制为该客户.

但这是不是意味着你会在最好的情况下(从商业角度来看)成千上万的设计文件?在我看来,由于每个插入都必须运行这些设计文档中的每一个,如果只是不发射任何内容,那最终会成为服务器上的压力.

我是否遗漏了一些关于CouchDB设计的重要信息,这使得这个问题无法解决?或者有更聪明的方法来处理这个问题吗?

Rya*_*age 7

我可能不会推荐这种方法.让我们考虑一些情况:

一个新客户

您将创建一个新的设计文档,并将其添加到您的数据库中.在这种情况下,当从该设计doc请求第一个视图时,它将运行db中的所有文档以创建索引.因此,每个新客户都会扫描所有文档.

新记录/或记录更改

每个其他文档更改都将通过所有设计文档视图功能运行.

替代

为每个客户创建一个数据库.每个数据库中有一个设计文档.拥有所有客户数据库复制到的聚合的主数据库.