redis 的持久化方式各有什么优点

redis 的持久化方式有两种:RDB方式和AOF方式。RDB方式的优点:1、适用于数据集的备份;2、适用于灾难恢复;3、最大化redis的性能;4、速度更快。AOF方式的优点:1、让Redis数据更加耐久;2、不需要写入seek;3、自动在后台对AOF进行重写等。

redis 的持久化方式各有什么优点-Worktile社区

一、RDB方式的优点

1、适用于数据集的备份

RDB是一个单一的紧凑文件,它保存了某个时间点得数据集,非常适用于数据集的备份,比如你可以在每个小时报保存一下过去24小时内的数据,同时每天保存过去30天的数据,这样即使出了问题你也可以根据需求恢复到不同版本的数据集。

2、适用于灾难恢复

RDB是一个紧凑的单一文件,方便传送,适用于灾难恢复。

3、最大化redis的性能

RDB在保存RDB文件时父进程少数需要做的就是fork出一个子进程,接下来的工作全部由子进程来做,父进程不需要再做其他IO操作,所以RDB持久化方式可以最大化redis的性能。

4、速度更快

与AOF相比,在恢复大的数据集的时候,RDB方式会更快一些。

二、AOF方式的优点

1、让Redis数据更加耐久

使用AOF会让Redis数据更加耐久,你可以使用不同的fsync策略:无fsync,每秒fsync,每次写的时候fsync。使用默认的每秒fsync策略,Redis的性能依然很好(fsync是由后台线程进行处理的,主线程会尽力处理客户端请求),一旦出现故障,你非常多丢失1秒的数据。

2、不需要写入seek

AOF文件是一个只进行追加的日志文件,所以不需要写入seek,即使由于某些原因(磁盘空间已满,写的过程中宕机等等)未执行完整的写入命令,你也也可使用redis-check-aof工具修复这些问题。

3、自动在后台对AOF进行重写

Redis可以在AOF文件体积变得过大时,自动地在后台对AOF进行重写:重写后的新AOF文件包含了恢复当前数据集所需的最小命令集合。整个重写操作是绝对安全的,因为Redis在创建新AOF文件的过程中,会继续将命令追加到现有的AOF文件里面,即使重写过程中发生停机,现有的AOF文件也不会丢失。而一旦新AOF文件创建完毕,Redis就会从旧AOF文件切换到新AOF文件,并开始对新AOF文件进行追加操作。

4、有序保存了对数据库执行的所有写入操作

AOF文件有序地保存了对数据库执行的所有写入操作,这些写入操作以Redis协议的格式保存,因此AOF文件的内容非常容易被人读懂,对文件进行分析也很轻松。导出AOF文件也非常简单:举个例子,如果你不小心执行了FLUSHALL命令,但只要AOF文件未被重写,那么只要停止服务器,移除AOF文件末尾的FLUSHALL命令,并重启Redis,就可以将数据集恢复到FLUSHALL执行之前的状态。

延伸阅读

RDB方式的缺点

  • Redis意外宕机,可能会丢失几分钟的数据(取决于配置的save时间点)。RDB方式需要保存珍整个数据集,是一个比较繁重的工作,通常需要设置5分钟或者更久做一次完整的保存。
  • RDB需要经常fork子进程来保存数据集到硬盘上,当数据集比较大的时候,fork的过程是非常耗时的,可能会导致Redis在一些毫秒级内不能响应客户端的请求.如果数据集巨大并且CPU性能不是很好的情况下,这种情况会持续更久。

AOF方式的缺点

  • 对于相同的数据集来说,AOF文件的体积通常要大于RDB文件的体积。
  • 根据所使用的fsync策略,AOF的速度可能会慢于RDB。在一般情况下,每秒fsync的性能依然非常高,而关闭fsync可以让AOF的速度和RDB一样快,即使在高负荷之下也是如此。不过在处理巨大的写入载入时,RDB可以提供更有保证的最大延迟时间。

文章标题:redis 的持久化方式各有什么优点,发布者:Z, ZLW,转载请注明出处:https://worktile.com/kb/p/34733

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Z, ZLWZ, ZLW认证作者
上一篇 2023年1月8日 上午6:51
下一篇 2023年1月8日 上午7:11

