gpt4 book ai didi

redis - 对 Redis 中的值进行分类......我应该使用集合还是键?

转载 作者:可可西里 更新时间:2023-11-01 11:43:12 25 4
gpt4 key购买 nike

长话短说。我有数千个属于 6 个可能类别之一的条目:

foo => category1
bar => category2
baz => category3
lol => category1

存储键=>值看起来有点奇怪,因为我会多次重复这些值。所以我在考虑使用包含每个元素的 6 个集合。

我的应用收到一个 key 并且必须返回它所属的类别。如果我只使用 key=>values 方法,它就像查询那个键一样简单。如果我使用集合,我必须查询每个集合以查找我的项目:

if SISMEMBER category1 "baz";
return category1
if SISMEMBER category2 "baz";
return category2
if SISMEMBER category3 "baz";
return category3

在这种情况下,最好的方法是什么?除了性能和空间方面的考虑之外,还有什么我应该在这里考虑的吗?

最佳答案

使用hashmap或者key-value来存储item=>category关系,然后可以使用*multiple操作来判断每一个item的类别,相对于一个一个的判断性能会有很大的提升。

例子:

hset('rel', item1, cat1);
hset('rel', item2, cat2);
...
hmget('rel', array(item1, item2)); // return array(item1=>cat1, item2=>cat2);

并使用 set/hashmap/zset 将项目按类别分组;

关于redis - 对 Redis 中的值进行分类......我应该使用集合还是键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20036552/

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