当前位置: 首页 > news >正文

Milvus--向量数据库

        Milvus 是一个开源的向量数据库,专为高维向量数据的存储、查询和检索而设计。它支持多种类型的向量数据,如浮点数向量、整数向量等,并且提供了强大的向量相似度计算功能。Milvus采用分布式架构,可以轻松地扩展到大规模数据集,同时保证了数据的一致性和可用性。

关键概念和特点

1. 非结构化数据:
    非结构化数据指的是数据结构不规则,没有统一的预定义数据模型,不方便用数据库二维逻辑表来表现的数据。这包括图片、视频、音频、自然语言等多种非结构化数据。
    Milvus 可以帮助处理这些非结构化数据,将其抽象为高维特征向量,从而实现高效的向量相似度搜索。

2. 特征向量:
    特征向量是由 embedding 技术从离散变量(如图片、视频、音频、自然语言等各种非结构化数据)转变而来的连续向量。
    通过向量表示,Milvus 可以捕捉到数据的语义相似性,使得不同模态的数据之间可以相互匹配。

3. 多模态搜索:
    Milvus 自带多模态功能,支持机器学习方法处理和理解来自不同源的多种模态信息,如文本、图像、音频和视频等。
    这使得 Milvus 能够应用于多语言搜索、图像检索等多模态应用。

4. 大模型的赋能:
    Milvus 可以拓展大模型的边界,包括时间边界和空间边界。
    时间边界的拓展:Milvus 使得大模型具有“长期记忆”,能够处理新信息。
    空间边界的拓展:Milvus 支持本地部署,解决大模型泄露隐私的问题。

5. Milvus 2.0:
    Milvus 2.0 是一款云原生向量数据库,采用存储与计算分离的架构设计。

总之,Milvus 是一个强大的向量数据库,适用于处理和搜索大规模的高维向量数据,为 AI 应用和向量相似度搜索提供了加速引擎。

 性能

        Milvus 是一款高性能的向量数据库,专为 AI 应用设计,以处理和检索海量向量数据。以下是关于 Milvus 性能的一些关键点:

1. 性能提升:
   在最新的 Milvus 2.2 benchmark 中,Milvus 相比之前的版本取得了 50% 以上的性能提升。
   在 1M 向量串行执行的场景下,Milvus 实现了 3ms 以下的延迟,整体 QPS 甚至超过了 ElasticSearch 的 10 倍。

2. 优化技巧:
   Milvus 的性能可以通过合理预计数据量、表数目大小、QPS 参数等指标进行优化。
   选择合适的索引类型和参数对于向量召回的性能至关重要,Milvus 支持多种不同的索引,如 Annoy、Faiss、HNSW、DiskANN 等。

3. 高可用性和弹性:
   Milvus 支持 Kubernetes 部署,以获得最佳可用性和弹性³。
   它还支持数据分片、数据持久性、流式数据摄入、向量和标量之间的混合搜索、时间旅行等高级功能³。

4. 云原生架构:
   Milvus 是云原生的,采用存储与计算分离的架构设计,支持海量向量数据的实时召回。
   它基于 FAISS、Annoy、HNSW 等向量搜索库构建,解决稠密向量相似度检索的问题。

综上所述,Milvus 的性能非常出色,适合需要处理大规模、高维向量数据的应用场景。

可扩展性 

        Milvus 是一款引领大规模相似度搜索的向量数据库,具备高性能和高可扩展性。让我们深入探讨一下它的可扩展性特点:

1. 高可扩展性:
    Milvus 基于云原生分布式架构,能够实现百亿级别的向量索引扩展。
    它支持存储与计算分离,离在线一体化,使得数据库在应对不同场景时更加灵活。

2. 丰富的生态支持:
    Milvus与多个大模型生态系统深度集成,包括OpenAI、Langchain、Semantic Kernel、Llama-Index、AutoGPT、Towhee、Hugging face、Cohere等,为用户提供了丰富的应用场景和解决方案。

