Redis初学者的终极指南:一看就懂

发表时间: 2020-01-13 12:33

Redis入门

nosql概述(not only sql)

关系型数据库

why need nosql

1. 高并发读写

2. 海量数据的高效存储和访问

3. 高可扩展和高可用性

nosql数据库的分类

1. 键值存储

2. 列存储

3. 文档数据库

4. 图形数据库



特点

容易扩展

大量数据,高性能

灵活数据模型

高可用

Redis概述

是一个c语言开发的高性能的键值对数据库,通过提供多种数据类型,来适用不同场景下的需求


such as :字符串类型,集合类型,列表类型等.............


redis应用场景

缓存(数据的查询,新闻等信息)

网站访问统计

数据过期处理等

......................................


windows下安装

https://github.com/MicrosoftArchive/redis/releases


下载msi可在windows下直接安装


通过set/get存入获取数据



jdeis入门

是redis官方首选的java客户端开发包,

需要导入两个jar包jedis和commons-pool2

通过下面方法可以在java中设置修改值




redis数据结构

五种数据类型

字符串(string)

字符串列表(list)

有序字符串集合(sorted set)

哈希(hash)

字符串集合(set)

key在定义的时候注意

不要过长(超过1024字节),会降低查找效率

存储string

二进制安全的,存入和获取的数据相同


value最多可容纳数据长度是512M




hash

string key和string value的容器


list

可以在头部和尾部添加元素

如果链表中的所有元素都被移除,则会在数据库中删除




剩下类型省略

redis特性

1. 多数据库

2. 事物



redis持久化

两种持久化方式


RDB(在指定的时间间隔内将数据写入磁盘)默认

AOF(以日志的形式记录服务器的每一个操作,在启动的时候会读取文件,然后构建数据库)

RDB的优势

只用这一个的话redis将只包含一个文件,灾难恢复很适合,启动效率更高

劣势

不能最大限度减少数据的丢失

数据集非常大的时候可能会导致服务器停止