什么是redis的score?

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: 在实际业务中,规则检查的结果集保存在redis中。

在实际业务中,规则检查的结果集保存在redis中。


以  Rule:GlsId:defectCnt:Oos:Ooc:GlsId:RuleId。以ruleID为score存入redis。


类似于这种语法,此处可以看到score其实就是一个时间,这个epochSecond时间是simpleTime.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond();


epoch是纪元时间,是1970年为1s一直往后累加以秒为单位的一个时间。

Double score = Double.valueOf(epochSecond);
      final String key = String.format("history:%s", opeId);
      String redisValue = String.format("%s:%s:%s:%s:%s:%s:%s:%s", "","","","","","");
      jedis.zadd(key, score, redisValue);

其中scroe指的就是该有序集合成员的次序。默认从小到大。

http://doc.redisfans.com/sorted_set/zrange.html

-----------------------------------update 2019年12月21日15:48:17--------------------------

sorted set可以通过用户额外提供一个优先级(score)的参数来为成员排序,并且是插入有序的,即自动排序。当你需要一个有序的并且不重复的集合列表,那么可以选择sorted set结构。和set相比,sorted set关联了一个double类型权重的参数score,使得集合中的元素能够按照score进行有序排列,redis正是通过分数来为集合中的成员进行从小到大的排序。


实现方式:Redis sorted set的内部使用HashMap和跳跃表(skipList)来保证数据的存储和有序,HashMap里放的是成员到score的映射,而跳跃表里存放的是所有的成员,排序依据是HashMap里存的score,使用跳跃表的结构可以获得比较高的查找效率,并且在实现上比较简单。


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
6月前
|
NoSQL 测试技术 Redis
终于把Redis中7千万个Key删完了
终于把Redis中7千万个Key删完了
75 0
|
6月前
|
存储 NoSQL 测试技术
redis 大key
redis 大key
94 0
|
6月前
|
存储 NoSQL Redis
redis-(error)-MISCONF。Redis。is。configuredto。save。RDBsnapshots
redis-(error)-MISCONF。Redis。is。configuredto。save。RDBsnapshots
281 0
|
6月前
|
Java Redis
redis-学习笔记(Jedis list简单命令)
redis-学习笔记(Jedis list简单命令)
51 1
|
6月前
|
存储 Java Redis
redis-学习笔记(Jedis set 简单命令)
redis-学习笔记(Jedis set 简单命令)
60 1
|
5月前
|
存储 缓存 运维
Redis的热Key问题
【6月更文挑战第18天】Redis中的热Key是高访问频率的Key,如QPS高、大带宽使用或CPU密集型操作。热Key可能导致CPU占用过高、访问倾斜、缓存击穿和系统性能下降。爆款商品、热点事件等可引发热Key。检测热Key可借助云服务、`redis-cli hotkeys`、业务层监控或`MONITOR`命令。优化策略包括复制热Key到多分片、采用读写分离,但需权衡代码复杂性和数据一致性。
58 0
|
6月前
|
存储 消息中间件 NoSQL
redis-学习笔记(list)
redis-学习笔记(list)
29 0
|
6月前
|
搜索推荐
redis-学习笔记(set)
redis-学习笔记(set)
36 0
|
6月前
|
存储 数据采集 NoSQL
Redis入门到通过之Redis实现全局唯一id
Redis入门到通过之Redis实现全局唯一id
125 0
|
6月前
|
存储 NoSQL 安全
Redis系列-5.Redis大Key问题
Redis系列-5.Redis大Key问题
98 0