【问题标题】:how to create "has many" between two documents in couchdb?如何在 couchdb 中的两个文档之间创建“有很多”?
【发布时间】:2011-06-22 18:14:01
【问题描述】:

基本上我想知道您将如何在 Couchdb 中像在 MySQL 中一样:将用户名、密码存储在一个表中,并将用户 ID 作为外键链接到另一个任务表上?

我应该只使用 mysql 作为用户认证部分并使用 couchdb 来存储大量用户提交的文档吗?那么创建一个随机的唯一令牌以将每个用户链接到他们在 couchdb 上的“文档”?

我还希望将 Java 对象存储到 couchdb,并检索它们以直接在我的应用程序中使用。哪个 Java-couchdb 库可以做到这一点?与 couchdb4j 相比,Ektorp 的示例似乎更复杂。

【问题讨论】:

  • 这是个好问题。 (我希望更多的人讨论和使用 Java 和 CouchDB。)但是,您可以通过提出两个问题来改进它:一个是关于“有很多”,另一个是关于 Java。不过,为了节省时间,我在下面都回答了。

标签: java couchdb


【解决方案1】:

我不太了解Java,但我建议使用你找到的最简单的工具。 CouchDB 非常简单,通常使用简单的工具访问它也是最有益的。

是的,如果数据中有很多关系,MySQL 会有所帮助。然而,CouchDB 可以做一些简单的 has-many 查询。

首先是view collation。您使用 map/reduce,并且对于每个“子”文档,您发出一个指向父文档的键。当您查询?key=parent 时,您会得到一长串孩子。 (维基解释得很好。)

其次,我推荐文章What's new in CouchDB 0.11,它展示了如何使用文档_ids 来链接两个文档。

祝你好运!

【讨论】:

  • 我已经开始使用 Mongodb....它看起来更精致,功能更多。与需要一些修补的 couchdb 相比,我在几秒钟内就可以启动并运行。在mongodb中可以实现很多吗?
  • 酷! “快速启动并运行”是一个非常重要的优先事项。我不确定 MongoDB,但我相信它有一个活跃的 Stack Overflow 社区。如果您开始另一个问题,他们将非常有帮助。祝你好运!
猜你喜欢
  • 2013-04-01
  • 2013-07-15
  • 2016-04-03
  • 1970-01-01
  • 1970-01-01
  • 2021-08-19
  • 1970-01-01
  • 1970-01-01
  • 2012-02-23
相关资源
最近更新 更多