Redis学习-常用的数据类型

Reids平常我们一般说的数据类型是:

  1. 字符串(String)
  2. 列表(List)
  3. 哈希(Hash)
  4. Set(集合)
  5. Sorted(有序集合)

Redis底层的数据实现

  1. 简单动态字符串 (为什么Reids不使用C原有的字符串
  2. 双向列表
  3. 压缩列表
  4. 哈希表
  5. 跳跃表
  6. 整数数组
对应关系

Reids数据 类型和底层数据的对应关系

简单说明

字符串

命令
内部编码实现
1.int 8字节的长整形
2.embstr 少于39字节的字符串
3.raw 大于39个字节的字符串
场景
1.缓存功能

哈希

命令
内部编码实现

1.ziplist(压缩列表)
ziplist使用更加紧凑的结构实现多个连续元素的连续存储,所以在节省内存方面更加优秀
使用条件:a.哈希类型个数小于hash-max-ziplist-entries配置(默认512)
b.所有值小于hash-max-ziplist-value配置(默认64)
2.hashtable(哈希表) 当无法满足ziplist的条件时,使用此实现

场景
1.用户属性信息的保存
列表
命令
内部编码
  1.ziplist(压缩列表)
  ziplist使用更加紧凑的结构实现多个连续元素的连续存储,所以在节省内存方面更加优秀
  使用条件:a.列表的元素个数小于hash-max-ziplist-entries配置(默认512)
            b.所有值小于hash-max-ziplist-value配置(默认64)
  linkedlist(链表)
场景
1.消息队列
2.文章列表

集合

命令
内部编码
 1.intset(整数集合)
    a.set-max-intset-entries小于512(默认配置)
 2.hashtable(哈希表)
场景
 1.标签

有序集合

内部编码
 1.ziplist(压缩列表)
  a.zset-max-ziplist-entries小于128(默认配置)
  b.zset-max-ziplist-value小于64字节(默认配置)
 2.skiplist(跳跃表)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值