RDB

一:RDB的介绍

    在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将       快照文件直接读到内存里.   rdb默认保存的是dump.rdb文件

二:配置位置

    在redis的redis.conf文件中SNAPSHOTTING(快照)中对rdb进行配置:

    1.save

      save 秒钟 写操作次数

      RDB是整个内存的压缩过的Snapshot,RDB的数据结构,可以配置复合的快照触发条件,
      默认是1分钟内改了1万次, 或5分钟内改了10次,或15分钟内改了1次,就是触发创建RDB文件

      如果想禁用RDB持久化的策略,只要不设置任何save指令,或者给save传入一个空字符串参数也可以

    2.stop-writes-on-bgsave-error

   如果配置成no,表示你不在乎数据不一致或者有其他的手段发现和控制

   3. rdbcompression

   rdbcompression:对于存储到磁盘中的快照,可以设置是否进行压缩存储。如果是的话,redis会采用
   LZF算法进行压缩。如果你不想消耗CPU来进行压缩的话,可以设置为关闭此功能

   4. rdbchecksum

   rdbchecksum:在存储快照后,还可以让redis使用CRC64算法来进行数据校验,但是这样做会增加大      约10%的性能消耗,如果希望获取到最大的性能提升,可以关闭此功能

三:手动触发RDB

    使用save或bsave命令

    Save:save时只管保存,其它不管,全部阻塞

    BGSAVE:Redis会在后台异步进行快照操作,快照同时还可以响应客户端请求。可以通过lastsave
    命令获取最后一次成功执行快照的时间

    注意点: 执行flushall命令,也会产生dump.rdb文件,但里面是空的,无意义

四: 优势/劣势

    优势:

    适合大规模的数据恢复,对数据完整性和一致性要求不高

    劣势:

    在一定间隔时间做一次备份,所以如果redis意外down掉的话,就会丢失最后一次快照后的所有修改

猜你喜欢

转载自my.oschina.net/u/3058881/blog/1801868
RDB