ITPub博客

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

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

作者:duanhao 时间:2019-10-31 00:59:01 0 删除 编辑

最近又在翻 黄老师的 《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。

下载工具

RedisFullCheck

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

运行使用

参数说明

-t 目标库
-s 源库复制代码

./redis-full-check -t 10.101.72.137:30661 -s 10.101.72.137:30551复制代码

查看结果

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

> .tables

FINAL_RESULT  field_1       key_1
> select * from key_1;复制代码

项目推荐: Spring Cloud 、Spring Security OAuth2的RBAC权限管理系统 欢迎关注

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

原文作者:;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2019-09-06

  • 博文量
    739
  • 访问量
    25555