一、 认识NoSQL
SQL | NoSQL | |
数据结构 | 结构化 | 非结构化(键值类型(Redis)文档类型(MongoDB)列类型(HBase)Graph类型(Neo4j)) |
数据关联 | 关联的 | 无关联 |
查询方式 | SQL查询 | 非SQL |
事务特性 | ACID | BASE |
存储方式 | 磁盘 | 内存 |
扩展性 | 垂直 | 水平 |
使用场景 | 数据结构固定;相关业务对数据安全性、一致性要求较高 | 数据结构不固定;对一致性、安全性要求不高;对性能要求 |
二、Redis概念
Redis诞生于2009年全称是Remote Dictionary Server,远程词典服务器,是一个基于内存的键值型NoSQL数据库。
特征:
- 键值(key-value)型,value支持多种不同数据机构,功能丰富。
- 单线程,每个命令具备原子性。
- 低延迟,速度快(基于内存、IO多路复用,良好的编码)。
- 支持数据持久化。
- 支持主从集群、分片集群。
- 支持多语言客户端
三、Redis数据库基本操作
Redis默认有16个数据库,编号为0~15,且默认访问0号数据库
select 数据库编号 选择指定数据库
dbsize 获取当前数据库键值对数量
flushdb 清空当前数据库
flushall 清空所有数据库
save 将数据保存至磁盘
bgsave 将数据异步保存至磁盘(后台:Background)
lastsave 获取最后一次成功保存的unix时间
四、Redis通用命令
KEYS:查看符合模版的所有key,不建议在生产环境设备上使用。
KEYS *
KEYS a*
DEL:删除一个(或多个)指定的key。
del name
del k1 k2 k3 //返回删除的个数
EXISTS:判断key是否存在