Couchdb数据库设计选项

mal*_*lli 6 couchdb

  1. 是否建议在couchdb中为每种文档类型设置一个单独的数据库,或者将所有类型的文档放在一个数据库中?
  2. 我们可以在couchdb上创建的数据库数量有限制吗?
  3. 在couchdb中创建大量数据库有什么缺点吗?

Eli*_*ens 6

  1. 没有确切的答案.以下是一些指导原则:

    • 如果两个文档必须对不同的用户组可见,则它们必须位于不同的DB中(读/写权限是每个数据库,而不是每个文档).
    • 如果同一视图中必须包含两个文档,则它们必须位于同一个DB中(视图仅适用于单个DB).
    • 如果两种类型的文档很多并且从不包含在同一视图中,它们也可能位于不同的DB中(因此访问一种类型的视图不需要处理另一种类型的所有文档).
    • 删除数据库很便宜,但从数据库中删除所有文档的成本很高.在设计数据到期计划时请记住这一点.
  2. 没有硬编码,但最终会开始遇到资源限制,具体取决于您可用的硬件.

  3. 取决于"大数字"的含义.成千上万的人很好; 数十亿可能不是(虽然Cloudant的变化在v2.0.0中我估计DB数量的合理上限可能会上升).