redis(一)--概述

来源:互联网 发布:js aaencode 编辑:程序博客网 时间:2024/06/06 11:41

一.概述

1.redis是一个key-value存储系统,和memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set有序集合)和hash(哈希类型)。这些数据类型都支持push/pop,add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。再次基础上,redis支持各种不同方式的排序,与memcached一样,为了保证效率,数据都是缓存的内存中,区别的是redis会周期性地把数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现master-slave(主从)同步。


2.Redis 由四个可执行文件:redis-benchmark、redis-cli、redis-server、redis-stat 这四个文件,加上一个redis.conf就构成了整个redis的最终可用包。它们的作用如下:
1)redis-server:Redis服务器的daemon启动程序;
2)redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作;
3)redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能;
4)redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况。


3.redis目前提供四种数据类型:string,list,setzset(sorted set)和Hash

1)string是最简单的类型,你可以理解成与Memcached一模一个的类型,一个key对应一个value,其上支持的操作与Memcached的操作类似。但它的功能更丰富;

2)list是一个链表结构,主要功能是push、pop、获取一个范围的所有值等等。操作中key理解为链表的名字;

3)set是集合,和我们数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合求交并差等操作。操作中key理解为集合的名字;

4)zset是set的一个升级版本,他在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序。可以理解了有两列的mysql表,一列存value,一列存顺序。操作中key理解为zset的名字;

Hash数据类型允许用户用Redis存储对象类型,Hash数据类型的一个重要优点是,当你存储的数据对象只有很少几个key值时,数据存储的内存消耗会很小;


更多关于Hash数据类型的说明请见: http://code.google.com/p/redis/wiki/Hashes

二.安装

1.下载安装包:

https://github.com/antirez/redis/archive/2.8.19.tar.gz

2.解压:

tar -zxvf redis-3.0.4.tar.gz

3.make

4.make install

5.配置文件:./redis/redis.conf


三.与memcached比较

1. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储;
2. Redis支持数据的备份,即master-slave模式的数据备份;
3. Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。


参考:

http://baike.baidu.com/link?url=K23DpOw3dRExVAWASI3l5IhGoXc3qet6qEHcnqfSt7jkhB3NFkaLmm8n9bT8n-b7SKXXZaNwgY1poiDiGtXGnq

http://www.cnblogs.com/shanyou/archive/2012/01/28/2330451.html



1 0
原创粉丝点击