Redis 简介
- 概念:Redis (REmote DIctionary Server) 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库。
- 特征:
- 数据间没有必然的关联关系
- 内部采用单线程机制进行工作
- 高性能。官方提供测试数据,50个并发执行100000 个请求,读的速度是110000 次/s,写的速度是81000次/s。
- 多数据类型支持
- 字符串类型 string
- 列表类型 list
- 散列类型 hash
- 集合类型 set
- 有序集合类型 zset/sorted_set
- 支持持久化,可以进行数据灾难恢复
Redis 的基本操作
string 类型数据的基本操作
-
添加/修改数据
- set key value
-
添加/修改多个数据
- mset key1 value1 key2 value2 …
-
获取多个数据
- mget key1 key2 …
-
获取数据
- get key
-
删除数据
- del key
-
判定性添加数据
- setnx key value
-
获取数据字符个数(字符串长度)
- strlen key
-
追加信息到原始信息后部(如果原始信息存在就追加,否则新建)
- append key value
hash 类型数据的基本操作
-
添加/修改数据
- hset key field value
-
添加/修改多个数据
- hmset key field1 value1 field2 value2 …
-
获取数据
- hget key field
- hgetall key
-
获取多个数据
-
hmget key field1 field2 …
-
删除数据
- hdel key field1 [field2]
-
设置field的值,如果该field存在则不做任何操作
- hsetnx key field value
-
获取哈希表中字段的数量
- hlen key
-
获取哈希表中是否存在指定的字段
- hexists key field
list 类型数据基本操作
- 添加/修改数据
- lpush key value1 [value2] ……
- rpush key value1 [value2] ……
- 获取数据
- lrange key start stop
- lindex key index
- llen key
- 获取并移除数据
- lpop key
- rpop key
set 类型数据的基本操作
-
添加数据
- sadd key member1 [member2]
-
获取全部数据
- smembers key
-
删除数据
- srem key member1 [member2]
-
获取集合数据总量
- scard key
-
判断集合中是否包含指定数据
- sismember key member
-
随机获取集合中指定数量的数据
- srandmember key [count]
-
随机获取集合中的某个数据并将该数据移出集合
- spop key [count]
key 基本操作
- 删除指定key
- del key
- 获取key是否存在
- exists key
- 获取key的类型
- type key