介绍
Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets)和有序集合(sorted sets)等类型。
1、Redis概述
1.1、NoSQL
NoSQL,泛指非关系型的数据库,是不同于传统的关系型数据库的数据库管理系统的统称。
NoSQL用于超大规模数据的存储,收集万亿比特的数据。这些类型的数据存储没有固定的形式,没有多余操作就可以横向扩展。
1.2、什么是Redis
Redis是NoSQL中的一种存储工具,他是一个key-value存储系统。默认有16个数据库从0到15来进行表示。Redis的存储类型:包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。在此基础上,Redis支持各种不同方式的排序。
Redis 被广泛应用在缓存方向,与传统数据库不同的是 Redis 的数据是存在内存中的,因此读写速度非常快。
Redis为分布式缓存,在多客户端的情况下,共用一份缓存数据,缓存具有一致性。
Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步,为了可靠性。
1.3、Redis特点
性能极高 – Redis读的速度是11W次/s,写的速度是81K次/s
支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
丰富的数据类型,Redis不仅仅支持简单的key-value类型的数据,同时还提供Strings, Lists, Hashes, Sets 及 Ordered Sets 等数据结构的存储。
支持数据的备份,即master-slave模式的数据备份。
1.4、Redis优缺点
优点:
- 对数据高并发读写
- 对海量数据的高效率存储和访问
- 对数据具有的可扩展性和高可用性
缺点:
- redis(ACID)处理非常简单
- 无法做到太复杂的关系数据库模型