专栏首页晨曦破晓の家Redis的各种数据类型实践-ZSet

Redis的各种数据类型实践-ZSet

zset是有序的set集合,通过传入的分值进行排序

image

ZSet常用操作

ZADD key score member [[score member]…]//往有序集合key中加入带分值元素
ZREM key member [member …]  //从有序集合key中删除元素
ZSCORE key member //返回有序集合key中元素member的分值
ZINCRBY key increment member//为有序集合key中元素member的分值加上increment 
ZCARD key//返回有序集合key中元素个数
ZRANGE key start stop [WITHSCORES]//正序获取有序集合key从start下标到stop下标的元素
ZREVRANGE key start stop [WITHSCORES]//倒序获取有序集合key从start下标到stop下标的元素

Zset集合操作

ZUNIONSTORE destkey numkeys key [key ...] //并集计算 
ZINTERSTORE destkey numkeys key [key …]//交集计算

应用场景

我们都知道微博热点,新闻热榜,投票排行榜等都有一个排名的概念,如下图百度热榜,展示的是实时的点击量比较高的新闻(假设这些新闻的ID为1001-1010),每个新闻都有一个热点值,一般按点击量,1001这个新闻热点是484W,1002这个是467W,实时的,可能等会再看就不一样了,那么我们看下用Redis咋实现。

image

1)点击新闻

每次有人点击这个新闻,那么久ius给他的分值加1

ZINCRBY hotNews:20200722 1 1001 //新闻ID为1001的新闻分值加一 2)展示当日排行前十

取集合中的前10个元素

ZREVRANGE hotNews:20200722 0 10 WITHSCORES 3)七日热点榜单计算

ZUNIONSTORE hotNews:20200715-20200721 7 hotNews:20200715 hotNews:20200716... hotNews:20200721 4)展示七日排行前十

ZREVRANGE hotNews:20190813-20190819 0 10 WITHSCORES

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Redis的各种数据类型实践-Set

    Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。 Redis 中集合是通过哈希表实现的,所以添...

    用户4464623
  • Redis的各种数据类型实践---List结构

    Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)

    用户4464623
  • Redis的各种数据类型实践--String字符串

    Redis作为一款NoSQL内存数据库,其丰富的数据类型、简单易用的命令、单机可达10万的高并发(官方数据),从面世以来就深受广大用户的喜爱。Redis的五种数...

    用户4464623
  • 实例讲解redis字符串类型

    章鱼喵
  • redis系列:通过通讯录案例学习hash命令

    这一篇文章将讲述Redis中的hash类型命令,同样也是通过demo来讲述,其他部分这里就不在赘述了。

    云枭
  • 算法学习笔记(一):插入排序和线性查找

    free赖权华
  • 算法原理系列:散列表

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.n...

    用户1147447
  • Redis命令全集

    总的来说,Redis是一个基于内存的高性能的键值型数据库,也就是常说的NoSQL,可以用来作为数据库或者缓存.并且支持多种数据结构,包括字符串,散列,列表,集合...

    呼延十
  • Redis系列(十一)redis命令全集

    总的来说,Redis 是一个基于内存的高性能的键值型数据库,也就是常说的 NoSQL, 可以用来作为数据库或者缓存。并且支持多种数据结构,包括字符串,散列,列表...

    呼延十
  • Redis从入门到放弃(二)

    string是reids的最基本的类型 最大能存储 512M的数据 string类型是二进制的 可以存储任何数据 比如数字 图片 序列化对象等

    会呼吸的Coder

扫码关注云+社区

领取腾讯云代金券