您的位置:首页 > 数据库 > Redis

redis入门

2015-08-16 13:20 507 查看
先来整理一下学好redis需要学哪几部分知识:首先,肯定redis支持的数据类型,其次,还需要学习的是redis事务,redis持久化,主从服务器、watch机制、订阅发布机制。

先来,讲讲数据类型,redis支持以下几种类型:字符串类型、散列类型、列表类型、集合类型、有序集合类型,后面将会详细介绍。

   首先是字符串类型,其实整个redis都只能存储字符串类型,其他类型只是字符串的不同组织形式而已,简单说来就是数据结构。 
字符串类型就不说了,先来看看什么是散列类型,散列类型其实可以理解为java中的map<String,Map<String,String>>结构,看图 :



看命令:



你可以这么想:redis存储就是键值对的格式,所谓的散列表就是值就是一个键值对。
再来看看列表类型,列表类型可以看做数据库中的map<String,List<String>>类型,看图:



看命令



出队列还有一个命令:Blpop 和brpop,实例:把blpop queue 0,0代表从队列中取不到值等待多长时间返回nil,0代表时间无限长。
再来看看集合类型,集合类型和列表类型其实很相像,集合类型是无序的但是也可以使用sort命令进行排序,下面继续进行一个简单对比:



最后再看看有序集合类型,其实就是集合类型的有序性。
总的来说,redis只支持字符串类型,支持以上四种格式的数据。
接下来,看看redis的事务:



这是我截取的redis一本电子书上的内容,后面会分享给大家。这里特别需要提醒的是:redis不支持回滚功能,因此,中间出现运行错误不会影响其他代码执行,只有出现语法错误的时候所有事务包裹的命令才不会被执行。下图中用sadd去操作散列表,出现运行错误:



redis的watch机制是指:被watch的某一个key,在被watch之后被修改了,那么事务里的内容将不会被执行。



redis订阅机制:



redis的复制、主从数据库、持久化:redis持久化有两张方式:rdb和aof,简单地理解:RDM是一个快照的存储,可以在较短时间内对redis进行恢复AOF存储了每一次对redis 的操作,不仅耗费了大量的存储空间,恢复的速度也比较慢。一个redis主服务器可以拥有多个从服务器,主服务器负责写,从服务器只负责读。在我们的项目中,一般会关闭主服务的备份机制,让从服务器去实现持久化。



其他:redis安全(设置密码等)、redis对lua脚本的支持,将在后面的文章进行介绍。
电子书下载地址:链接:http://pan.baidu.com/s/1pJ67dpD 密码:e594
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  redis