Redis初识第二期---数据类型

Redis的key类型只能为String,但是value的类型却有很多种,这里列出常见的五种类型:

1.String

2.hash

3.set

4.list

5.有序的set == set + 权重

Redis内部采用自动适应的方式来实现数据类型,比如说String在,某些情况下采用int,某些情况下采用row,但总体和String类型用法一样。可以使用Object encoding key 方法来查看value具体的数据类型。

下面是数据类型的具体情况:

1.String

可能类型:

row:最基本的类型,相当于byte[];

int: 当value为整数时。

embstr:针对短字符进行优化,占的空间更小。

2.Hash

可能类型:

hashtable:最基本的哈希表,但是不等于Java中的HashTable。

ziplist:当元素较少时,优化为ziplist来节省空间。

3.List

可能类型:

1.linkedlist:相当于普通的链表。

2.ziplist:也是在元素较少时使用。

但是在Redis3.2后引入了qicklist,代替了linkedlist和ziplist,qicklist本身为一个链表,每个元素为ziplist,可以说是同时兼顾了两者的优点。

4.Set

可能类型:

hashtable:最基本的哈希表。

intset:当都为整数时,优化为intset。

5.Zset

可能类型:

skiplist:跳表,每个节点上有多个指针域,可以使得查询的时间复杂度为O(logN)。

ziplist:和上面类似,在元素较少时使用。

相关推荐
DONG9139 分钟前
《三驾马车:MySQL、MongoDB、Redis对比与融合实战》
数据库·redis·sql·mysql·mongodb·database
程序边界34 分钟前
从 Oracle 到 KingbaseES:企业信创改造的“抄作业”模板,直接套用!
数据库·oracle
funfan051744 分钟前
奇怪的“bug”--数据库的“隐式转换”行为
数据库·bug
Jasonakeke1 小时前
【重学MySQL】八十八、8.0版本核心新特性全解析
android·数据库·mysql
comeoffbest1 小时前
PostgreSQL 能存万物:从安装到高级功能实战
数据库·postgresql
时序数据说1 小时前
IoTDB如何解决海量数据存储难题?
大数据·数据库·物联网·时序数据库·iotdb
小楓12013 小时前
MySQL數據庫開發教學(二) 核心概念、重要指令
开发语言·数据库·mysql
花果山总钻风3 小时前
MySQL奔溃,InnoDB文件损坏修复记录
数据库·mysql·adb
郭京京4 小时前
go语言redis中使用lua脚本
redis·go·lua
TDengine (老段)4 小时前
TDengine IDMP 运维指南(管理策略)
大数据·数据库·物联网·ai·时序数据库·tdengine·涛思数据