相关推荐

  • 计算机网、以太网和局域网有区别吗

    计算机网、以太网和局域网的区别:1、概念不同;2、安全性不同;3、范围不同。概念不同是指计算机网是一个庞大的网络系统,而以太网是当今现有局域网采用的最通用的通信协议标准,局域网是指在某一个区域内由多台计算机互联成的计算机组。 一、计算机网、以太网和局域网的区别 1、概念不同 计算机网:计算机网是指是…

    2023年4月2日
    81400
  • 代码页都有哪些

    代码页有:1、OEM(IBM PC)代码页;2、Windows(ANSI)代码页;3、中日韩语言代码页;4、其他代码页;5、Windows操作系统中使用的代码页。其中,OEM(IBM PC)代码页有437、737、850、852、855、857等。 1、OEM(IBM PC)代码页 2、Window…

    2022年12月30日
    1.0K00
  • root需要哪些文件系统

    root需要以下文件系统:1、ramfs文件系统;2、nfs文件系统。ramfs文件系统比较简单,只需将制作好的busybox目录在内核config文件中指定一下就可以了。ramfs 是基于缓存的文件系统。所以ramfs去除了块设备的一些限制ramfs根据其中包含的文件大小可以自由伸缩。 1、ram…

    2023年1月11日
    55500
  • 贝锐创始人陈宇晔:花生壳诞生自一次挫折,15年坚守有温度不作恶

    文| babayage 编辑 | 笑 笑 2021年2月,国内名列前茅的SaaS远程连接解决方案提供商上海贝锐科技,继2020年7月成功融资后半年内又完成新一轮4000万美元融资,本轮融资由高瓴创投领投,腾讯跟投,老股东高成资本继续跟投加注,光源资本担任少数财务顾问。 两件趣事:其一,贝锐科技的知名…

    2022年3月20日
    69500
  • DevOps如何提高自动化容器编排的负载均衡

    DevOps通过自动化容器编排实现负载均衡可以显著提升系统的稳定性和资源利用率。这种方法通常包括:1、运用成熟的容器编排工具;2、打造服务发现机制;3、实施自动伸缩策略;4、制定详尽的健康检查程序;5、采取多层次的负载均衡策略。其中,运用成熟的容器编排工具,如Kubernetes,可以通过声明式配置…

    2024年1月18日
    18800
  • 管理学科如何参加科研项目

    管理学科参加科研项目主要通过明确研究方向、构建研究团队、撰写项目申请书、积极寻求资金支持、紧密跟进项目审批流程、加强项目执行和成果转化等关键步骤。其中,明确研究方向是基础,它要求研究者针对管理学科的热点话题或实际问题,精准定位研究内容,确保科研项目具有理论价值和应用价值。 一、明确研究方向 明确研究…

    2024年4月11日
    4600
  • 项目如何落实跟进管理

    项目的成功落实与高效的跟进管理密不可分。有效的跟进管理包括但不限于:设定明确的项目目标、分配适当的资源、采用先进的项目管理工具、构建高效的沟通机制、进行定期的项目评审。在这些关键策略中,构建高效的沟通机制尤为关键,因为它直接影响到项目信息的透明度、团队成员之间的相互理解以及对外部变化的快速响应。通过…

    2024年4月10日
    5500
  • 怎么提取PAC文件

    PAC文件可用PAC-Designer打开,这是基于Windows的功能齐全的模拟设计开发系统。它综合了设计输入、宏实现、仿真及编程功能。其工具栏及下拉菜单方便用户操作该软件的各项功能。用户通过点击、拖放鼠标或对话框即可实现如管脚连接、增益及电容器值的选择等设计控制。 PAC文件可用PAC-Desi…

    2023年2月23日
    64600
  • 测试用例怎么编写

    测试用例的编写方法:1、等价类;2、边界值分析法;3、流程分析法;4、判定表法;5、正交试验法;6、因果图法;7、逻辑覆盖法。等价类将测试用例分为有效等价类和无效等价类两种。 1、等价类 原理:根据需求将被测对象的所有可能的输入划分为若干集合,集合中每一个元素(除上点、离点),对于发现错误的效果是等…

    2023年1月31日
    60700
  • 那家oa办公系统好

    标题:探求最佳OA办公系统 探究*最佳的OA办公系统*时,需考量几个关键因素:1、用户体验;2、功能性;3、安全性;4、成本效益;5、支持与服务。 其中,功能性是决定OA系统好坏的核心,它应包括高效的信息管理、流程自动化、协同工作支持以及无缝的集成能力。高效的信息管理使组织内部信息流转更加顺畅,快速…

    2024年1月15日
    22700

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部