Redis
http://redis.cn/
1.NoSQL简介
? 目前市场主流数据存储都是使用关系型数据库。每次操作关系型数据库时都是I/O操作,I/O操作是主要影响程序执行性能原因之一,连接数据库关闭数据库都是消耗性能的过程。尽量减少对数据库的操作,能够明显的提升程序运行效率。
常见NoSQL数据库:
? memcached :键值对,内存型数据库,所有数据都在内存中。
? Redis:和Memcached类似,还具备持久化能力。
? HBase:以列作为存储。
? MongoDB:以Document做存储。
2.Redis简介
? Redis是以Key-Value形式进行存储的NoSQL数据库。
? 平时操作的数据都在内存中,读写效率高,所以多把Redis当做缓存工具使用。
? Redis以solt(槽)作为数据存储单元,每个槽中可以存储N多个键值对。Redis中固定具有16384。理论上可以实现一个槽是一个Redis。每个向Redis存储数据的key都会进行crc16算法得出一个值后对16384取余就是这个key存放的solt位置。
? 同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。
3. 五大常用类型
? Redis支持的五大数据类型包括 String(字符串 用法: 键 值), Hash(哈希 类似Java中的 map 用法: 键 键值对), List(列表 用法:键 集合 不可以重复), Set(集合 用法:键 集合 可以重复), Zset(sorted set 有序集合 用法: 键 值 值)
4. 常用命令
可以参考如下 1.https://www.redis.net.cn/order/ 2.http://doc.redisfans.com/text-in
exists key名称 判断key 是否存在 expire key 秒数 设置key的过期时间 del key 根据key删除键值对
5. 持久化策略
- RDB rdb模式是默认模式,可以在指定的时间间隔内生成数据快照(snapshot),默认保存到dump.rdb文件中。当redis重启后会自动加载dump.rdb文件中内容到内存中。
- AOF AOF默认是关闭的,需要在配置文件中开启AOF。Redis支持AOF和RDB同时生效,如果同时存在,AOF优先级高于RDB(Redis重新启动时会使用AOF进行数据恢复)
监听执行的命令,如果发现执行了修改数据的操作,同时直接同步到数据库文件中。
5. 主从复制
Redis支持集群功能。为了保证单一节点可用性,redis支持主从复制功能。每个节点有N个复制品(replica),其中一个复制品是主(master),另外N-1个复制品是从(Slave),也就是说Redis支持一主多从。 增加单一节点的健壮性,提高稳定性,当超过1/2节点不可用时,整个集群不可用 从节点可以对主节点数据备份,提高容灾能力
|