Redis的RDB持久化是什么?

提问者:帅平 问题分类:面试刷题
Redis的RDB持久化是什么?
1 个回答
娇喘界的扛把子
娇喘界的扛把子
RDB持久化是指在指定时间间隔内将内存中的数据集快照写入磁盘。实际上fork子线程,先将数据集写入临时文件,写入成功后,在替换之前的文件,用二进制压缩文件,RDB是Redis默认的持久化方式,会在对应目录下生产一个dump.rdb文件,重启会通过加载dump.rdb文件恢复数据
优点:
方便持久化:只有一个dump.rdb文件;
容灾性好:一个文件可以保存到安全的磁盘;
性能好:fork子线程来完成写操作,主线程继续处理命令;
效率高:如何数据集偏大,RDB启动效率比AOF高
缺点:
数据安全性低:因为RDB是每隔一段时间进行持久化,可能会造成数据丢失。
由于RDB是通过fork子线程协助完成数据持久化工作的,因此如果数据集较大时,可能会导致整个服务停止服务几百毫秒,甚至一分钟。
发布于:2个月前 (08-05) IP属地:四川省
我来回答