redis持久化方案比较
redis持久化包括rdb和aof两种方案
1、rdb持久化方案
- 持久化过程:按照redis.conf文件配置,如
save 900 1
save 300 10
save 60 10000
,在指定时间间隔内满足数据落盘策略时候,redis会fork一个和原进程一模一样的子进程,该进程先将数据存到一个临时文件里,待持久化结束后,用临时文件替换上次的持久化文件。
- 触发落盘:满足配置的策略、使用flushdb、使用flushall(效果是所用数据都删除了,落盘后dump.rdb(默认文件名,可配置)文件内容为空)
- 恢复数据:将dump.rdb复制到安装redis目录,并启动redis的服务。(连上redis后可以使用config get dir 获取redis的安装目录)
劣势:
a、在一定间隔时间落盘一次,如果redis意外down,会吊事最后一次的redis中所有修改
b、fork的时候,内存中的数据被克隆了一份,大致2倍的膨胀性需要考虑
优势:适合对数据完整性和一致性要求不高的场景;适合大规模的数据恢复
2、aof持久化方案
- 持久化过程:按照redis.conf文件配置,如
#appendfsync always
appendfsync everysec
#appendfsync no
,根据同步策略为everysec,则每秒将写操作追加(读操作不会追加)到appendonly.aof文件。
- 恢复数据:将appendonly.aof文件复制到config get dir对应的目录,并重启redis
- 重写机制:appendonly.aof的内容是以追加的方式添加的,如果没有特殊机制,该文件会越来越大,为避免这个情况,redis针对aof持久化方式有重写机制
重写过程:当aof文件超过配置的阈值(满足配置文件的配置的策略),redis会fork出一个进程,该进程遍历内存中的数据,每条记录都对应一条set语句,写入临时的aof文件,重写完成后,用临时文件替换上次的持久化文件。
劣势:
a、aof文件远大于rdb文件
b、数据恢复速度慢于rdb
优势:同步策略always->每次修改同步,性能差但完整性好;同步策略everysec->每秒同步,异步操作,如果一秒内down机会丢失数据;no->从不同步
3、疑问
如果两种持久化方式都配置了,那么redis重启时候,从哪里恢复数据呢?
从appendonly.aof文件恢复,因为aof持久化的数据更精确
redis持久化方案比较相关推荐
- (转)淘淘商城系列——Redis持久化方案
http://blog.csdn.net/yerenyuan_pku/article/details/72858975 Redis中设置key的过期时间 Redis中的expire命令用于设置key的 ...
- 淘淘商城——Redis持久化方案
Redis中设置key的过期时间 Redis中的expire命令用于设置key的过期时间,以毫秒计.key过期后将不再可用.Redis中的expire命令基本语法如下: expire key seco ...
- redis持久化方案
说到redis的持久化,可以先说redis的高可用,而保证其高可用的手段有------持久化.复制.哨兵.集群. 持久化:数据的备份,将数据存入硬盘保证数据不会因进程退出而丢失. 复制:是哨兵和集群的 ...
- redis数据丢失_有效避免数据丢失!Redis持久化方案选择详解
为什么需要持久化呢? 通常情况下redis的数据全部存储在内存中,数据库一旦故障发生重启数据会全部丢失,即使是在redis cluster或者redis sentinel模式下主从同步数据的恢复仍然需 ...
- Redis持久化 RDB和AOF 比较与选择
Redis持久化方案 Redis是内存数据库,数据都是存储在内存中,为了避免进程退出导致数据的永久丢失,需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘.当下次Redis重启时,利 ...
- 【腾讯阿里最全面试题】Redis持久化RDB和AOF 的区别
跳槽必备: 嵌入式开发转互联网开发面经分享:嵌入式开发成功转战互联网行业 大厂offer的前置条件 学校学历,技术水准分析:大厂必备前置条件,项目经验 腾讯T9(原T3.1)offer,"8 ...
- Redis 的持久化方案
目录 文章目录 目录 RDB 触发 RDB 持久化 RDB 执行流程 RDB 常用配置 AOF AOF 执行流程 命令写入 文件同步 文件重写 重启加载 AOF 常用配置 性能问题与解决方案 Redi ...
- redis持久化到mysql的方案_redis进阶: 数据持久化
redis是内存数据库,即数据库状态都是存储于内存中,因此,当服务器重启或者断开后,数据便会丢失:为了解决数据丢失问题,便需要将数据从内存保持到磁盘中,这就是redis的数据持久化 目前,redis实 ...
- 天天用Redis,持久化方案你又知道哪些?
来源 |码猿技术专栏 责编 | Carol 头图 | CSDN 下载自视觉中国 Redis目前已经成为主流的内存数据库了,但是大部分人仅仅是停留在会用的阶段,你真的了解Redis内部的工作原理吗? 今 ...
最新文章
- 汇编语言中将数据、代码、栈放入不同的段
- 单片机如何从上电复位执行到main函数?
- memcache windows64 位安装
- JUnit单元测试用例
- python十种日期格式_Python 日期格式相关
- 1. 两数之和(Java)
- html button跳转页面_Html
- PyTorch 1.0 中文官方教程:使用PyTorch编写分布式应用程序
- ARM入门笔记(7)
- html设计网页板块,网页设计
- 计算机与未来的教育阅读答案,作文:计算机与未来的教育
- 通过apache对页面进行压缩和页面缓存来提升性能
- Spring Cloud Hystrix服务容错 (学习总结)
- 《望洞庭湖赠张丞相》 孟浩然
- 利用浏览器制作一款包含3D效果的演示文案
- 阿里云-视频点播服务API调用
- 解密Kerberos流量
- ezcast 有线版 升级
- 西游记中泾河龙王泄露天机惨遭砍头,而袁守诚为何安然无恙
- vue实战(11):开发店铺详情(二)
热门文章
- js 字符串删除首尾_JavaScript trim 实现去除字符串首尾指定字符的简单方法
- KDD_cup99 pytorch
- 网站服务器安全维护,网站服务器安全维护
- java word 在线编辑图片_java开发实现word在线编辑及流转
- java blob转file_人工智能-Object Detection API 模型转tflite并验证
- 归一化频率的物理意义_电磁波的波长、频率和电磁波谱
- java c c 的应用_javac 简单应用
- 【GAN模型结构】从最简单的全卷积GAN一起开始玩转GAN
- 全球及中国膀胱癌药物行业“十四五”专项规划及市场调研分析报告2021-2027年
- java正则过滤特殊字符