我有点不好意思承认这一点,但我无法概念化如何在非关系世界中构建数据。特别是考虑到大多数文档/ KV商店的功能略有不同。
我想从一个具体的例子中学习,但我找不到任何人讨论如何构建,例如,使用CouchDB / Redis / MongoDB / Riak /等的博客。
我认为有很多问题很重要:
答案 0 :(得分:3)
首先,我认为您希望从列表中删除redis,因为它是键值存储而不是文档存储。 Riak也是一个键值存储,但你可以成为一个包含Ripple库的文档存储。
简而言之,使用文档存储建模应用程序就是要弄明白:
您希望在另一个文档中存储(嵌入)哪些数据。如果该文档仅属于一个文档,那么将它存储在另一个文档中可能是一个很好的选择。
{ article : { comments : [{ content: 'yada yada', timestamp: '20/11/2010' }] } }
您需要考虑的另一个警告是嵌入式文档的大小有多大,因为在mongodb中,嵌入式文档的最大大小为5MB。
{ article: { tags: ['news','bar'] } }
{ user: { role_ids: [1,2,3]}}
这是关于使用文档存储进行建模的简要概述。祝你好运。
答案 1 :(得分:1)
答案 2 :(得分:0)