redis 数据存储的几类型,你会了吗?
1数据存储
两种数据持久化方式 是由配置文件 redis.conf决定的。
Save 参数配置 以数据文件的形式持久化内存中的数据到磁盘上
Appendonly 参数配置 记录所有对内存数据有修改的命令 到磁盘上 >>>更多关于:redis的数据类型
2数据结构
作者称redis是一种数据结构服务器,因为它支持丰富的数据结构 string list set sorted set hash。 另外,还支持消息订阅与发布 pub/sub
Redis里面所有的数据都是 key – value 键值对。
3常用命令
1key相关
Key 基本操作:DEL EXISTS P/EXPIRE P/EXPIREAT KEYS RENAME SORT TYPE TTL PTTL OBJECT MOVE
DEL key [key ...]
set name “zhangsan” expire name 30
Keys *a* keys n??? Keys *
SORT 列表、集合、有序集合 根据key对应的值进行排序 SORT key DESC(降序)
TTL 返回给定 key 的剩余生存时间,单位秒
OBJECT REFCOUNT(引用次数)/ ENCODING(内部编码)/ IDLETIME(空置时间 秒) key
MOVE name 1 将当前数据库 key为name的数据移动到 1号数据库
2string相关
基本操作:GET SET INCR DECR MSET MGET STRLEN APPEND GETSET SETEX(设置key的存活时间) SETNX(不存在才设置)
set name “zhang san” EX/PX 100
mset date "2012.3.30" time "11:00 a.m." weather "sunny“
查看剩余时间: TTL (秒) PTTL(毫秒)
append name “ is a man”
GETSET 类似 return num ++;
3list相关
LIST 基本操作: L/RPUSH L/RPOP LSET LLEN LRANGE RPOPLPUSH
实质是一个 每个元素都是string类型的双向链表
双向链表的每个元素,都有自己的地址、头指针、尾指针
4set相关
一组不同类型元素组成的集合,集合最多可放 2的32次方 减1 个元素
集合基本操作
SADD SDIFF SDIFFSTORE SINTER SMEMBERS SISMEMBERS
SRANDMEMBER SREM
集合使用广泛,比如微博共同好友,只要将两个集合求交集即可。
Sorted set: 要加一个权重
比如取出最热门的5条新闻
5消息的订阅和发布
Pub/sub
订阅消息:
subscribe channel1
发布消息:
publish channel1 hello
6事务
redis的事务处理,多条命令中有失败,也无法将所有指令回滚
redis对事务的支持目前还比较简单。redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。
来源于:http://www.codexueyuan.com/learn/learn-detail186-redisshu