如何提高“ HMGET” Redis的性能?

时间:2019-07-16 06:11:27

标签: c# redis stackexchange.redis

我正在尝试将基于Redis的应用程序迁移到新的哈希结构。这是由于存储量的增长(高达20GB),使其难以垂直扩展。

当前,我通过这种方式将数据存储在散列中:

  

p:{day}> {product id}:{product type}>值

带有不相关数据的示例。 (数据解释是在运行时完成的)

p:150719 ticket:price 7 ticket:sold 15 shoes:size 34 cactus:price 1

每天都有属于商场部门的产品,与每个部门的关系都在部门定义中指定,并且也存储在Redis中。一旦某人需要一个/几天的时间来检索产品,则后退代码会建立一个Dictionary<string, Dictionary<string, string>>并带有通过HGET访问Redis的密钥。

目标是通过对每个部门进行隐式分离来使过滤器更加直观,以简化检索所需的所有信息。

  

p:{部门}:{day}> {产品ID}:{产品类型}>值

检索产品的方法与以前相同。正如预期的那样,每天检索单个密钥时访问速度更快,但是,当为多个部门检索产品时,访问速度较慢,甚至可以 Redis性能不佳(磁盘100%)。

如果更好地划分产品,为什么这种新结构会带来性能问题?有没有更好的方法来解决这个问题?

0 个答案:

没有答案