前言:

Redis数据库中文名为:远程字典服务器,数据库的中一种。Redis是一个非关系型数据库,主要用来做系统的缓存。那么讲到这里,就有几个概念需要弄清楚了。

1、什么叫非关系型数据库。

2、非关系型数据库和关系型数据库区别。

3、缓存是什么?为什么要做缓存?

带着上面的问题,接下来就开始redis进坑之路,争取早日学成归来,迎娶村里的翠花。

非关系型数据库:

了解非关系型数据库之前,我们先举一个例子。有两个小朋友,小胖和小明,他们两个人的信息分别如下:



小胖:8岁,三年级,男,短头发,包子脸,穿红色衣服,喜欢吃面。
小明:9岁,四年级,男,短头发,瓜子脸,穿白色衣服,喜欢吃炸鸡。



用excel把两个人的信息整理出来,应该是这样的:




Redis怎么缓存数据库 redis缓存数据库实例_关系型数据库


在Python中用字典整理出来,应该是这样的:


#小胖的个人信息
xiaopang={
    "姓名":"小胖",
    "年龄":"8岁",
    "年级":"三年级",
    "性别":"男",
    "头发长短":"短",
    "脸型":"包子脸",
    "衣服颜色":"红色",
    "喜欢吃的食物":"面"
}

#小明的个人信息
xiaoming={
    "姓名":"小明",
    "年龄":"9岁",
    "年级":"四年级",
    "性别":"男",
    "头发长短":"短",
    "脸型":"瓜子脸",
    "衣服颜色":"白色",
    "喜欢吃的食物":"炸鸡"
}


像excel这种用表格存放数据的数据库就是关系型数据库,像Python这种用字典存放数据的数据库就是非关系型数据库。由此可以下一个结论:


关系型数据库的数据是存储在表格中,非关系型数据库的数据是彼此独立存储没有关联,互不影响的。


关系型数据库和非关系型数据库区别:

还是以上面的例子为例:某天小明给小胖取了个花名叫死胖墩,小胖不服,就找老师告状了。老师于是就把小明处分了。由此,小明和小胖的个人信息又各自增加了一项,小胖多了一个外号:死胖墩,小明多了一条处分记录:给同学起外号。

再次用excel把两个人的信息重新整理出来,应该是这样的:


Redis怎么缓存数据库 redis缓存数据库实例_清楚redis所有缓存_02


注意灰色框部份,小胖没有处分情况,小明没有外号,但是他们都有同时两个字段处分情况外号。只是各自是留空的状况。这里可以看出,关系型数据库的一个特点,所有数据格式(字段)都是一致的,数据间的关系就是表中的字段,同一个字段要么大家都有,要么大家都没有。

在Python中用字典重新整理出来,应该是这样的:


Redis怎么缓存数据库 redis缓存数据库实例_关系型数据库_03


注意红色框部份,小明没有外号字段,小胖没有处分情况字段。这就是非关系型数据库的特点:两个人的信息字段可以独自拥用,互不影响

总结一下:

区别关系型数据库和非关系型数据库,通过区别两者存储数据的方式就可以了。至于什么时候选择关系型数据库,什么时候选择非关系型数据库,需要根据应用场景来选择。一般来说,如果所有数据要求格式保持一致的则选择关系型数据库,如果数据之间的格式无法保持一致的则选择非关系型数据库。无论是关系型数据库还是非关系型数据库,对数据本身来说并不重要,小明的信息不会因为存在mysql中小明就不是小明了。所以数据的本质是一样的。

redis数据库介绍:

redis是一个非关系型数据库,主要用来存储key-value类型的数据。key-value,可以理解为Python中只有一个字段的字典数据。如:


"name":"xiaoming"


上面就是redis中的一个key-value数据。key为name,value为xiaoming。这种数据一般用来做缓存。比如说,我们通过手机号码注册某些APP的登陆帐号时,我们点击注册后,手机会收到一个六位数纯数字验证码。假设手机号为12345678910,验证码为123456。那么它在redis是就是这样子保存的:


"12345678910":"123456"


用户提交的时候,会把提交的验证码,手机号和redis中的验证码,手机号一一对比,如果都正确则注册成功。如果有一百个用户,redis中则保存一百条像"12345678910":"123456"这样的数据。验证的时候只需要根据手机号查询对应的验证码,然后和上传上来的验证码比较即可。还有一个问题就是,可不可以用mongodb或者mysql做呢?答案是,可以的。只是不适合,或者说:不好用。切记:做软件开发,需要考虑的是好不好而不是能不能的题。

为什么选择redis?

,redis数据可以设置数据失效时间。至于为什么可以做到这样的功能,请自行百度。

redis初次体验:

在装有redis的linux系统中输入以下命令进入redis(具体安装过程请自看后面的教程,这里不做赘述),地址为本机,端口为6379,密码为123456:


redis-cli -h 127.0.0.1 -p 6379 -a 123456


Redis怎么缓存数据库 redis缓存数据库实例_Redis怎么缓存数据库_04


再输入以下命令,写入一个key-value:


set xiaomin "9"


Redis怎么缓存数据库 redis缓存数据库实例_数据_05


查询“xiaomin ”的值:


get xiaomin


Redis怎么缓存数据库 redis缓存数据库实例_关系型数据库_06


以上就是最简单的redis使用体验。如果没有安装redis。或者不会安装redis先不要着急,先把相关概念搞清楚,再循序渐进,慢慢积累。学习是一个十分漫长的过程,需要锲而不舍,孜孜不倦。