Redis数据库

来源:互联网 发布:cmd中如何测试80端口 编辑:程序博客网 时间:2024/05/20 05:45

Redis数据库

1.概念

Redis数据库是键值数据库、缓存数据库,属于NoSql数据库(非关系型数据库)。

2.优势

与传统关系型数据库相比(MySQL、Oracle、SQL Server)

(1)由于存储在内存之中,所以存取效率远高于传统的关系型数据库。

(2)具有丰富的数据类型,没有固定的表结构,可以存储各种类型的值

(3)可以水平扩容、分布式

3.历史

Redis的前身是Memcache

4.可存储的类型

(1)字符串类型

redis 127.0.0.1:6379> set name "string
OK 
redis 127.0.0.1:6379> get name 
"string"

注: 用mset、mget可多值存储、多值取出

(2)哈希类型

127.0.0.1:6379>  hmset car name "benz" description "This is a car." price 1000000
OK    
127.0.0.1:6379>  hgetall car   
 "name"    
 "benz"    
 "description"   
 "This is a car."   
 "price"    
 "1000000"    

注:hset可以存储一个键值对、hget可以取出一个键值对

(3)列表

redis 127.0.0.1:6379> LPUSH dblist redis
(integer) 1
redis 127.0.0.1:6379> LPUSH dblist mongodb
(integer) 2
redis 127.0.0.1:6379> LPUSH dblist mysql
(integer) 3
redis 127.0.0.1:6379> LRANGE dblist 0 10
"mysql"
"mongodb"
"redis"


redis 127.0.0.1:6379> LPOP dblist
redis 127.0.0.1:6379> LRANGE dblist 0 10
"mongodb"
"redis"

(4)set(无序集合)

redis 127.0.0.1:6379> SADD dbset redis
(integer) 1
redis 127.0.0.1:6379> SADD dbset mongodb
(integer) 1
redis 127.0.0.1:6379> SADD dbset mysql
(integer) 1
redis 127.0.0.1:6379> SADD dbset mysql
(integer) 0
redis 127.0.0.1:6379> SMEMBERS dbset
"mysql"
"mongodb"
"redis"

(5)sort set(有序集合)

redis 127.0.0.1:6379> ZADD zset 1 redis
(integer) 1
redis 127.0.0.1:6379> ZADD zset 2 mongodb
(integer) 1
redis 127.0.0.1:6379> ZADD zset 3 mysql
(integer) 1
redis 127.0.0.1:6379> ZADD zset 3 mysql
(integer) 0
redis 127.0.0.1:6379> ZADD zset 4 mysql
(integer) 0
redis 127.0.0.1:6379> ZRANGE zset 0 10 WITHSCORES
"redis"
"1"
"mongodb"
"2"
"mysql"
"4"

5.应用场景

(1)string:可用于 秒杀商品数目或者点 zan 的操作(因为有incr 和 decr 增加操作命令)

(2)hash:电商网站中商品的详细信息可以存储在Redis中,不需要每次都访问关系型数据库。

(3)list:商品的评论表,最新的评论显示在最前面,而且可以分页显示

(4)set:set数据类型主要应用在 独立IP投票的限制/微信朋友quan的查看权限(共同好友)、session单点登录。


参考:

https://mp.weixin.qq.com/s?__biz=MjM5NzMyMjAwMA==&mid=2651478883&idx=1&sn=0b30d2097645db3671b685e64c1137fe&chksm=bd25371c8a52be0add23bbf46c833df2d420f35386e2b8e818cacecb87d019895fac6c4e5d69&mpshare=1&scene=23&srcid=0822DnyvIsuyIRfTNa6XUy7q#rdhttp://www.runoob.com/redis/redis-commands.html