支持私有化部署
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


milvus 三种部署方式说明

发布日期:2025-04-28 22:47:59 浏览次数: 1525 作者:思享云栈
推荐语

Milvus向量数据库部署全解析,覆盖从轻量级到大规模生产环境的所有需求。

核心内容:
1. 三种部署方式:Milvus Lite、Standalone、Distributed的特点与适用场景
2. 如何根据项目阶段和规模选择合适的Milvus部署模式
3. Milvus Lite与Standalone的集成方法及数据迁移策略

杨芳贤
53A创始人/腾讯云(TVP)最具价值专家


Milvus 向量数据库有三种部署方式:Milvus Lite、Milvus Standalone 和 Milvus Distributed,用于支持不同的使用场景和数据规模。不同部署模式均提供相同的客户端应用程序接口。

1. 简要说明

Milvus Lite

Milvus Lite 是milvus的 Python 库,可导入现有的应用程序中进行集成。作为 Milvus 的轻量级版本,非常适合在 Jupyter 笔记本或资源有限的智能设备上运行测试和开发。

要将 Milvus Lite 集成到应用程序中,请运行pip install pymilvus 进行安装,并使用MilvusClient("./demo.db") 语句实例化一个带有本地文件的向量数据库,以持久化所有数据。

Milvus 单机版

Milvus Standalone 是单机服务器部署。Milvus Standalone 的所有组件都打包到一个Docker 镜像中,部署起来非常方便。如果你有生产工作负载,但又不想使用 Kubernetes,那么在内存充足的单机上运行 Milvus Standalone 是一个不错的选择。此外,Milvus Standalone 通过主从复制支持高可用性。

分布式 Milvus

Milvus Distributed 可部署在Kubernetes集群上。这种部署采用云原生架构,摄取负载和搜索查询分别由独立节点处理,允许关键组件冗余。它具有最高的可扩展性和可用性,并能灵活定制每个组件中分配的资源。Milvus Distributed 是在生产中运行大规模向量搜索系统的企业用户的首选。

2. 如何选择适合你的部署方式

Milvus 部署模式的选择可以从项目的阶段和规模两方面进行选型。

项目阶段

根据应用程序的开发阶段进行选择:

1. 用于快速原型开发

如果时快速构建原型或用于学习,如检索增强生成(RAG)演示、人工智能聊天机器人、多模态搜索,Milvus Lite 本身或 Milvus Lite 与 Milvus Standalone 的组合都很适合。可以在笔记本中使用 Milvus Lite 进行快速原型开发,并探索各种方法,如 RAG 中的不同分块策略。或者您可能希望在小规模生产中部署用 Milvus Lite 构建的应用程序,为真正的用户提供服务,或在更大的数据集(例如超过几百万个向量)上验证想法。Milvus Standalone 是合适的选择。Milvus Lite 的应用逻辑仍可共享,因为所有 Milvus 部署都有相同的客户端应用程序接口。Milvus Lite 中存储的数据也可以通过命令行工具移植到 Milvus Standalone 中。

2. 小规模生产部署

对于早期生产阶段,当项目仍在寻求产品与市场的契合,敏捷性比可扩展性更重要时,Milvus Standalone 是最佳选择。只要有足够的机器资源,它仍然可以扩展到 1 亿向量,同时对 DevOps 的要求也比维护 K8s 集群低得多。

3. 大规模生产部署

当你的业务快速增长,数据规模超过单台服务器的容量时,是时候考虑 Milvus Distributed 了。你可以继续使用Milvus Standalone作为开发或暂存环境,并操作运行Milvus Distributed的K8s集群。这可以支持你处理数百亿个向量,还能根据你的特定工作负载(如高读取、低写入或高写入、低读取的情况)灵活调整节点大小。

4. 边缘设备上的本地搜索

对于在边缘设备上通过私有或敏感信息进行搜索,可以在设备上部署 Milvus Lite,而无需依赖基于云的服务来进行文本或图像搜索。这适用于专有文档搜索或设备上对象检测等情况。

项目数据集规模

根据你的项目数据集规模,选择适合你的部署方式。

  • Milvus Lite建议用于较小的数据集,多达几百万个向量。
  • Milvus Standalone适用于中型数据集,可扩展至 1 亿向量。
  • Milvus Distributed 专为大规模部署而设计,能够处理从一亿到数百亿向量的数据集。
select-deployment-option
select-deployment-option

3. 功能比较

对于数据类型和搜索功能,三种部署模式是一致的。单机版和分布式部署提供了更多的客户端支持、更多的数据管理功能等。

功能
Milvus Lite
Milvus 单机版
分布式 Milvus
SDK / 客户端软件
Python
gRPC
Python
 Go
 Java
 Node.js
 C#
 RESTful
Python
 Java
 Go
 Node.js
 C#
 RESTful
数据类型
密集向量
 稀疏向量
 二进制向量
 布尔值
 整数
 浮点
 VarChar
 数组 JSON
密集向量
 稀疏向量
 二进制向量
 布尔值
 整数
 浮点
 VarChar
 数组 JSON
密集向量
 稀疏向量
 二进制向量
 布尔值
 整数
 浮点
 VarChar
 数组 JSON
搜索功能
向量搜索(ANN 搜索)
 元数据过滤
 范围搜索
 标量查询
 通过主键获取实体
 混合搜索
向量搜索(ANN 搜索)
 元数据过滤
 范围搜索
 标量查询
 通过主键获取实体
 混合搜索
向量搜索(ANN 搜索)
 元数据过滤
 范围搜索
 标量查询
 通过主键获取实体
 混合搜索
CRUD 操作符
✔️
✔️
✔️
高级数据管理
不适用
访问控制
 分区
 分区密钥
访问控制
 分区
 分区密钥 
物理资源分组
一致性级别

 有界稳定性
 会话
 最终(Eventual)
强 强
 有界稳定性
 会话
 最终(Eventual)

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询