9 个回答
String:最简单的KV存储,适用于计数器(如秒杀库存)、单值缓存(如用户token)。例如字节跳动用String实现直播间的在线人数统计。
Hash:字段级操作特性适合存储对象(如电商商品详情页的规格参数),美团用Hash实现外卖骑手的位置信息更新。
List:消息队列(如微博的评论列表)、阻塞队列(如滴滴的司机抢单任务池)。
Set:去重场景(如微信共同好友推荐)、随机抽奖(如拼多多的砍价活动参与者)。
SortedSet:排行榜(如B站视频热榜)、延迟队列(如京东订单超时关闭)。
Hash:字段级操作特性适合存储对象(如电商商品详情页的规格参数),美团用Hash实现外卖骑手的位置信息更新。
List:消息队列(如微博的评论列表)、阻塞队列(如滴滴的司机抢单任务池)。
Set:去重场景(如微信共同好友推荐)、随机抽奖(如拼多多的砍价活动参与者)。
SortedSet:排行榜(如B站视频热榜)、延迟队列(如京东订单超时关闭)。
发布于:1周前 (03-10) IP属地:四川省
BloomFilter:
使用场景:不需要存储数据本身的情况下,判断一个元素是否存在于某个集合中。
案例:使用BloomFilter解决缓存穿透问题。
发布于:11个月前 (04-23) IP属地:四川省
Geo:
使用场景:Geo是Redis中用于地理位置相关的功能的数据结构。
案例:实现附近的人或者地点功能,如找到附近的餐厅、酒店、商店等。
发布于:11个月前 (04-23) IP属地:四川省
HyperLogLog:
使用场景:HyperLogLog主要用于进行大规模数据去重或数据集基数估计。
案例:使用HyperLogLog满足UV统计的需求,同时可以节约存储空间。
发布于:11个月前 (04-23) IP属地:四川省
有序集合(Zset):
使用场景:与集合类似,但元素是有序的,通过分数进行排序,可以用于实现排行榜等功能。
案例:存储游戏玩家的分数排行榜,根据分数高低进行排序。
发布于:11个月前 (04-23) IP属地:四川省
集合(Set):
使用场景:无序集合,可以用于实现交集、并集、差集等操作,常用于去重场景。
案例:存储用户关注的话题标签,利用集合的自动去重特性,避免重复存储。
发布于:11个月前 (04-23) IP属地:四川省
列表(List):
使用场景:适合存储有序集合,常用于实现队列、栈等结构。
应用场景:例如,使用列表实现消息队列,用于存储待处理的消息。
发布于:11个月前 (04-23) IP属地:四川省
哈希(Hash):
使用场景:存储对象,每个对象都有多个字段,适合存储结构化数据。
案例:存储用户信息,如 HSET user:1001 id 1001,HSET user:1001 name "John Doe",HSET user:1001 age 30。
发布于:11个月前 (04-23) IP属地:四川省
字符串(String):
使用场景:存储简单的键值对,如缓存数据、计数器、分布式锁等。
案例:缓存用户信息,如 SET user:1001 "{ 'id': 1001, 'name': 'John Doe', 'age': 30 }"。
发布于:11个月前 (04-23) IP属地:四川省
我来回答
您需要 登录 后回答此问题!