Redis的持久化机制是什么?各自的优缺点?

Redis提供两种持久化机制:RDB(默认的)和AOF机制。


RDB

概念:是Redis DataBase的缩写快照。

RDB是Redis的一种数据持久化到磁盘的策略,是一种以内存快照形式保存Redis数据的方式。所谓快照,就是把某一时刻的状态以文件的形式进行全量备份到磁盘,这个快照文件就称为RDB文件。RDB文件是经过压缩的二进制文件,占用空间很小,它保存了Redis某个时间点的数据集,很适合用于做备份。

✅优点: 

1. 紧凑型文件:RDB文件是紧凑的二进制文件,比较适合做冷备,全量复制的场景。
2. 恢复速度快:RDB是数据的快照,基本上就是数据的复制,不用重新读取再写入内存。
3. 性能更高:RDB文件体积比AOF的小,因此其开启和加载的性能都较高。
4. 数据安全性低:RDB是每隔一段时间触发持久化,因此可能存在在持久化间隔期间的数据丢失。

❎缺点:

1. 数据安全性低:RDB是每隔一段时间触发持久化,因此可能存在在持久化间隔期间的数据丢失。
2. 不适合实时修改的数据:RDB存储的是某一时刻的数据集,对于频繁修改的数据,可能会导致大量数据的冗余。


AOF

AOF,全称Append Only File,是一种独立日志的方式记录每次写命令的持久化方法。当需要恢复数据时,Redis会重新执行AOF文件中的命令。这种方式主要解决了数据持久化的实时性问题,目前已经是Redis持久化的主流方式。

✅优点:

1. 数据安全性高:AOF可以更好的保护数据不丢失,一般每隔1秒,会通过一个后台线程执行一次fsync操作,最多丢失1秒钟的数据。
2. 写入性能较好:AOF日志文件以append-only模式写入,因此其写入性能比较优秀。
3. 同步策略灵活:Redis中提供了三种同步策略,即每秒同步、每修改同步和不同步,用户可以根据需求选择最适合的策略。

❎缺点:

1. 相同数据量下,AOF的文件体积比RDB大,因此其开启和加载的性能可能会相对较低。
2. AOF日志文件的写入操作比RDB的快照写入要慢,对于一些对性能要求较高的应用来说,这可能会成为一个问题。

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值