RDB和AOF,持久化对决,谁才是胜者?
- 内容介绍
- 文章标签
- 相关推荐
说到Redis的持久化问题,我就不得不吐槽一下了!hen多人用Redis用得飞起,但一到数据平安这块就开始犯迷糊。今天咱就好好聊聊RDB和AOF这两个持久化机制,kankan到底谁才是真正的王者。别急,听我慢慢道来这里面门道可深了去了,可以。。
你想想啊, Redis之suo以跑得那么快,主要就是主要原因是它是个内存数据库,suo有的数据dou住在内存里呢。dan是问题来了万一服务器宕机了怎么办?万一不小心重启了怎么办?哎呀,那数据不全丢了吗?这时候持久化机制就显得特bie重要了它就像给数据买了个保险,让你在遇到各种意外情况时还Neng把数据找回来,累并充实着。。

RDB快照:kan起来hen美, 但其实...
RDB这个家伙吧,说白了就是在某个时间点把内存里的数据整个打个包存到磁盘上去。它的工作原理是这样的:Redis会按照设定好的时间间隔, 定期自动生成一个快照文件,把这一时刻suo有的数据dou写进去。你也可yi手动触发,用savehuo者bgsave命令dou行。
不过说实话,RDB这个方案有个挺让人头疼的问题。举个例子, 如guo你设置了每5分钟保存一次那在这5分钟之内如guo发生了意外恭喜你, 说白了就是... 这5分钟的数据就跟你说拜拜了。而且全量备份这种事本身就挺耗时的,数据量大的时候那叫一个慢啊。
dan是呢,RDB也有它的优点。比如恢复大数据集的时候,它的速度确实比AOF快hen多。而且生成的文件特bie紧凑,备份传输douhen方便。再说一个得益于操作系统的写时复制机制, 子进程在生成快照的时候不会影响父进程处理请求,这点还是挺聪明的设计。
说到Redis的持久化问题,我就不得不吐槽一下了!hen多人用Redis用得飞起,但一到数据平安这块就开始犯迷糊。今天咱就好好聊聊RDB和AOF这两个持久化机制,kankan到底谁才是真正的王者。别急,听我慢慢道来这里面门道可深了去了,可以。。
你想想啊, Redis之suo以跑得那么快,主要就是主要原因是它是个内存数据库,suo有的数据dou住在内存里呢。dan是问题来了万一服务器宕机了怎么办?万一不小心重启了怎么办?哎呀,那数据不全丢了吗?这时候持久化机制就显得特bie重要了它就像给数据买了个保险,让你在遇到各种意外情况时还Neng把数据找回来,累并充实着。。

RDB快照:kan起来hen美, 但其实...
RDB这个家伙吧,说白了就是在某个时间点把内存里的数据整个打个包存到磁盘上去。它的工作原理是这样的:Redis会按照设定好的时间间隔, 定期自动生成一个快照文件,把这一时刻suo有的数据dou写进去。你也可yi手动触发,用savehuo者bgsave命令dou行。
不过说实话,RDB这个方案有个挺让人头疼的问题。举个例子, 如guo你设置了每5分钟保存一次那在这5分钟之内如guo发生了意外恭喜你, 说白了就是... 这5分钟的数据就跟你说拜拜了。而且全量备份这种事本身就挺耗时的,数据量大的时候那叫一个慢啊。
dan是呢,RDB也有它的优点。比如恢复大数据集的时候,它的速度确实比AOF快hen多。而且生成的文件特bie紧凑,备份传输douhen方便。再说一个得益于操作系统的写时复制机制, 子进程在生成快照的时候不会影响父进程处理请求,这点还是挺聪明的设计。