3. 一键部署:
    用户可以通过控制台快速创建Milvus向量数据库实例,全流程平台托管,无需进行任何安装、部署和运维操作,有效减少搭建和运维成本开销。

4. 服务高可用:
    Milvus采用云原生分布式构建,具备故障自动切换和自愈能力,全面提升实例可用性。
    它还支持安全组管理,通过配置安全组,授权特定访问源,保证服务及数据的安全。

5. 完善的监控:
    Milvus向量数据库提供可视化监控面板,用户可以全面了解数据库实例的运行情况,及时发现并解决问题。

        总之,Milvus的高可扩展性使其适用于智能客服、推荐系统、NLP服务、计算机视觉等AI领域的广泛应用。

支持索引类型

         Milvus 是一个云原生向量数据库,它支持多种向量索引类型,以便高效地处理和查询大规模的向量数据。根据不同的应用场景和数据规模,Milvus 提供了以下几种索引类型:

1. FLAT:适用于需要100%召回率且数据规模相对较小(百万级)的向量相似性搜索应用¹。
2. IVF_FLAT:基于量化的索引,适用于追求查询准确性和查询速度之间理想平衡的场景(高速查询、要求高召回率)。
3. IVF_SQ8:基于量化的索引,适用于磁盘或内存、显存资源有限的场景(高速查询、磁盘和内存资源有限、接受召回率的小幅妥协)。
4. IVF_PQ:基于量化的索引,适用于追求高查询速度、低准确性的场景(超高速查询、磁盘和内存资源有限、接受召回率的实质性妥协)。
5. HNSW:基于图的索引,适用于追求高查询效率的场景(高速查询、要求尽可能高的召回率、内存资源大的情景)。
6. ANNOY:基于树的索引,适用于追求高召回率的场景(低维向量空间)。

        此外,Milvus 还支持其他一些索引类型,如 SCANN、DISKANN 等,以及 AUTOINDEX,这是一种自动选择最合适索引类型的功能。每种索引类型都有其特定的应用场景和优势,用户可以根据自己的需求选择最适合的索引类型。

http://www.lryc.cn/news/364815.html

相关文章:

  • php质量工具系列之PHPCPD
  • Android14 WMS-窗口绘制之relayoutWindow流程(二)-Server端
  • 安全测试 之 安全漏洞:SQL注入
  • CUDA和驱动版本之间的对应关系
  • MDK(μVsion3)问题总结及解决方法
  • 手眼标定学习笔记
  • Dell戴尔XPS 16 9640 Intel酷睿Ultra9处理器笔记本电脑原装出厂Windows11系统包,恢复原厂开箱状态oem预装系统
  • 【第8章】SpringBoot实战篇之文章分类(上)
  • 【QT】Qt Plugin开发
  • 快速了解GPU分布通信技术:PCIe、NVLink与NVSwitch
  • Python对获取数据的举例说明
  • JVMの垃圾回收
  • 人工智能就业方向有哪些?
  • 自定义类型:枚举和联合体
  • 负载均衡加权轮询算法
  • PyTorch 相关知识介绍
  • 1千2初中英语语法题库ACCESS\EXCEL数据库
  • 高德面试:为什么Map不能插入null?
  • MySQL数据库主从配置
  • 测试工程师经常使用的Python中的库,以及对应常用的函数
  • 【frp】服务端配置与systemd启动
  • 计算机网络学习实践:模拟RIP动态路由
  • 详解 Flink 的常见部署方式
  • 【UE5.1 角色练习】11-坐骑——Part1(控制大象移动)
  • 数据结构严蔚敏版精简版-线性表以及c语言代码实现
  • 【react】react项目支持鼠标拖拽的边框改变元素宽度的组件
  • QT 创建文件 Ui 不允许使用不完整类型,可以尝试添加一下任何头文件
  • Python:深入探索其生态系统与应用领域
  • EXCEL从图片链接获取图片
  • Docker迁移默认存储目录(GPT-4o)