我在Redis中有两把钥匙。第一个键包含一组字符串作为值。第二个键包含有序的对象集(String作为值和分数)。我想获取元素,其中第一个键中的字符串和第二个键中对象的字符串字段相似。
如果我用第二个键中的字符串替换对象,我可以获取但我想获取字符串列表及其分数。
我使用Spring-data-redis和jedis进行Redis处理。
是否可以获取常用字符串列表及其相应的分数?如果是的话,如何。
答案 0 :(得分:0)
如何存储数据将影响您想要检索数据的方式。通过存储注释中列出的键,您基本上只能使用字符串操作来确定任何有用的内容,而这实际上并不是使用Redis的价值。 (它不是用于“搜索”,它意味着快速查找。)
考虑这样的事情:
Redis中使用的键将是您的第一组字符串,每个字符串都包含一个值列表。这些列表中的值将是您的第二组字符串,并且可能在不同的列表中重复(如您所见)。
LPUSH "x1" "POJO[field1=x1, field2=y1]" "POJO[field1=x1, field2=y2]"
LPUSH "x2" "POJO[field1=x2, field2=y2]"
etc...
当您想要第一个数字的值时
LRANGE x1 0 1000
(或LLEN x1
- >“结果”,然后是LRANGE x1 0 "result"
)