Redis 教程系列之Redis 简介(一)

Redis:

Remote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。

Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

  • String: 字符串
  • Hash: 散列
  • List: 列表
  • Set: 集合
  • Sorted Set: 有序集合

Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。

Redis 与其他 key - value 缓存产品有以下三个特点:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。

Redis 优势

  • 性能极高 -- Redis能读的速度是110000次/s,写的速度是81000次/s 。
  • 丰富的数据类型 -- Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  • 原子 -- Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
  • 丰富的特性 -- Redis还支持 publish/subscribe, 通知, key 过期等等特性。

Redis与其他key-value存储有什么不同?

  • Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。

  • Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。

相关推荐
流星白龙4 小时前
【Redis】2.Redis重大版本
数据库·redis·junit
流星白龙4 小时前
【Redis】7.Hash表
数据库·redis·哈希算法
流星白龙5 小时前
【Redis】4.基本全局命令
数据库·redis·缓存
流星白龙8 小时前
【Redis】3.Redis安装与命令行客户端
数据库·redis·缓存
Season45012 小时前
Redis命令 (generic即通用命令)
数据库·redis·bootstrap
我不想名字重复14 小时前
redis缓存和数据库数据保持一致
数据库·redis·缓存
流星白龙16 小时前
【Redis】6.计数其他命令
数据库·redis·缓存
流星白龙16 小时前
【Redis】8.List列表
redis
NWU_白杨16 小时前
三种常用的数据存储技术
数据库·redis·mysql·sqlite
我叫黑大帅16 小时前
我为什么单一消费者的场景下,要用 Redis List 当消息队列?
redis·后端·面试