3-redis-数据类型
作者:
宠辱不惊的咸鱼 | 来源:发表于
2018-01-24 09:59 被阅读2次
key
- 字符串类型
- redis内部并不限制binary字符,但redis协议做了限制,即key中不能出现空格、换行符等边界字符
- redis 1.2以后的协议中部分命令已经采用新的协议格式,但严谨而言,不建议乱用
- 格式约定
# 长度不要太长,占内存,查找慢;不推荐过短,可读性不好
object-type:id:field
user:1000:password
blog:73972:title
value
- string
- 二进制安全,可以包含任何数据,也即字节数组,上限1G
# string类型定义
struct sdshdr {
long len; # 数组长度
long free; # 剩余可用
char buf[]; # c里的char是1个字节的
};
- list
- set
- string的无序集合,基于hash table实现
- 调整大小时获取写锁阻塞其他读写线程,据说在zset中实现的跳表(skip list)可以避免这个
- 操作:union,intersection,difference
- zset
- 与set的差异在于每个string会关联1个score
- string->score映射在hash table中
- score->string映射在skip list中
- hash
本文标题:3-redis-数据类型
本文链接:https://www.haomeiwen.com/subject/bjbyaxtx.html
网友评论