名称:
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的数据库中
使用:
Usage:
./nemo_to_blackwidow nemo_db_path blackwidow_db_path -n [thread_num] -l [need_write_log]
example: ./nemo_to_blackwidow ./nemo_db ./blackwidow_db -n 10 -l 1