redis-port
github链接
https://github.com/CodisLabs/redis-port
介绍
1、redis集群的扩容与收缩
2、数据异构同步,从redis到mysql等等
3、redis原有集群的拆分,按业务线打散成多个集群
4、redis当前内存使用,key占比分析
5、无用数据的检测和清除
6、对于rdb文件的备份
原理
简单来说,就是把自已伪装成slave, 欺骗master来达到数据流同步的目地。
发送sync命令->接收rdb->解析rdb->过滤->回放rdb->回放master推送的同步数据
注:这个工具我们主要用于将非redis集群向redis cluster迁移,优点是支持指定前缀keys的迁移,缺点是不支持实时向redis cluster迁移。
redis-migrate-tool
github链接
https://github.com/vipshop/redis-migrate-tool
特点:
1、快速。
2、多线程。
3、基于redis复制。
4、实时迁移。
5、迁移过程中,源集群不影响对外提供服务。
6、异构迁移。
7、支持Twemproxy集群,redis cluster集群,rdb文件和aof文件。
8、过滤功能。
9、当目标集群是Twemproxy,数据会跳过Twemproxy直接导入到后端的redis。
10、迁移状态显示。
11、完善的数据抽样校验。
迁移工具的来源可以是:单独的redis实例,twemproxy集群,redis cluster,rdb文件,aof文件。
迁移工具的目标可以是:单独的redis实例,twemproxy集群,redis cluster,rdb文件。
注:这个工具我们主要用于将非redis集群向redis cluster迁移,优点是支持实时迁移(程序可以采取双写策略弥补),缺点是不支持指定前缀的keys迁移。
redis-rdb-tools
github链接
https://github.com/sripathikrishnan/redis-rdb-tools
介绍
解析redis的dump.rdb文件,分析内存,以JSON格式导出数据。
提供的功能有:
1、生成内存报告
2、转储文件到JSON
3、使用标准的diff工具比较两个dump文件
redis-rdb-tools是以python语言开发的。
注:这个工具我们主要用于分析redis内存使用情况,key样品分布
redis-faina
github链接
https://github.com/facebookarchive/redis-faina
介绍
redis-faina是由Instagram开发并开源的一个redis查询分析小工具,它是通过redis的monitor命令来实现的,通过对在redis上执行的query进行监控,统计出一段时间的query特性。由于redis的monitor对性能有所影响,所以建议在使用时不要一直开启monitor来分析。可以采用定时抽样一段时间来做样本分析。
redis-faina是以Python语言开发的。