redis基础知识
redis的五大数据结构
String(字符串)
string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
set 设置值/get 获得值/del 删除值 /append 扩展值 /strlen 获得值得长度
Incr 加一/decr 删一/incrby 增量 /decrby 删量 一定要是数字才能进行加减
getrange:获取指定区间范围内的值,类似between......and的关系
从零到负一表示全部
setrange设置指定区间范围内的值,格式是setrange key值 具体值
setex(set with expire)键秒值
setex 键 秒值 真实值
setnx:只有在 key 不存在时设置 key 的值
msetnx:同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在。
Hash(哈希)
Redis hash 是一个键值对集合。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
类似Java里面的Map<String,Object>string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M
hset key flied 值
hget Key flied 获得值
删除 hdel key flied (可以有多个flied)
HKeys 获取key下的所有filed
Hvals 获取key下的所有value
List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。
它的底层实际是个链表
Set(集合)
Redis的Set是string类型的无序集合。它是通过HashTable实现实现的
zset(sorted set:有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。
redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。