很难找到正确的方法来对 couchbase 中的每个用户数据进行建模并通过 couchbase mobile 同步用户特定数据。在 couchdb 中,每个用户都有一个单独的数据库。couchbase 中最好的方法是什么?
问问题
270 次
2 回答
1
您可以以能够轻松检索所有相关实体的方式创建文档。例如
- 将您的文档
user_{Guid}
视为Guid
您的 UserID - 使所有其他相关文档与此相同
Guid
,这样credential_{Guid}
当用户登录时,我们可以在会话中拥有用户 ID 并获取该用户的所有信息。
于 2015-03-11T14:56:54.220 回答
1
在 Couchbase 中没有“用户数据”之类的东西。它通用且对您的设计开放。
通常,当您为 Couchbase 设计对象域模型时,您会在关键结构中注入元数据。
例如: 帐户密钥:“ Acc #123456789” - 其中前缀“Acc#”说明密钥的类型,“123456789”添加此密钥的特定地址实例......导致唯一密钥。同样,如果您想将关联地址编码到帐户,您将构建以下密钥:“Acc#123456789# Addr ” - 其中后缀“#Addr”标识地址对象的密钥类型
现在,如果您想拥有用户特定的键,您只需将用户标识符注入键值(来自上面的示例):
- 键“Acc#123456789”将转换为“ usr#12345 #Acc#123456789”
- 键“Acc#123456789#Addr”将转换为“ usr#12345 #Acc#123456789#Addr”
在此处阅读有关 Couchbase 数据建模以及键和元数据的更多信息
于 2015-03-10T13:51:59.263 回答