15.7 重点回顾

        ·Redis的持久化功能可以将存储在内存中的数据库数据以文件形式存储到硬盘,并在有需要时根据这些文件的内容实施数据恢复。

        ·RDB持久化是一种全量持久化方式,可以创建出经过压缩的时间点二 进制快照文件,并通过载入文件中的二进制数据来实施数据恢复。这种 持久化的优点是可以高效地生成文件并且快速地实施数据恢复,缺点则 是文件生成间隔较长以及停机时数据丢失量较大。

        ·AOF持久化是一种增量式持久化功能,可以创建出协议文本格式的文 件,文件中以协议形式记录了服务器执行过的所有命令,服务器可以通 过重新执行文件中保存的命令来实施数据恢复。

        ·在通常情况下,使用AOF持久化可以将停机时丢失数据的时间窗口控 制在1s之内,但也需要定期对AOF文件执行重写操作,使得AOF文件的 体积可以维持在合理的范围之内。除此之外,使用AOF文件实施数据恢 复的耗时要比使用RDB文件实施数据恢复的耗时更久。

        ·通过使用Redis 4.0新增的RDB-AOF混合持久化功能,用户可以同时获 得RDB持久化和AOF持久化各自的优点:服务器既可以通过RDB数据实 现快速的数据恢复,又可以通过AOF数据来有效地限制丢失数据的时间窗口。

        ·Redis 4.0及以上版本的使用者应该优先选用RDB-AOF混合持久化作为 数据持久化手段,而旧版Redis的使用者则应该优先选用AOF持久化作 为数据持久化手段,并将RDB持久化用作辅助的数据备份手段。

        ·处于无持久化状态的Redis服务器在关机之后将丢失关机之前存储的所有数据。