昨天,小悦在 Redis 交流群(想进群交流的请查看文末进群方式)发起了一个话题讨论:你们觉得好用的第三方Redis工具有哪些?有几位朋友推荐了几款不错的Redis工具,加上之前笔者用过的一些工具,这一节内容就来简单盘点一下这些好用的工具。
1 redis-rdb-tools
作用:分析 RDB 文件
GitHub地址:https://github.com/sripathikrishnan/redis-rdb-tools
经常用于大key分析,文档可参考Redis 运维实战 第06期:Bigkey,3.3 部分。
2 redis-shake
作用:数据迁移工具
GitHub地址:https://github.com/alibaba/RedisShake
中文文档:https://developer.aliyun.com/article/691794
不但支持单实例之间的数据迁移,也支持集群之间的数据迁移,并且也支持公有云Redis 之间的迁移。
支持解析、恢复、备份、同步四个功能。
大致过程如下:
3 redis-full-check
作用:用于校验两个Redis数据是否一致
GitHub地址:https://github.com/alibaba/RedisFullCheck
中文文档:https://developer.aliyun.com/article/690463
redis-full-check 往往和redis-shake配套使用,用于校验迁移后数据是否一致
如下图,redis-full-check内部分为多轮比较,每次会先抓取比较的key,第一轮是从源库中进行抓取,后面是从sqlite3 db中进行抓取;抓取key之后分别对key对应的field和value进行对比,然后将存在差异的部分存入sqlite3 db中,用于下次比较。
并且可选择三种对比模式:
- KeyOutline:只对比key值。
- ValueOutline:只对比value的长度。
- FullValue:对比key值、value长度、value。
4 redis-faina
作用:查询分析器
https://github.com/facebookarchive/redis-faina
经常用于热key分析,用法可参考:Redis 运维实战 第07期:Hotkey。
5 CacheCloud
作用:Redis管理平台
GitHub地址:https://github.com/sohutv/cachecloud
支持Redis多种架构:单节点、Sentinel、Cluster。
支持的功能有:Redis搭建、客户端接入、运维管理、弹性伸缩、监控统计等。
6 RedisInsight
作用:Redis 图形用户界面
官方地址:https://redis.com/redis-enterprise/redis-insight/#insight-form
可通过RedisInsight运行Redis命令,并且可以对 Redis 命令自动补全和语法高亮,支持 RediSearch、RedisJSON、RedisGraph、RedisTimeSeries、RedisGears、RedisAI、RedisBloom。
也可以查看Redis key的详情,如下图:
7 Redis-exporter
作用:监控 Redis
GitHub地址:https://github.com/oliver006/redis_exporter
Prometheus 监控 Redis不可或缺的工具。
支持 Redis 2.x 到7.x 所有版本。
结合 Grafana所获取到的监控图如下: