面試官: 兩個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。

下載工具

RedisFullCheck

目前僅支持 Linux環境 ,其他環境自行安裝Golang 自行交叉編譯

運行使用

參數說明

-t 目標庫
-s 源庫
./redis-full-check -t 10.101.72.137:30661 -s 10.101.72.137:30551

<img src="http://pigx.vip/redis-full-ch...;/>

查看結果

# 三輪比較 則會參數三個 db 文件
sqlite3 result.db.1

> .tables

FINAL_RESULT  field_1       key_1
> select * from key_1;

項目推薦: Spring Cloud 、Spring Security OAuth2的RBAC權限管理系統 歡迎關注

最近時間寬裕。整點花哨的系列,歡迎關注。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章