一.Redis基本介绍
1.Redis是NoSQL数据库,不是传统的关系型数据库。
2.Redis:REmote Dictionary Server(远程字典服务器),高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是最热门的NoSql数据库之一,也称为数据结构服务器.
二.Redis的基本使用
1.添加key-val [set]
2.查看当前redis的所有key [keys *]
3.获取key对应的值 [get key]
4.如何查看当前数据库的key-val数量 [dbsize]
5.清空当前数据库的key-val和清空所有数据库的key-val [flushdb flushall]
三.Redis数据类型和CRUD
Redis的五大数据类型
Redis的五大数据类型是:string(字符串)、Hash(哈希)、List(列表)、Set(集合)和zset(sorted set:有序集合)
String(字符串)-介绍
string是redis最基本的类型,一个key对应一个value。
string类型是二进制安全的。除普通的字符串外,也可以存放图片等数据。
redis中字符串value最大是512M
setex(set with expire)键秒值
mset(同时设置一个或多个key-value对)
Hash(哈希,类似golang里的Map)-介绍
Redis hash 是一个键值对集合。var user1 map[string]string
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象
。
hash-使用细节和注意事项
在给user设置name和age时,使用hmset和hmget可以一次性来设置多个filed的值和返回多个field的值。
hlen统计一个hash有几个元素
hexists key field 查看哈希表key中,给定域field是否存在
List(列表)-介绍
列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边).
List本质是个链表,List的元素是有序的,元素的值可以重复。
List-使用细节和注意事项
1.lindex,按照索引下标获得元素(从左到右,编号从0开始)。
2.LLEN key
返回列表key的长度,如果key不存在,则key被解释为一个空列表,返回0
3.List的其它说明
List数据,可以从左或者右 插入添加
如果值全移除,对应的键也就消失了。
Set(集合)-介绍
Redis的Set是string类型的无序集合。
底层是HashTable数据结构,Set也是存放很多字符串元素,字符串元素是无序的,而且元素的值不能重复
sadd 添加值
smembers 取出所有值
sism ember判断值是否是成员
srem 删除指定值