当前位置:网站首页>Redis RDB分析系统
Redis RDB分析系统
2022-08-08 14:47:00 【51CTO】
简介
RDB是一款结合自身业务需求研发的Redis RDB 分析工具,基于开源RDR做了二次开发,兼容多云厂商及支持6.0版本,实现了工具化和web平台化两个版本,加入部分公司特性,主要做到了了如下功能:
- 多维度分析,包含所有key类型的内存占用及数目
- 趋势分析,基于无过期key的内存占用和数目近15次的趋势(趋势平台版可提供)
- top分析,自动分析出内存占用top100 key详情(key名称,类型,元素个数,内存占用,过期时间)
- key前缀统计,根据key的类型分析前缀key占用情况
架构
工具版
平台版
原理
RDB解析
编码格式
分析逻辑
通过底层解析二级制文件,并对各种数据类型结构解析后,分析模块来进行统计和分析
key前缀统计模块
根据hash、string、list、set、zset等不同类型的key,来统计key的前缀
key内存top模块
根据内存占用的大小进行排序,并取top
key输出模块
将解析出来的key,进行输出
功能
工具版
show
主要是分析完RDB后,会自动在本地起一个web服务,展示分析结果
dump
为分析完RDB后,生成统计分析结果,以json格式打印在控制台
keys
为分析完RDB后,将所有的key信息打印到控制台(key名称,类型,元素个数,内存占用,过期时间)
task
这个是平台涉及,从队列中获取分析任务,解析RDB文件,并将解析结果写入数据库
平台版
定时分析
备份系统对实例做完实例备份后,将备份结果信息写入分析队列,RDB分析系统从分析队列中读取任务,并对RDB文件进行解析
实时分析
平台上发起立即分析,会调度备份系统,待备份完成后,通过高优先级级别的队列形式告知RDB系统,然后进行分析
分析结果
边栏推荐
猜你喜欢
随机推荐
万字长文:常见的软件测试面试题(附答案)
"Small yards artisan study room" friends of friends is not a friend
兆骑科创创业赛事活动举办平台,投融资对接,线上直播路演
优雅地实时检测和更新 Web 应用
什么是低代码开发?大家都真的看好低代码开发吗?
【Kaggle】Save My Paper 基于自编码器的文本图像去噪
JS-Bom-while (calculate leap year)
从洞察到决策,一文解读标签画像体系建设方法论丨DTVision分析洞察篇
[内部资源] 想拿年薪30W的软件测试人员,这份资料必须领取
看三年的CRUD程序员如何解决数据库死锁的
【小码匠自习室】[NOI Online 2020-2 入门组] 未了:可恶的精度会让你焦头烂额
window停掉指定端口的进程
Code Casual Recording Notes_Dynamic Programming_322 Change Exchange
Ubuntu下使用sudo dpkg --configure -a后数据库出现问题
[Small Coder Study Room] ABC179-C: It is a miracle that the code does not count down
【小码匠自习室】朋友的朋友不是朋友
并发请求如何优雅地处理重复请求
bandanas Kerchief头巾是何含义?
如何成为团队核心?从写出不可维护的代码开始
MySQL中UNION和UNION ALL的区别