在AI技术的飞速发展背景下,许多新型工具逐渐成为行业关注的焦点。其中,向量数据库作为一种创新性的数据存储方案,区别于传统的SQL或NoSQL数据库。作为向量数据库的佼佼者,Qdrant凭借其开源特性和强大性能,越来越多地应用于AI相关的数据管理与处理场景。对于数据库来说,数据迁移是一个常见且必不可少的操作。如何在Qdrant集群之间实现数据的高效迁移呢?本文将为您详细介绍一种基于快照的迁移方法,让您的Qdrant集群迁移变得更加轻松、快捷。
文章导航
一、为什么选择基于快照的迁移方式?
在传统的数据迁移方法中,我们通常会遇到较长的停机时间和复杂的操作流程。Qdrant通过快照功能提供了一种更为高效的迁移方式,使得数据迁移可以在后台异步执行,并且操作相对简便,特别适合在新旧集群网络不互通的情况下完成数据的顺畅迁移。
快照迁移的核心优势:
- 低停机时间:由于支持后台执行,迁移过程中的停机时间可降至最低。
- 灵活性高:可以选择将快照文件上传至任意可通过HTTP下载的位置。
- 适应性强:即便集群之间网络不通,也可通过快照完成迁移。
接下来,将详细说明如何通过创建快照的方式,实现Qdrant集群之间的数据迁移。
二、Qdrant快照迁移的详细操作步骤
1. 在旧集群中创建Collection快照
curl -X POST http://127.0.0.1:6333/collections/model_test/snapshots?wait=false
注:wait参数的意义是创建快照操作是否后台执行,为false时即是后台执行
2. 获取快照信息
创建完快照后,可以通过两种方式查看快照的相关信息。
前台获取快照信息
上一步执行完成后会输出一个快照的信息,如:model_test-6476696575271354-2024-05-16-09-36-09.snapshot
后台获取快照信息
后台执行无法立即获得快照信息,可通过http api的方式获取快照信息。
curl -X GET 'http://127.0.0.1:6333/collections/model_test/snapshots'
{
"time": 0.02,
"status": "ok",
"result": [
{
"name": "model_test-6476696575271354-2024-05-16-09-36-09.snapshot",
"size": 6789,
"creation_time": "2024-05-16T09:36:09",
"checksum": "a1b2c3d4e5f6a7bf22k342j2fd43ve7f8a9b0c1d2e3f4a5b6c7d8e9f0"
}
]
}
3. 下载快照到本地
wget http://127.0.0.1:6333/collections/model_test/snapshots/model_test-6476696575271354-2024-05-16-09-36-09.snapshot
4. 上传快照到存储桶
上传到任意一个可以通过http下载的位置即可,此处采用了存储桶。
coscli cp model_test-6476696575271354-2024-05-16-09-36-09.snapshot cos://test/qdrant_snapshots/
5. 在新集群中恢复数据
用快照在新集群恢复数据,该操作不用将快照下载下来,请求api时带上快照的http地址即可。
curl -X PUT http://127.0.0.1:6333/collections/model_test/snapshots/recover?wait=false --header 'Content-Type: application/json' --data '{"location":"https://【存储桶地址】/qdrant_snapshots/model_test-6476696575271354-2024-05-16-09-36-09.snapshot","priority":"snapshot"}'
注:"priority":"snapshot",当新集群存在同名collection时,该参数就尤为重要,其决定了数据以快照为准还是原本collection为准。通常还是以快照为准,则传参snapshot即可。
6. 注意事项
1. 以上步骤主要是用于新旧集群之间网络不互通的情况。当新旧集群之间网络互通时就可以省略2、3步骤,然后将4步骤中的location字段的值改成2步骤中的下载连接即可
2. 通过该方式也仅仅适合服务可以暂停的业务中,即在数据迁移期间旧集群没有新的数据写入。
总结
随着AI和大数据的发展,向量数据库逐渐成为数据处理的核心工具之一。对于企业来说,如何高效、安全地完成数据迁移是确保系统稳定运行的重要一环。Qdrant提供的快照功能,无疑为数据库集群之间的数据迁移带来了更多的灵活性和便捷性。只要按照本文介绍的操作步骤,就能轻松实现Qdrant集群的数据迁移。
延展阅读:
咨询方案 获取更多方案详情