名称:

nemo_to_blackwidow

位置:

/pika-tools/nemo_to_blackwidow

目的:

将Nemo引擎格式的db转换成Blackwidow引擎格式的db

背景:

Pika3.0将数据引擎从Nemo替换成了Blackwidow, Blackwidow为了提高引擎性能对数据存储格式进行了重新设计,由于新引擎的数据格式和老引擎数据格式不同,所以提供了这个工具用于旧引擎db向新引擎db的转换

实现:

ClassifyThread

  • 总共会起5个ClassifyThread,对应于Nemo db中的五种数据结构,也就是每一个分类线程对应于一种数据结构
  • 扫描Nemo db中不同数据结构的库,将扫描出来的Key分发给Migrator

Migrator

  • 获取到从ClassifyThread发送过来的key
  • 对Key进行解析分类,不同数据结构的Key拿到不同的数据
  • 调用blackwidow的接口将这些数据存储到blackwidow的数据库中

使用:

  1. Usage:
  2. ./nemo_to_blackwidow nemo_db_path blackwidow_db_path -n [thread_num] -l [need_write_log]
  3. example: ./nemo_to_blackwidow ./nemo_db ./blackwidow_db -n 10 -l 1

地址:

原文: https://github.com/Qihoo360/pika/wiki/%E6%96%B0%E6%97%A7%E5%BC%95%E6%93%8E%E6%95%B0%E6%8D%AE%E8%BD%AC%E6%8D%A2%E5%B7%A5%E5%85%B7