Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/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
Cassandra 如何对键值存储中的两个数据集执行交集操作?_Cassandra_Redis_Couchbase_Key Value Store_Nosql - Fatal编程技术网

Cassandra 如何对键值存储中的两个数据集执行交集操作?

Cassandra 如何对键值存储中的两个数据集执行交集操作?,cassandra,redis,couchbase,key-value-store,nosql,Cassandra,Redis,Couchbase,Key Value Store,Nosql,假设我有两个数据集,一个用于规则,另一个用于值 我需要根据规则过滤这些值 我使用的是键值存储(couchbase、cassandra等)。我可以使用multi-get检索一个表中的所有值,以及另一个表的所有规则,并在循环中执行验证 然而,我发现这是非常低效的。我在网络上移动大量数据(值),客户机忙于过滤 查找具有键值存储的两个表之间的交集的常见模式是什么?nosql数据模型背后的思想是以非规范化的方式写入数据,以便表能够响应精确的查询。举个例子,假设你有顾客对商店的评论。你需要知道用户对商店的评

假设我有两个数据集,一个用于规则,另一个用于值

我需要根据规则过滤这些值

我使用的是键值存储(couchbase、cassandra等)。我可以使用multi-get检索一个表中的所有值,以及另一个表的所有规则,并在循环中执行验证

然而,我发现这是非常低效的。我在网络上移动大量数据(值),客户机忙于过滤


查找具有键值存储的两个表之间的交集的常见模式是什么?

nosql数据模型背后的思想是以非规范化的方式写入数据,以便表能够响应精确的查询。举个例子,假设你有顾客对商店的评论。你需要知道用户对商店的评论以及商店收到的评论。这将使用两个表进行建模

ShopReviews
用户评论

在第一个表中,您可以按店铺id查询,在第二个表中,您可以按用户id查询,但数据会被写入两次,并且仅使用一个键访问即可直接访问

同样,你应该按照规则组织价值观(如果不知道它们之间的关系,就不能更精确地组织价值观),等等。还有一点需要考虑:较新版本的nosql db支持集合,这可能有助于建立1对多关系模型


嗯,卡洛

Downvoter,介意分享一下原因吗?