运行命令
向量数据库迁移工具的执行命令,如下所示。
python3 migrate_vdb_to_vdb_0911.py\\--source_connect_url="{url_1}"\\--source_connect_key="{api_key_1}"\\--source_db="{database_1}"\\--source_collection="{collection_1}"\\--target_connect_url="{url_2}"\\--target_connect_key="{api_key_2}"\\--target_db="{database_2}"\\--target_collection="{collection_2}"\\--write_build_index=false\\--rebuild_index_after_write=True\\--field_mappings="column1=column2,column2=column3"
参数说明
参数名 | 说明 | 是否必填 | 默认值 |
source_connect_url | 源端地址 | 是 | - |
source_connect_key | 源端访问密钥 | 是 | - |
source_db | 源端数据库名称 | 是 | - |
source_collection | 源端集合名称 | 是 | - |
filter | 读取时过滤条件 | 否 | - |
offset | 读取时偏移量 | 否 | 0 |
target_connect_url | 目标端地址 | 是 | - |
target_connect_key | 目标端访问密钥 | 是 | - |
target_db | 目标端数据库名称 | 是 | - |
target_collection | 目标端集合名称 | 是 | - |
parallel | 并发度 | 否 | 30 |
read_page_size | 从源数据库单次读取的数据记录数量 | 否 | 1000 |
write_batch_size | 向目标数据库单次写入的数据记录数量 | 否 | 自动计算 |
field_mappings | 字段映射 | 否 | - |
write_build_index | 写入时是否实时构建索引 | 否 | True |
rebuild_index_after_write | 迁移完成后是否 rebuild | 否 | False |
常见问题
问题1:当迁移工具因网络中断、程序异常或手动停止等原因意外退出时,如何快速恢复迁移?
答案:调整 offset 参数,并重新运行脚本。
说明:
示例:假如日志最后输出为
[2025-07-02 17:00:38.6548891 Writer-231 [completedl. written 33000 rows, duration 19.21s.
即设置 offset 参数 = parallel * (33000 - read_page_size)
问题2:write_batch_size 参数未配置,如何计算写入数量?
答案:batch_size = (4096 / dimensions) * 25
dimensions < 64 时,按64计算
如果计算出的 batch_size < 10 则按10计算
如果计算出的 batch_size > 1000 则按1000计算