1. Reids和其他类型数据库对比

名称 类型 数据库存储选项 查询类型 附加功能
Redis 使用内存存储的非关系数据库 字符串,列表,集和,散列表,有序集合 每个类型有自己的专属命令,还有批量操作和不完全的事务支持 发布订阅,主从复制,持久化,脚本
memcached 使用内存存储的键值缓存 键值之间的映射 创建,读取,更新,删除命令以及其他几个命令 为提升性能而设的多线程服务器
Mysql 关系数据库 每个数据库可以包含多个表,每个表可以有多个行,支持多个表的试图,支持空间和第三方扩展 SELECT,DELETE,INSERT,UPDATE,函数和存储过程 支持ACID性质,主从复制和主主复制
postgreSQL 关系数据库 同上,还可支持可定制类型 同上 同上,由第三方支持的多主复制
MongoDB 使用硬盘存储的非关系文档存储 每个数据库可以包含多个表,每个表可以包含多个无Schema的BSOM文档 创建,读取,更新,删除和条件查询几个命令 支持map-reduce操作,主从复制和分片,空间索引

 

2. Redis的附加功能

2.1 持久化

  • 时间点转储:指定时间段内有指定数量的写操作执行,也可以调用两条转储命令中的一条执行;
  • 在修改命令后追加命令追加到文件中

2.2 主从复制 -- 主服务器所有的更性都会同步到从服务器中

3. 为什么使用Redis

3.1 Redis优点 -- 速度快,支持丰富的类型,支持事务和丰富的特性(主从复制,消息订阅发布)

3.2 支持场景 -- 会话缓存,全页缓存,队列,排行榜/计数器,发布/订阅

 

4. Reids结构

 

结构类型 结构存储的值  结构的读写能力
STRING  可以是字符串,整数或者浮点数  对整个字符串或者字符串的其中一部分执行操作,对整数和浮点数执行自增,或者自减操作
LIST 一个链表,链表上的每个节点都包含一个字符串 从链表的两端推入或者弹出元素,根据偏移量对链表进行修剪,读取单个或者多个元素,根据值查找或者移除元素
SET 包含字符串的无序收集器,每个元素都是独一无二的,各不相同的 添加,获取,删除单个元素,检查一个元素是否存在,计算交集,并集和差集,从集合随机获取元素
HASH 包含键值对的无序散列表 添加,获取,删除单个键值对,获取所有键值对
ZSET 字符串成员与浮点数分值之间的有序映射,元素的排列顺序由分值的大小决定 添加,获取,删除单个元素,根据分值范围或者成员来获取元素

 所有命令列表可以从http://redis.io/commands找到

 

5. 安装Hiredis

执行命令sudo python -m easy_install redis hiredis

 

6. 安装Reids Desktop Manager(Redis可视化图形界面管理工具)

1. 下载源代码

git clone --recursive https://github.com/uglide/RedisDesktopManager.git -b 0.9 rdm && cd ./rdm

2. 命令行中执行(CentOS),其他系统参见http://docs.redisdesktop.com/en/latest/install/#build-from-source

cd src/ 
./configure
qmake-qt5 && make && sudo make install
cd /usr/share/redis-desktop-manager/bin
sudo mv qt.conf qt.backup