Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Couchbase与数千种不同的模式一起使用_Couchbase - Fatal编程技术网

将Couchbase与数千种不同的模式一起使用

将Couchbase与数千种不同的模式一起使用,couchbase,Couchbase,考虑一个多租户应用程序,其中租户可以自由地为自己的模式建模。即:后端即服务 根据这些要求,每个桶的“表”是可撤销的。相反,我只是想用一个属性“schema id”定义模式的id。每个“schema id”都是基于tenantId+schemaid的复合键 就检索而言,只应支持“按id获取”。从这个意义上说,我只是将Couchbase用作k/v存储,而不是文档存储 以上有什么需要注意的吗?每个桶的实体数量是否会成为一个问题?还有什么需要考虑的吗 关键模式的想法听起来很棒。您必须确保集群的大小正确,

考虑一个多租户应用程序,其中租户可以自由地为自己的模式建模。即:后端即服务

根据这些要求,每个桶的“表”是可撤销的。相反,我只是想用一个属性“schema id”定义模式的id。每个“schema id”都是基于tenantId+schemaid的复合键

就检索而言,只应支持“按id获取”。从这个意义上说,我只是将Couchbase用作k/v存储,而不是文档存储


以上有什么需要注意的吗?每个桶的实体数量是否会成为一个问题?还有什么需要考虑的吗

关键模式的想法听起来很棒。您必须确保集群的大小正确,并随着时间的推移保持正确大小


如果你真的想严格控制一切,你甚至可以用一个简单的RESTAPI来处理整个事情。然后,您可以严格控制访问、控制密钥模式等。服务的每个用户将获得一个API密钥,该密钥将为他们提供一个会话。

为不同的模式使用不同的存储桶将无法扩展,因为我认为CB中只有10个存储桶的限制。 由于客户机知道is键,我们可以将CB中的数据映射到一个特定的类,因为我们知道它将来自该键的模式类型

例如,如果密钥为PRODUCT_1234或USER_12345,则我们知道第一个密钥的数据类型为PRODUCT,第二个密钥的数据类型为USER