三.Redis的数据类型
redis的5+1
五大数据类型+key
1.五大数据类型
- String
- 字符串
- String是Redis的最基本的数据类型
- 一个Redis中的String的数据量大小不能超过512M
- String是Redis中其他类型的基础
- 其他的数据类型本质上就是字符串的组织形式不同
- Hash
- 哈希
- 相当于Java中的Map类型
- 其值是一个键值对的集合
- 最终的体现形式:key-<key,value>
- ex:
user=<username=admin,password=123.....>
- List
- 列表
- 类似于Java中的List
- 有序、可重复
- 可以选择在列表的头部或者尾部插入数据
- Set
- 集合
- 类似于Java中的Set
- 无序、不可重复
- ZSet
- 有序集合
- Sorted Set
- 在Set的基础上加了一个字段,用来实现排序操作
- score分数字段,值只能是一个数字
2.List与ZSet
-
相同点
- 两者都是有序的
- 都可以获取某个范围的数据
-
不同点
-
List
- 是通过链表来实现的,因此其获取所有数据的头尾两端的速度非常快
- 当数据量越来越大时,获取中间数据的效率会越来越低
- 在访问两端数据的时候,List效率高
- 在插入数据的时候,List只能插入头部或者尾部的数据,即两端数据
-
ZSet
- ZSet是通过score分数字段来进行排序的
- 因此其访问任意位置的数据的效率都差不多
- 在访问中间数据的时候,ZSet效率高
- 在插入数据的时候,可以根据score插入任意位置
- ZSet比较消耗内存
-