背景
为了满足快速分析rdb的情况,对rdr进行测试调研。
测试环境
测试机器:本机macbook pro
工具:rdr,redis-rdb-toolsrdb
文件:dump_7709.rdb,Redis实例大小3G,rdb文件大小1G+
git地址:https://github.com/xueqiu/rdr/blob/master/README.md
具体测试
1、show格式测试
./rdr show dump_7709.rdb此模式通过分析rdb,通过默认端口8080进行展示,访问格式:http://{ip}/8080,端口可以显式指定,具体效果展示如下:
2、dump格式测试
./rdr dump dump_7709.rdb分析结果为json格式,分别是类型、key名字、大小、包含多少members
3、keys格式测试
./rdr keys dump_7709.rdb解析出rdb文件中的所有的key
总结
对比之前的redis-rdb-tools工具,效率显著提高,仅对测试数据而言,如下:
两者的区别在于:
redis-rdb-tools分析出每个key的类型、大小、编码、包含members;rdr仅拿出top 100大的key进行展示,全局情况是汇总后的情况。
现状
目前我们已将rdr工具集成到我们的数据库平台,rdb分析工具以工单的形式开放给业务方,工单审批完成之后会自动化执行,可以快速定位key相关的问题,大幅提升业务的效率,同时也减少了dba的部分人力成本。