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

redis- 持久化-rdb

2017-08-09 09:07 232 查看
http://blog.csdn.net/xiejingfa/article/details/51553370

REDIS 数据存储模式有2种:cache-only,persistence;

cache-only即只做为“缓存”服务,不持久数据,数据在服务终止后将消失,此模式下也将不存在“数据恢复”的手段,是一种安全性低/效率高/容易扩展的方式;
persistence即为内存中的数据持久备份到磁盘文件,在服务重启后可以恢复,此模式下数据相对安全。

RDB的主要原理就是在某个时间点把内存中所有数据保存到磁盘文件中,这个过程既可以通过人工输入命令执行,也可以让服务器周期性执行。对于“把内存中的数据转存到磁盘中”这一过程,其实现无非就是通过定义好某种存储协议,然后按照该协议写入或读出。但要真正实现将Redis中的数据存储到磁盘上,还要考虑到以下几个问题:
如何落地存储协议?也就是如何设计一个存储协议可以兼容Redis丰富的数据类型(string、hash、list、set、zset)。
如何进行数据压缩?通常一个Redis服务器存放了大量数据,如果要将这些数据转存到文件中,如何进行数据压缩,也就是如何尽可能减少文件大小以减轻系统IO压力和节省磁盘空间。
如何解决数据转存时服务器阻塞问题?Redis是单线程的,当服务器在进行数据转存操作时就无法对外服务,如何避免这个问题?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: