Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API
redis是一款高性能的NOSQL系列的非关系型数据库。
重要概念
NOSQL(not only SQL):不仅仅是SQL,泛指非关系型数据库。
提到非关系型数据库,我们之前学的是关系型的数据库,比如MySQL,Oracle...而非关系型数据库又是什么?
现场对比一下各自的优缺点
关系型数据库:
数据之间有关联关系的,一张表可关联其他的表(外键)建立联系
数据存储在硬盘是的文件内
非关系型数据库:
数据之间没有关联关系
数据存储在内存中
NOSQL和关系型数据库比较
优点:
查询速度:nosql数据库将数据存储于缓存之中,关系型数据库将数据存储在硬盘中,查询的速度远不如NOSQL
存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,可以存储基础类型以及对象或者是集合等各种格式,而数据库则只支持基础类型。
缺点:
不提供对sql的支持
不提供关系型数据库对事务的处理
非关系型数据库优势:
性能非常高,性能NOSQL是基于键值对的
可扩展性同样也是因为基于键值对,数据之间没有耦合性
redis的应用场景
聊天室的在线好友列表
缓存
任务队列。(秒杀、抢购、12306等等)
应用排行榜
网站访问统计
数据过期处理(可以精确到毫秒)