Redis代码实践总结(三)——redis持久化

Redis如何将数据写入磁盘

持久性是指将数据写入持久存储,例如固态磁盘 (SSD)。Redis 提供了一系列持久性选项。这些包括:

  • RDB(Redis 数据库):RDB 持久性以指定的时间间隔执行数据集的时间点快照。
  • AOF(仅追加文件):AOF持久性记录服务器接收到的每个写操作。然后可以在服务器启动时再次重播这些操作,从而重建原始数据集。命令使用与 Redis 协议本身相同的格式进行记录。
  • 无持久性:您可以完全禁用持久性。有时在缓存时会使用到这一点。
  • RDB + AOF:您还可以在同一个实例中组合 AOF 和 RDB。

关系型数据库的优点

  • RDB 是 Redis 数据的非常紧凑的单文件时间点表示形式。RDB 文件非常适合备份。例如,您可能希望在最近 24 小时内每小时归档一次 RDB 文件,并在 30 天内每天保存一个 RDB 快照。这使您可以在发生灾难时轻松恢复不同版本的数据集。
  • RDB 非常适合灾难恢复,它是一个紧凑的文件,可以传输到远程数据中心或 Amazon S3(可能是加密的)。
  • RDB 最大限度地提高了 Redis 的性能,因为 Redis 父进程为了持久化需要做的唯一工作就是派生一个子进程,该子进程将完成其余所有工作。父进程永远不会执行磁盘 I/O 或类似操作。
  • 与 AOF 相比,RDB 允许更快地重新启动大数据集。
  • 在副本上,RDB 支持重启和故障转移后的部分重新同步。

你可能感兴趣的:(redis,数据库)