本文共 1156 字,大约阅读时间需要 3 分钟。
Redis 是一个高性能的 key-value 数据库
NoSQL 介绍
NoSQL 是一类新出现的数据库,不只是 SQL
- 泛指非关系型数据库
- 不支持 SQL 语法
- 存储结构与传统关系型数据库完全不同,NoSQL 中存储的数据都是 key-value 形式
- NoSQL 的世界中没有一种通用的语言,每种 NoSQL 数据库都有自己的 API 和语法,以及擅长的业务场景
- NoSQL 中的产品种类相当多:
- Redis
- MongoDB
- HBase(Hadoop 生物库
- Cassandra(Hadoop 生物库
NoSQL 和 SQL 数据库的比较:
- 适用场景不同:SQL 数据库适合用于复杂的数据查询场景,NoSQL 则相反
- 事务特性支持:SQL 对事务支持非常完善,NoSQL 基本不支持事务
- 两者在不断取长补短,呈现融合趋势
Redis 简介
Redis 是一个开源的使用 ANSI C 编写、支持网络、可基于内存亦可持久化的日志型 key-value 数据库,并提供多种语言的 API。自 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持,2013 年 5 月后,由 Pivotal 赑助。
Redis 是 NoSQL 技术阵营中的一员,通过多种键值数据类型适应不同场景下的存储需求,借助高层级接口,可胜任缓存、队列系统等多种角色。
Redis 特性
- Redis 与其他 key-value 缓存产品有以下三个特点:
- 支持数据持久化,可以将内存中的数据保存到磁盘上,重启时可以重新加载使用
- 不仅支持简单的 key-value 类型数据,还提供 list、set、zset、hash 等数据结构的存储
- 支持数据备份,采用 master-slave 模式进行数据备份
Redis 优势
- 性能极高:Redis 的读取速度可达 11 万次/秒,写入速度约为 8.1 万次/秒
- 丰富的数据类型:支持二进制形式的 Strings、Lists、Hashes、Sets及 Ordered Sets 数据类型操作
- 原子操作:Redis 的所有操作都是原子性的,确保操作的可靠性
- 丰富的特性:支持 publish/subscribe 通知、key 过期等功能
Redis 应用场景
- 用于做缓存(如 Ehcache、Memcached):Redis 所有数据都存放在内存中(内存数据库),对于那些不会频繁变化的数据(如省市区信息),无需查询硬盘大大减少了查询时间
- 在某些特定场景下替代传统数据库:例如社交类应用(如点赞、评论等),通过减少对数据库的操作频率来提高性能
- 在大型系统中,实现一些特定功能:如 session 共享、购物车等
- 只要你有丰富的想象力,Redis 可以用在可以带来无限惊喜的地方
转载地址:http://cttd.baihongyu.com/