0

与 Andrey Vasnetsov 一起优化开源向量数据库

Demetrios Brinkmann

·

2024 年 1 月 10 日

Optimizing an Open Source Vector Database with Andrey Vasnetsov

优化开源向量搜索:Qdrant Andrey Vasnetsov 的策略

“对于 Qdrant 这样的系统,在我看来,可扩展性和性能比事务一致性更重要,因此它应该被视为搜索引擎而不是数据库。”
– Andrey Vasnetsov

讨论搜索引擎和数据库之间的核心差异时,Andrey 强调了应用程序需求和可扩展性在向量搜索任务数据库选择中的重要性。

Andrey Vasnetsov,Qdrant 首席技术官,是开源、机器学习和向量搜索的爱好者。他致力于与向量相似性搜索和相似性学习相关的开源项目。他更喜欢实践而非理论,更喜欢可行的演示而非 arXiv 论文。

您可以在 YouTube 上观看此集。

此集是卡内基梅隆大学数据库研究组 ML⇄DB 研讨会系列(机器学习用于数据库 + 数据库用于机器学习)的一部分。

主要收获

深入了解向量数据库的复杂性,Andrey 阐述了 Qdrant 结合过滤和向量搜索的方法,揭示了图遍历期间的就地过滤如何在不牺牲搜索精确性的情况下优化精度,即使扩展到数十亿向量。

您将学到的 5 个关键见解

  • 🧠 子图策略: 深入了解重叠区间和地理哈希区域如何增强向量搜索索引内的精度和连通性。

  • 🛠️ 引擎与数据库: 了解搜索引擎和关系数据库之间的差异,以及为什么考虑应用程序的需求对于可扩展性至关重要。

  • 🌐 结合搜索与关系数据: 获取有关集成关系和向量搜索以提高效率和性能的见解。

  • 🚅 速度和精度策略: 揭示通过调整 HNSW 索引中的波束大小来控制搜索精度和速度的技术。

  • 🔗 连通图挑战: 了解在搜索操作期间进行过滤时维护连通图的困难。

趣闻:Qdrant 系统能够在图遍历期间进行就地过滤,这与传统的后过滤方法相比是一种新颖的方法,可确保满足过滤条件的正确数量的结果。

时间戳

00:00 具有向量和引擎专业知识的搜索专业人员。
09:59 Elasticsearch:可扩展、弱一致性,首选向量搜索。
12:53 优化数据结构以提高处理效率。
21:41 向量索引需要特殊处理,如 HNSW 的邻近图和贪婪搜索。
23:16 HNSW 索引:近似、精度控制、CPU 密集型。
30:06 后过滤效率低下,预过滤成本高昂。
34:01 基于元数据的过滤器;创建额外的连接链接。
41:41 向量维度影响比较速度,索引复杂性高。
46:53 重叠区间和子图以提高精度。
53:18 Postgres 限制了可扩展性,额外的索引引擎提供更快的查询。
59:55 解释时间序列数据的嵌入模型。
01:02:01 服务的十亿向量的更便宜的系统。

Andrey 的更多语录

“它允许我们将向量压缩到单个维度仅由一个位表示的水平,这使得向量的总压缩率为 32 倍。”
– Andrey Vasnetsov 谈 AI 中的向量压缩

“我们构建重叠区间,并为这些区间构建带有附加链接的子图。我们还可以对具有地理坐标(即纬度、经度)的位置数据执行相同的操作,我们将其编码为地理哈希,并基本上为重叠的地理哈希区域构建这个附加图。”
– Andrey Vasnetsov

“我们可以使用增量编码、可变字节编码等技术进一步压缩数据。这些优化的总效应,总的综合效应,可以使不可变数据结构的效率比可变数据结构高出好几个数量级。”
– Andrey Vasnetsov

免费开始使用 Qdrant

开始使用