目录
在了解Redis前我们先来了解NoSQL(非关系型数据库)
NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。 NoSQL用于超大规模数据的存储。
| 分类 | Examples举例 | 典型应用场景 | 数据模型 | 优点 | 缺点 |
| 键值(key-value) | Tokyo、Redis、Oracle、BDB、Cabinet/Tyrant、Voldemort | 内容缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统等等 | Key指向Value的键值对,通常用hash table来实现 | 查找速度快 | 数据无优化,通常只被当做字符串或者二进制数据 |
| 列存储数据库 | Cassandra,HBase,Riak | 分布式的文件系统 | 以列式存储,将同一列数据存储在一起 | 查找速度快,可扩展性强,更容易进行分布式扩展 | 功能相对局限 |
| 文档型数据库 | CouchDB、MongoDB | Web应用(与Key-Value类似,Value是结构化的,不同的是数据库能够了解Value的内容) | Key-Value对应的键值对,Value为结构化数据 | 数据结构要求不严格,表结构可变,不需要像关系型数据库一样需要预先预定表结构 | 查询性能不高,而且缺乏统一的查询语法 |
图形(Graph)数据库 | Neo4J、InfoGnd | 社交网络,推荐系统等,专注于构建关系图谱 | 图结构 | 利用图结构相关算法。比如最短路径寻址,N度关系查找等 | 很多时候需要对整个图做计算才能得出需要的信息,而且这种结构不太好做分布式的集群方案 |
---|
定义:
Redis(全称为Remote Dictionary Server)是一个开源的高性能键值对(key-value)存储系统,具有快速、灵活和可扩展的特性。它是一个基于内存的数据结构存储系统,可以用作数据库、缓存和消息代理。
Redis定位是缓存,提高数据读写能力,减轻对数据存储与访问压力
优点:
- 速度快:Redis非常快,每秒可执行大约110000次的设置(SET)操作,每秒大约可执行81000次的读取/获取(GET)操作
- 支持丰富的数据类型:Redis的值(value)可以是字符串(String),哈希(Map),列表(list),集合(sets)和有序集合(sorted sets)等类型
- 操作具有原子性:所有Redis操作都是原子操作,这确保如果两个客户端并发访问,Redis服务器则能接受更新的值
- 应用广泛:可用于缓存,消息队列(Redis本地支持发布/订阅),应用程序中的任何短期数据
安装步骤:
详细安装步骤以及安装包看一下文章,这里将不再过多赘述