Redis Cache是​​否支持查询功能

时间:2016-03-11 05:01:01

标签: java redis

我正在学习redis缓存,只是想知道它支持查询能力。

我们有位置表,想要将记录存储在redis缓存中(需要按位置名称或ID进行搜索)。

让我知道我们如何建立一个密钥。

或者我们是否需要在redis缓存中添加两个条目

 jedis.set(TenantId+LocationName, Location)

 jedis.set(TenantId+LocationId, Location)

提前致谢!!!

1 个答案:

答案 0 :(得分:1)

Redis允许查询,但与其他NoSQL数据库一样,您希望根据您要查询的方式将数据存储在其中。如果你需要通过名称或id进行查询,你需要两个“条目”来促进这一点(顺便说一下,这与RDBMS对索引的作用没有什么不同)。

但是,相反,使用Hash数据结构创建两个键 - 一个用于名称查找而另一个用于id - 用SET命令。对于每个租户,每个位置保留一个带有两个字段的哈希 - 一个从名称映射到id,反之亦然。非常伪Java调用HMSET看起来像:

jedis.hmset(TenantId, <LocationName, Location, locationId, Location>);
相关问题