非唯一密钥的Redis

非唯一密钥的Redis,redis,Redis,有谁能建议一种方法,我们可以将数据存储在Redis缓存中,其中密钥不是唯一的 例如,我有一个包含两列a和B的数据库。a总是唯一的,因此我们可以使用它创建Redis哈希。 但是,B不是唯一的,对于B,可以有A列的多个数据 有人能建议一种方法,我们可以创建一个支持非唯一键的Redis哈希。如果您想将值存储在B列(不是唯一的),您可以使用Redis list 请参见在redis哈希中创建非唯一键是不可能的。我的建议是在单个哈希键中附加B列的值 例如,如果列B包含以下值 B | value key_1

有谁能建议一种方法,我们可以将数据存储在Redis缓存中,其中密钥不是唯一的

例如,我有一个包含两列a和B的数据库。a总是唯一的,因此我们可以使用它创建Redis哈希。 但是,B不是唯一的,对于B,可以有A列的多个数据


有人能建议一种方法,我们可以创建一个支持非唯一键的Redis哈希。

如果您想将值存储在B列(不是唯一的),您可以使用Redis list


请参见

在redis哈希中创建非唯一键是不可能的。我的建议是在单个哈希键中附加B列的值

例如,如果列B包含以下值

B | value
key_1 | value1
key_2 | value2
key_3 | value3
key_1 | value4
key_2 | value5
您可以通过在
键1
中添加
value1
value4
将值存储在redis哈希中,如下所示

key_1 = value1:value4
key_2 = value2:value5
key_3 = value3

注意:为了实现这种方法,您需要到redis服务器进行两次往返,以获取redis中已经存在的值,然后在redis中重新设置新值

Redis的理念要求您考虑您希望/需要如何访问数据,并相应地选择最合适的数据结构。您计划如何“查询”B值?