文档介绍:REDIS
简单介绍
主要内容
Redis和其他数据库比较
Redis简介
Redis特性
Redis数据类型
存储形式
Master-Slave模式
虚拟内存管理
实例
Memcache与Redis
最大的区别就在于memcache把数据都保存到了内存中,而redis数据即保存到了内存和磁盘中,这样redis中的数据更加的安全,扩展性也比较好(内存中不必保存全部数据)
另外,memcache只支持一种数据类型,而redis有五种数据类型。
Mysql与Redis
Redis只能是key对应value的形式,本身的查询比较简单,不具备像mysql那样强大的查询功能,所以只能部分的取代mysql。
Redis简介
Redis是一个key-value类型的内存数据库(当然这样说现在有点不准确,在后面的介绍中会有全部key和部分value的存储模式),每一个key都与一个value关联,可以对参数设置过期时间,使得redis与其他key-value数据库不同的是Redis的value是一个类型(type),目前Redis支持五种数据类型:String,List,Set,Zset和Hash。Redis性能上和memcache一样快但是提供了更多的特性。
本示例中安装的是Rediska客户端(其实就就和php兼容的一个Redis类)
Redis特性
速度快
使用C语言开发并且数据加载到了内存中,官方的数据表明,在一个普通的linux机器上,Redis读写速度分别达到81000/s和110000/s。
持久化
数据保存到内存的同时,还会以同步异步的方式保存到磁盘上去
数据结构
可以看Redis为数据结构服务器。Redis支持五种数据结构
自动操作
Redis对不同类型操作的是自动的,所以相对比较安全
支持多语言
支持很多语言,诸如PHP,java,Perl,Ruby,Python等
主从复制
支持简单的主从复制,官方提供数据,Slave在21秒完成了对Amazon网站10G key set 的复制
Sharding(分片)
很容易将数据分到多个Redis实例中。但是目前只支持PHP,Ruby,Scala三种语言
Redis的数据类型
String类型
String类型是一个最简单的类型,一个key对应一个value,String内数据最大为1G,也可以把它视为integer,值的限制为64位有符号数。在list,set,zset中包含的独立的元素类型都是Redis String。
示例
连接Redis
Redis操作
set()
get()
setAndGet()
setAndExpire()
delete()