为了账号安全,请及时绑定邮箱和手机立即绑定

面试官: 两个Redis实例怎么快速对比哪些数据不一致

最近又在翻 黄老师的 《Redis 设计与实现》,想到几道面试题 结合实际生产过程中的一些步骤作为总结

问题

如上图如何能快速的从两个Redis实例怎么快速对比哪些数据不一致?

什么是数据不一致

  • key不一致
  1. 相同key名 在不同实例上的数据类型不一致
  2. key 存在于源 redis 不存在目标 redis
  3. key 存在于 目标redis 不存在源redis
  • value 不一致
  1. string 类型的值,在不同实例上不一致
  2. 其他类型,同key 判断.

工具推荐

redis-full-check 是阿里云Redis&MongoDB团队开源的用于校验2个redis数据是否一致的工具,支持单节点、主从、集群版、以及多种proxy,支持同构以及异构对比,redis的版本支持2.x-5.x。

下载工具

目前仅支持 Linux环境 ,其他环境自行安装Golang 自行交叉编译

运行使用

参数说明

-t 目标库
-s 源库
./redis-full-check -t 10.101.72.137:30661 -s 10.101.72.137:30551
redis-full-check.gif

查看结果

# 三轮比较 则会参数三个 db 文件
sqlite3 result.db.1

> .tables

FINAL_RESULT  field_1       key_1
> select * from key_1;

最近时间宽裕。整点花哨的系列,欢迎关注。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消