MST

星途 面试题库

面试题:Redis在电商热门商品缓存中的数据结构应用

在电商系统缓存热门商品信息场景下,假设商品信息包含ID、名称、价格、库存等,你会选择Redis的哪些数据结构来存储这些信息?并说明原因。
42.6万 热度难度
数据库Redis

知识考点

AI 面试

面试题答案

一键面试
  1. 选择Hash结构
    • 原因
      • 存储结构合理:Hash结构可以将商品信息的各个属性(如ID、名称、价格、库存)作为字段,对应的值作为字段值进行存储。例如,对于一个商品,其ID可以是"1",名称"商品A",价格"100",库存"50",在Redis的Hash结构中可以这样存储:
        HSET product:1 id 1
        HSET product:1 name "商品A"
        HSET product:1 price 100
        HSET product:1 stock 50
        
      • 操作便捷:可以方便地对单个属性进行操作,比如更新商品价格,可以直接使用HSET product:1 price 120命令,而不会影响其他属性。同时获取整个商品信息也很简单,使用HGETALL product:1即可获取所有属性和值。
      • 内存利用率高:相比将每个属性作为一个独立的键值对存储,Hash结构在存储多个相关属性时,内存使用更为紧凑,适合存储结构化的数据,符合商品信息这种多属性集合的特点。