redis的持久化

1 rdb和aof

rdb是redis database的缩写,它将redis的数据以文件的形式持久化到磁盘中,redis server重新启动时,将数据加载进内存。

aof是append of file的缩写,它持久化的是操作redis的命令,redis server重新启动时,将aof中的命令全部重新执行一遍,这样就和重启之前的数据一样了。

2 rdb

默认情况下是

save 900 1,900秒内1次修改,dump

save 300 10,300秒内10次修改,dump

save 60 10000,60秒内10000次修改,dump

如果60秒内9999次修改了,但是还没有来得及dump,就挂了,那么数据就丢失了。

所以说rdb对数据的完整性要求不高,但是它不会导致rdb文件必然增大。

3 aof

可以选择每次修改了redis都备份。这样,数据的完整性得到了保证。但是随着redis的使用aof文件会越来越大,因为命令总是在增加的。

4 大数据场景下的持久化

大数据时,应该是用aof,数据太大持久化会拖垮机器的性能,因为一个快照得几十GB。使用aof的话,直接保存一条命令就可以了,恢复起来比较慢,但是不会影响系统的实时性能。

原文地址:https://www.cnblogs.com/hustdc/p/8890871.html