
Redis基础篇(五)AOF与RDB比较和选择策略
发布日期:2021-05-09 04:32:34
浏览次数:13
分类:技术文章
本文共 765 字,大约阅读时间需要 2 分钟。
RDB和AOF对比
关于RDB和AOF的优缺点,官网上面也给了比较详细的说明
RDB
优点:
- RDB快照是一个压缩过的非常紧凑的文件,保存着某个时间点的数据集,适合做数据的备份,灾难恢复;
- 可以最大化Redis的的性能,在保存RDB文件,服务器进程只需要fork一个子进程来完成RDB文件的创建,父进程不需要做IO操作;
- 与AOF相比,恢复大数据集的时候会更快;
缺点:
- RDB的数据安全性是不如AOF的,保存整个数据集的过程是比繁重的,根据配置可能要几分钟才快照一次,如果服务器宕机,那么就可能丢失几分钟的数据;
- Redis数据集较大时,fork的子进程要完成快照会比较耗CPU、耗时;
AOF
优点:
- 数据更完整,安全性更高,秒级数据丢失(取决fsync策略,如果是everysec,最多丢失1秒的数据);
- AOF文件是一个只进行追加的日志文件,且写入操作是以Redis协议的格式保存的,内容是可读的,适合误删紧急恢复;
缺点:
- 对于相同的数据集,AOF文件的体积要大于RDB文件,数据恢复也会比较慢;
- 根据所使用的fsync策略,AOF的速度可能会慢于RDB。 不过在一般情况下,每秒fsync的性能依然非常高;
RDB和AOF如何选择
通常来说,应该同时使用两种持久化方案,以保证数据安全。
- 如果数据不敏感,且可以从其他地方重新生成,可以关闭持久化。
- 如果数据比较重要,且能够承受几分钟的数据丢失,比如缓存等,只需要使用RDB即可。
- 如果是用做内存数据,要使用Redis的持久化,建议是RDB和AOF都开启。
- 如果只用AOF,优先使用everysec的配置选择,因为它在可靠性和性能之间取了一个平衡。
当RDB与AOF两种方式都开启时,Redis会优先使用AOF恢复数据,因为AOF保存的文件比RDB文件更完整。
参考资料
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2025年04月28日 02时20分00秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
kubernetes集群添加到jumpserver堡垒机里管理
2023-01-29
KuiperInfer深度学习推理框架-源码阅读和二次开发(3):计算图
2023-01-29
KVM 安全策略配置实战
2023-01-29
KVM 性能测试优化实战
2023-01-29
KVM克隆虚拟机和libguestfs-tools管理工具(3)
2023-01-29
KVM命令行管理企业级实战
2023-01-29
KVM迁移与维护实战
2023-01-29
KxMenu下拉菜单
2023-01-29
KXML2部分详解(J2ME)
2023-01-29
KXML解释本地或网络上的XML文件
2023-01-29
Kylin学习笔记 - CDH6.2集群 kylin2.6.4 环境搭建
2023-01-29
Kylin学习笔记 - 使用Java模拟生成测试数据
2023-01-29
k[原创]Faster R-CNN论文翻译
2023-01-29
K均值聚类的文本挖掘
2023-01-29
L1与L2正则化中“|| ||”是什么意思
2023-01-30
labuladong算法学习
2023-01-30