蓝盟小贴士,来喽!
由于redis数据可以保存在磁盘上,过程是什么样的?
有五个过程:
(1)客户端向服务器发送写操作(数据在客户端的内存中)。
(2)数据库服务器接收写请求的数据(数据在服务器的存储器中)。
(3)服务器调用write(系统调用)将数据写入磁盘(数据在系统内存的缓冲区中)。
(4)操作系统将缓冲区中的数据传输到磁盘控制器(数据在磁盘缓存中)。
(5)磁盘控制器将数据写入磁盘的物理介质(数据实际上落在磁盘上)。
RDB实际上以快照的形式将数据保存在磁盘上。什么是快照?你可以把它理解为给当前的数据拍照并保存下来。
RDB持久性是指在指定的时间间隔内将内存中数据集的快照写入磁盘。这也是默认的持久性方法。这种方法是将内存中的数据以快照的形式写入二进制文件。默认文件名是dump.rdb
安装redis后,所有配置都存储在redis.conf文件中,这保存了RDB和AOF两种持久性机制的各种配置。
由于RDB机制通过生成快照在特定时间保存所有数据,因此应该有一个触发机制来实现这一过程。对于RDB,提供了三种机制:保存、bgsave和自动化。让我们分别看一看