redis持久化几种类型及区别?
两种:
RDB(Redis DataBase)
在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是Snapshot快照,它恢复是将快照文件之间读到内存。
快照,将所有内存数据进行全量保存 ;优点:省空间,效率高;缺点:数据量大耗性能,最后一次持久化可能数据丢失
AOF(Append Of File)日志,以日志形式来记录每个写操作增量操作 ,只追加文件但不改写文件。优点:备份稳健,可读日志处理误操作;缺点:占更多磁盘,备份慢,占性能
备份是如何执行的?
Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方式要比AOF方式更加的高效。RDB的缺点是最后一次持久化的数据可能丢失。
网友评论