pika到redis遷移工具

2018-09-28 10:33 更新

名稱:

pika_to_redis

位置:

pika/third/nemo/tools/migrator/pika_to_redis

目的:

離線遷移pika數(shù)據(jù)到redis

背景:

Pika兼容Redis協(xié)議,所以任何使用于Redis的遷移工具同樣也適用于Pika,Redis-cli本身提供了一個pipe參數(shù)來完成Redis到Redis

  • 遷移過程中,不斷讀取aof新增內(nèi)容
  • 錯誤輸出
  • 線程并行方式代替串行方式,提高遷移效率

實現(xiàn):

migrator線程

  1. 掃描不同數(shù)據(jù)類型的分庫
  2. 將掃描到key分發(fā)給parser線程

parser線程

  1. 接收migrator發(fā)送的key
  2. 將key進(jìn)行解析成響應(yīng)數(shù)據(jù)redis指令
  3. 將解析好的redis指令加載到sender的發(fā)送buf中

sender線程

  1. 從發(fā)送buf中讀取數(shù)據(jù),以非阻塞方式向redis發(fā)送數(shù)據(jù)
  2. 接收redis返回的結(jié)果并解析,如果出現(xiàn)錯誤則顯示錯誤結(jié)果

使用:

Usage: ./pika_to_redis db_path <ip> <port> <num_sender>
$ ./pika_to_redis ~/db 127.0.0.1 6379 20

地址:


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號