gpt4 book ai didi

在 Cassandra 的列表中搜索多个元素

转载 作者:行者123 更新时间:2023-12-03 04:34:40 25 4
gpt4 key购买 nike

我正在学习数据模型在 Cassandra 中的工作原理、可以做什么、不可以做什么等。

我看到您可以拥有集合,我想知道您是否可以搜索集合内的元素。我发现您可以查找一个包含的元素,但如果您想查找多个元素,则需要添加更多过滤器,有什么方法可以做得更好吗?这是一个不好的做法吗?这是我的表定义:

CREATE TABLE data (
group_id int,
user timeuuid,
friends LIST<VARCHAR>,
PRIMARY KEY (group_id, user)
);

据我所知,我可以用它来查找列表中的多个项目:

从 friend 包含“bob”和 friend 包含“Pete”的群组中选择 * 允许过滤;

谢谢

最佳答案

出于性能原因,通常不建议使用二级索引。

通常,在 Cassandra 中,应遵循基于查询的建模。

所以,

这意味着另一个表:

 CREATE TABLE friend_group_relation (
friend VARCHAR,
group_id int,
<user if needed>
PRIMARY KEY ((friend), group_id)
);

现在您可以在此表上使用 IN 查询(​​推荐)或异步查询(强烈推荐,非常快的响应)。

关于在 Cassandra 的列表中搜索多个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30488514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com