上两篇文章我们详细介绍了rdb和aof,两种持久化方式我们在实际应用中该如何选择呢?他们各有什么优缺点,如下
rdb与aof的选择之感
- 对数据非常敏感,建议使用默认的aof持久化方案
- aof持久化策略使用everysecond,每秒种fsync一次,该策略redis扔可以保持很好的处理性能,当出现问题时,最多丢失0-1秒内的数据。
- 注意:由于aof文件存储体积较大,且回复速度较慢
-
数据呈现阶段有效性,建议使用rdb持久化方案
-
数据可以良好的做到阶段内无丢失(该阶段是开发者或者运维人员手工维护的),且回复速度较快,阶段点数据恢复通常采用rdb方案
-
注意:利用rdb实现紧凑的数据持久化会使redis降的很低
综合比对
rdb与aof的选择实际上是在做一种权衡,每种都有利弊
如不能忍受数分钟内的数据丢失,对业务数据非常敏感,选择用aof
如能忍受数分钟内的数据丢失,且追求大数据集的恢复速度,选用rdb
灾难恢复选用rdb
双保险策略,同时开启rdb和aof,重启后,redis优先使用aof来恢复数据,降低丢失数据的量