【问题标题】:CouchDB: separate collectionsCouchDB:单独的集合
【发布时间】:2012-02-22 11:22:19
【问题描述】:

今天快速思考一下,CouchDB 是否处理多个数据库集合?

为了解释我的意思,我们的网络应用程序有两种类型的用户,免费和商业用户,它们的文档和视图结构有很大不同。出于所有意图和目的,它们是完全不同的产品。为每个客户创建一个数据库,其中包含他们所有的特定数据和设置。

在不涉及太多不必要的信息的情况下,我们目前在一个 CouchDB 实例中混合了基于商业的数据库和基于免费的数据库。从纯粹的组织角度来看,筛选(当前 50 个)基于免费的数据库以找到(当前 3 个)基于商业的数据库是非常混乱的。有没有更好的方法来组织或排序这些?

有人有什么想法吗?我知道我可以简单地为数据库添加前缀,但是在采用 MySQL 类型的方法之后,可以创建一个单独的数据库。

【问题讨论】:

    标签: mysql couchdb


    【解决方案1】:

    除了使用每个文档的属性对数据进行分组(即,您将所有免费客户放在同一个数据库中并在您的视图前加上该属性)我认为没有任何方法可以将类似的数据库分组在一起根据您对前缀的建议。

    您总是可以考虑运行两个实例,一个用于免费用户,一个用于付费用户。

    【讨论】:

    • 好主意 - 但我想我会运行一个额外的 CouchDB 实例。希望这不会对性能造成太大影响!
    【解决方案2】:

    您为什么不向您的 couchdb 用户文档添加另外 2 个属性,例如 .instance 和 .type,您可以在其中存储 .type 字段“FreeUserType”或“PaidUserType”,并在 .instance 字段中写入一些“ID” '你的'组/集合'这样你可以以非常复杂的方式查询你的用户群,它会给你很大的灵活性来扩展你的数据库,你可以在查询中'加入'更多'相关'数据对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-07
      • 1970-01-01
      • 1970-01-01
      • 2019-10-06
      • 2011-09-11
      • 2021-04-29
      相关资源
      最近更新 更多