RDB #
功能 [1] #
-
只需要把 RDB 文件直接读入内存,可以快速恢复数据库。这就避免了 AOF 需要顺序、逐一重新执行操作命令带来的低效性能问题。
-
Redis 设计了 bgsave 和写时复制方式,尽可能减少了内存快照对正常读写的影响,但是,频繁快照仍然是不太能接受的。
【 总结: bgsave 异步 + 写时复制(copy-on-write)】
触发机制 [2] #
- 手动触发
- bgsave [3]
save 废弃[3]
- 自动触发
- save的相关配置
- 从节点全量复制,主节点执行bgsave生成RDB并发送给从节点
- 其他
优点/缺点[2] #
- 优点
- 加载RDB恢复数据远远快于AOF的方式
- 缺点
- 没办法做到实时持久化
建议 [1] #
- 数据不能丢失时,内存快照和 AOF 的混合使用是一个很好的选择;
- 如果允许分钟级别的数据丢失,可以只使用 RDB;
- 如果只用 AOF,优先使用 everysec 的配置选项,因为它在可靠性和性能之间取了一个平衡。
参考 #
- 《05丨内存快照:宕机后,Redis如何实现快速恢复?》
- 《redis开发与运维》 第5章
- {% post_link ‘rdb’ %} self