Redis的五大基本数据类型

一、Redis基本知识与Redis键(key)常用操作命令。

redis的默认端口6379。mysql默认端口号3306。
默认16个数据库,类似数组的下标从0开始,初始默认使用0号库。可以使用select index来切换数据库,如:select 1,表示切换到第2个库。
统一密码管理,所有的库密码相同。

二、Redis的五大值的数据类型。(value)

  • redis字符串。(String)
  • redis列表。(List)
  • redis集合。(Set)
  • redis哈希表。(Hash)
  • redis有序集合(Zset)

(1)Redis关于键(key)的值常用操作指令表格统计

|-----------------------|-----------------------------|
| 命令 | 基本介绍 |
| set key value | 添加键值对。若键存在,会覆盖原值。(简单设置字符串值) |
| get key | 获取键对应值。 |
| setnx key value | key不存在时,才会设置对应的key与value。 |
| append key value | 原有键的值后追加值。。 |
| strlen key | 获取字符串值的长度。 |
| mset k1 v1 k2 v2 ... | 同时设置多个key-value。 |
| msetnx k1 v1 k2 v2 .. | 原子性:当所有的key就不存在值时,则设置成功。 |
| mget k1 k2... | 同时获取多个key对应的value。 |

(2)列表(List)

  • Redis列表是简单的字符串列表。底层实际上是使用双向链表实现的。
  • Redis值(列表)常用命令的表格统计。

(3)哈希表(HashSet)

Redis hash 是一个键值对集合。
Redis hash是一个 string 类型的 field 和 value 的映射表, hash 特别适合用于存储对象。 类似于java 里面的 Map<String,Object>。
Hash 类型对应的数据结构是 : ziplist (压缩列表), hashtable (哈希表)。
当 field-value 长度较短个数较少时,使用 ziplist ,否则使用 hashtable 。

(4) 集合(Set)

  • Redis Set与List类似,是一个列表的功能,特殊之处在于Set是可以自动排重的!当需要存储一个列表数据,又不希望出现重复数据时,Set是一个很好的选择。
  • Redis的Set是String类型的无序集合,他的底层实际是一个value为null的Hash表,添加,删除,查找复杂度都是O(1)。

(5)有序集合(ZSet)

  • redis有序集合zset与普通集合set非常相似,是一个没有重复元素的字符串集合。
  • 不同之处:有序集合的每个成员都关联了一个评分(score),这个评分(score)被用来按照从最低分 到最高分的方式排序集合中的成员。
  • 集合的成员是唯一的,但是评分是可以重复的。
  • 因为元素是有序的,所以你可以很快的根据评分(score)或者次序(position)来获取一个范围的元素。
  • 访问有序集合中的中间元素也是非常快的,因为你能够使用有序集合作为一个没有重复成员你的智能列表。
相关推荐
栗子~~3 小时前
JAVA - 二层缓存设计(本地缓冲+redis缓冲+广播所有本地缓冲失效) demo
java·redis·缓存
隔窗听雨眠4 小时前
多活部署、CDN加速与边缘缓存全链路优化实战
缓存
星星也在雾里4 小时前
PgBouncer 解决 PostgreSQL 连接数超限 + 可视化监控
数据库·postgresql
未若君雅裁5 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
雨辰AI6 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
长城20246 小时前
关于MySql的ONLY_FULL_GROUP_BY问题
数据库·mysql·聚合列
常常有6 小时前
MySQL 底层执行原理:输入SQL语句到两阶段提交
数据库·sql·mysql
Mr. zhihao7 小时前
深入解析redis基本数据结构
数据结构·数据库·redis
m0_748839497 小时前
利用天正暖通CAD快速掌握风管数量统计的方法
数据库
随身数智备忘录7 小时前
什么是设备管理体系?设备管理体系包含哪些核心模块?
网络·数据库·人工智能