Redis数据库

Redis(Remote Dictionary Server),即远程字典服务,是一个使用ANSIC编写的开源、支持网络、基于内存、可选持久性的键值对存储数据库,是NoSQL数据库。

redis的出现主要是为了替代早期的Memcache缓存系统的。map内存型(数据存放在内存中)的非关系型(nosql)key-value(键值存储)数据库,支持数据的持久化(基于RDB和AOF,注: 数据持久化时将数据存放到文件中,每次启动redis之后会先将文件中数据加载到内存,经常用来做缓存、数据共享、购物车、消息队列、计数器、限流等。(最基本的就是缓存一些经常用到的数据,提高读写速度)。

redis特性:

  • 速度快
  • 持久化
  • 多种数据结构
  • 支持多种编程语言
  • 主从复制
  • 高可用、分布式

安装

redis的官方只提供了linux版本的redis,window系统的redis是微软团队根据官方的linux版本高仿的。

官方原版: https://redis.io/

中文官网:http://www.redis.cn

下载地址:https://github.com/tporadowski/redis/releases

启动

  • 启动redis服务端
1
redis-server D:/redis/redis.windows.conf

redis作为windows服务启动方式

1
redis-server --service-install redis.windows.conf
1
2
redis-server --service-start # 启动服务
redis-server --service-stop # 停止服务

Redis数据类型

Redis提供的数据类型主要分为5种自有类型和一种自定义类型,这5种自有类型包括:String类型、哈希类型、列表类型、集合类型和顺序集合类型。

redis可以理解成一个全局的大字典,key就是数据的唯一标识符。根据key对应的值不同,可以划分成5个基本数据类型。

string类型

字符串类型,是 Redis 中最为基础的数据存储类型,它在 Redis 中是二进制安全的,也就是byte类型。
单个数据的最大容量是512M。

1
key: 值

hash类型

哈希类型,用于存储对象/字典,对象/字典的结构为键值对。key、域、值的类型都为string。

1
2
3
4
5
6
7
key:{
域(属性): 值,
域:值,
域:值,
域:值,
...
}

list类型

列表类型,它的子成员类型为string。

1
key: [值1,值2, 值3.....]

set类型

无序集合,它的子成员类型为string类型,元素唯一不重复,没有修改操作。

1
key: {值1, 值4, 值3, ...., 值5}

zset类型(sortedSet):

1
有序集合,它的子成员值的类型为string类型,元素唯一不重复,没有修改操作。权重值(score,分数)从小到大排列。
1
2
3
4
5
6
key: {
值1 权重值1(数字);
值2 权重值2;
值3 权重值3;
值4 权重值4;
}