Caching Redis搜索与值相等的匹配键

Caching Redis搜索与值相等的匹配键,caching,redis,key-value,Caching,Redis,Key Value,好的,在REDIS中,如果我只想设置keys=频道名称 和价值=付费或免费 所以最终我会有一个100、1000等键和值的列表 密钥的价值将被支付或免费 channelName, paid or free 所以,我想来找你 并要求db给我所有值=免费的频道 设置此项的最佳方式/有效方式是什么 基本上,我想查询并返回一个列表,其中包含与列表或目录中某个值相等的所有键。您可以使用,并且成员值为0(免费)或1(付费) 在单个键中,可以存储已排序集的成员,每个成员都有一个十进制值。将免费和付费

好的,在REDIS中,如果我只想设置keys=频道名称 和价值=付费或免费

所以最终我会有一个100、1000等键和值的列表 密钥的价值将被支付或免费

     channelName, paid or free
所以,我想来找你 并要求db给我所有值=免费的频道

设置此项的最佳方式/有效方式是什么

基本上,我想查询并返回一个列表,其中包含与列表或目录中某个值相等的所有键。

您可以使用,并且成员值为0(免费)或1(付费)

在单个键中,可以存储已排序集的成员,每个成员都有一个十进制值。将
免费
付费
抽象为
0
1
值,您可以向集合中添加成员(即在您的情况下,频道),然后查询这些成员

127.0.0.1:6379> ZADD mychannels 0 1stchannel 1 2ndchannel 1 3rdchannel 0 4thchannel
(integer) 4
127.0.0.1:6379> ZRANGEBYSCORE mychannels 0 0 /* Querying free channels */
1) "1stchannel"
2) "4thchannel"
127.0.0.1:6379> ZRANGEBYSCORE mychannels 1 1 /* Querying paid channels */
1) "2ndchannel"
2) "3rdchannel"

我可能应该使用免费和付费作为密钥,并以某种方式存储频道…散列,设置hmmm调查你不设置这个。Redis是一个键值存储,专门用于检索与某个键相关的值。如果你想能够查询多个字段,你需要一个不同的数据结构,比如关系或索引文档数据库。。。我想要一些轻量级的东西,并且托管/远程得到了任何建议。这将几乎完全基于观点,仍然在很大程度上取决于您的用例的细节。谢谢!!我已经理解了排序集,现在你给了我一个很好的例子来扩展