CouchDB 可以做到这一点吗?

Can CouchDB do this?

我正在评估 CouchDB,我想知道是否可以实现以下功能。

我正计划开发一个 Web 应用程序,该应用程序应该允许 'parent' table 和此 table 的衍生版本。父级 table 将包含所有字段(master table),用户将有选择地选择字段,这些字段应另存为单独的 tables.

我的查询如下:

  1. 是否可以使用 CouchDB 保存同一个 table 的不同版本?
  2. 是否有创建子 table 的替代方法(并使数据库混乱)?

我是 NoSQL 数据库的新手,正在评估 CouchDB,因为它支持 JSON 开箱即用,而且这种格式似乎非常适合应用程序。

如果有替代方法不将导数保存为单独的 table,则应用程序会更好。有什么想法可以实现吗?

提前致谢。

CouchDB 是 document oriented database which means you cannot talk in terms of tables. There are only documents. The _rev (or revision ID) describes a version of a document.

In CouchDB, there are 2 ways to achieve relationships.

  1. 使用单独的文档
  2. 使用嵌入式数组

如果您不想让您的数据库变得混乱,您可以选择通过使用嵌入式数组来使用选项 (2)。 这使您能够免费使用级联删除功能。