PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

redis有序集合的相关命令有哪些

藏色散人
藏色散人 原创
2020-07-01 09:57:33 3626浏览

redis有序集合的相关命令有:1、“zadd”,调用ziplistinsert函数,将成员和分值作为两个节点分别插入到压缩列表;2、“zcard”,调用ziplistlen函数,获得压缩列表包含节点的数量;3、“zcound”命令等。

有序集合命令的实现方法

命令ziplist 编码的实现方法zset 编码的实现方法
ZADD调用 ziplistInsert 函数,将成员和分值作为两个节点分别插入到压缩列表先调用 zslInsert 函数,将新元素添加到跳跃表,然后调用 dictAdd 函数,将新元素关联到字典
ZCARD调用 ziplistLen 函数,获得压缩列表包含节点的数量,将这个数量除以2得出集合元素的数量访问跳跃表数据结构的 length 属性,直接访问集合元素的数量
ZCOUND遍历压缩列表,统计分值在给定范围内的节点的数量遍历跳跃表,统计分值在给定范围内的节点的数量
ZRANGE从表头向表尾遍历压缩列表,返回给定索引范围内的所有元素从表头向表尾遍历跳跃表,返回给定索引范围内的所有元素
ZREVRANGE表尾向表头遍历压缩列表,返回给定索引范围内的所有元素从表尾向表头遍历跳跃表,返回给定索引范围的所有元素
ZRANK从表头向表尾遍历压缩列表,查找给定的成员,沿途记录经过节点的数量,当找到给定成员之后,沿途节点的数量就是该成员所对应元素的排名从表头向表尾遍历跳跃表,查找给定的成员,沿途记录经过节点的数量,当找到给定成员之后,沿途节点的数量就是该成员所对应元素的排名
ZREVRANK从表尾向表头遍历压缩列表,查找给定的成员,沿途记录经过节点的数量,当找到给定成员之后,沿途节点的数量就是该成员所对应元素的排名从表尾向表头遍历跳跃表,查找给定的成员,沿途纪录经过节点的数量,当找到给定成员之后,沿途节点的数量就是该成员所对应元素的排名
ZREM遍历压缩列表,删除所有包含给定成员的节点,以及被删除成员节点旁边的分值节点遍历跳跃表,删除所有包含了给定成员的跳跃表节点。并在字典中解除被删除元素的成员和分值关联
ZSCORE遍历压缩列表,查找包含了给定成员的节点,然后取出成员节点旁边的分值节点保存的元素分值直接从字典中取出给定成员的分值

相关学习推荐:redis教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。