PROD欧洲主权BaaS平台打开仪表板 →

原生人工智能 · 9 最小读取值

2026 年 pgvector 与 Pinecone、 Weaviate、 Qdrant

Affane Daylami · Fondateur · 2026年4月9日

返回博客

pgvector 不是向量数据库:它是一个 Postgres 扩展,它将向量列类型和相似性运算符添加到现有的关系数据库中。 Pinecone、Weaviate 和 Qdrant 是三个致力于矢量研究的基地,具有三种不同的部署模式。因此,真正的问题不是“哪个更好”,而是“向量应该与关系数据一起存在,还是位于单独的系统中”。

该英文文本是根据法文原文自动生成的,尚未经过审查。
该页面已自动翻译。英文版具有权威性。

本文比较了随时间推移保持稳定的四个选项:部署模型、数据位置和搜索功能。我们不会重新发布 Pinecone、Weaviate 或 Qdrant 的定价或延迟基准。这些数字变化太快,未经过时的验证就不可靠,而本文进行的研究并未涵盖这些数据。有关 Aurabase 原生 AI 支柱(NL2SQL、RAG、代理)的概述,请参阅我们的 原生 AI页面。

要点
  • pgvector 是 Postgres 的扩展,而不是单独的基础:您的向量保持与关系数据的连接,而 RLS 直接适用于向量列。
  • Pinecone 是一种专有的封闭云服务,没有公共自托管选项。零基础设施操作,以换取对其数据格式的完全锁定。
  • Weaviate 和 Qdrant 是两个专用的开源矢量数据库,可自托管或在托管云中使用。 Weaviate重点强调混合BM25+天然载体研究; Qdrant 强调有效负载过滤和内存量化。
  • Aurabase 在每个项目的 Postgres 映像中嵌入 pgvector 0.8.6,并将其用于其本机 RAG 功能(摄取、嵌入、HNSW 索引),截至 2026 年 8 月 23 日在代码中进行了验证。
  • 没有普遍的赢家:正确的选择取决于数据的拓扑,而不是性能的绝对排名。
#
概述

四种架构,而不是四向排名

pgvector、Pinecone、Weaviate 和 Qdrant 都提供相同的功能,查找最接近查询的向量,但它们之间的架构不兼容。下表比较了随着时间的推移仍然存在的内容:部署模型、数据位置、搜索功能。 Pinecone、Weaviate 和 Qdrant 的价格和准确版本号故意不显示:在做出任何购买决定之前,请先在官方网站上查看它们。

标准PG向量松果韦维阿特奎德兰特
类型Postgres 扩展,不是单独的基础专有载体数据库,封闭服务专用向量库,开源专用向量库,开源
您的数据存放在哪里在 Postgres 中,以及关系模式的其余部分在你的主要基地之外,在松果指数中离开您的主要基地,在 Weaviate 系列中在您的主基地之外,在 Qdrant 集合中
部署嵌入现有的 Postgres 集群中仅托管云,无公共自托管选项自托管或托管云(Weaviate Cloud)自托管或托管云(Qdrant Cloud)
混合关键词+矢量搜索是的,通过标准 SQL:tsvector、连接和与向量相结合的关系过滤器按元数据过滤;没有记录的原生 BM25 融合是的,融合向量+原生BM25,产品的旗舰功能按负载进行丰富的过滤;默认情况下没有原生 BM25 融合
多租户隔离标准 Postgres RLS,行级别,直接适用于向量列在服务端通过索引或命名空间进行隔离服务端收集绝缘服务端收集绝缘
模糊搜索索引IVFFlat 和 HNSW,您的选择专有索引,实施细节未详细公布新南威尔士州HNSW,具有可选的标量或二进制量化
拓扑比较:Postgres 中嵌入的 pgvector 与从应用程序同步的专用向量库Postgres + pgvector关系表向量列+HNSW索引相同的交易,相同的 RLS 策略专用载体库您的主要应用/基础松果 / Weaviate / Qdrant同步维护(ETL、作业、webhook)

两种可能拓扑的概念图。它不编码任何加密数据,只编码部署架构。

Aurabase 代码中检查的元素:每个项目的 Postgres 映像中嵌入的 pgvector 版本是 0.8.6。它由标准上游 CNPG 映像提供,而不是由 Aurabase 专门添加。 2026 年 8 月 23 日存储库的 Dockerfile 中记录了这一事实。官方 pgvector 存储库还确认每个向量的最大维度为 16,000。这远远高于 Aurabase 的本机 RAG 管道使用的三个维度类别(768、1536、3072)。该管道是特定于 Aurabase 的应用程序补充,构建在 pgvector 之上。

#
PG向量

无需离开 Postgres 即可进行矢量搜索

pgvector 将 vector(n) 列类型和距离运算符(<=> 余弦、 <-> 欧氏、 <#> 点积)添加到普通的 Postgres 基础中。您的向量与架构的其余部分共享相同的表、相同的事务和相同的约束:无需同步到外部系统。

For fuzzy searching, pgvector offers two index types to choose from. IVFFlat divides the vector space into lists by clustering and searches only in the lists closest to the query. Its construction is lighter, but you must choose a number of lists adapted to the volume of data. HNSW constructs a multi-level neighbor graph, without a prior training step, at the cost of a more memory-intensive construction. For details of the adjustment parameters (m, ef_construction), see our guide dedicated to the HNSW index.

通用 pgvector SQL 示例(不包括内部 Aurabase 代码)sql
-- 扩展和向量列(维度 1536,例如 text-embedding-3-small)
CREATE EXTENSION IF NOT EXISTS vector;
ALTER TABLE documents ADD COLUMN embedding vector(1536);

-- 用于模糊搜索的 HNSW 索引
CREATE INDEX ON documents USING hnsw (embedding vector_cosine_ops);

-- 连接到关系表的矢量搜索,通过 RLS 过滤
SELECT d.id, d.content
FROM documents d
JOIN projects p ON p.id = d.project_id
WHERE p.owner_id = auth.uid()
ORDER BY d.embedding <=> $1
LIMIT 5;

最后一行是结构点:WHERE p.owner_id = auth.uid() 子句适用于向量搜索,就像适用于任何其他查询一样。由于您的 RLS 策略存在于 Postgres 中,而不是第三方服务中,因此没有专用的向量数据库可以在本机重现此行为。要基于此构建完整的 RAG 管道,请参阅我们的 RAG 管道教程以及 pgvector。

#
松果

封闭式托管服务,没有自托管选项

Pinecone 是专门作为专有云服务提供的矢量库。没有公共的自托管版本:您的向量位于 Pinecone 的基础设施中,而不是您的基础设施中。这是发布者假设的架构选择,而不是临时限制。

妥协是直接的。需要管理的零矢量基础设施操作:无需调整集群大小,无需自行运行索引。作为交换,事后经常会出现两种隐性成本。首先,在主数据库和 Pinecone 索引之间构建和维护同步管道,在发生部分故障时具有自己的一致性逻辑。接下来,专有格式和 API:迁移出 Pinecone 意味着重新导出整个向量并在其他地方重建集成。

小心本次会议未经验证的数字

本文没有引用 Pinecone 的任何定价、配额限制或具体实施细节。对此页面进行的研究并未包括对此信息的最新验证,该信息经常变化。在做出任何生产决策之前,请参阅官方松果文档。

#
韦维阿特

具有本机混合搜索的专用开源数据库

Weaviate 是一个专用的开源自托管矢量数据库,也可以作为托管云产品 (Weaviate Cloud) 提供给那些不喜欢自己操作的人。出版商最强调的功能是本机混合搜索。它将矢量相似度得分和 BM25 类型关键字对应得分合并到单个结果分类中。

具体来说,这避免了您自己编写语义搜索和关键字搜索之间的融合逻辑,这是其他方法留给应用程序的步骤。 Weaviate 还提供了一个模块系统,可以在摄取时直接连接外部嵌入提供商。妥协与任何专用数据库相同:需要操作或付费的额外系统,以与您的主要数据源保持同步。

#
奎德兰特

用 Rust 编写的专用数据库、过滤和内存占用

Qdrant 是一个专用矢量数据库,开源并用 Rust 编写,也可以在自托管或托管云(Qdrant Cloud)中使用。与 Aurabase 的核心一样,Qdrant 是用 Rust 编写的:一种共享的语言选择,而不是其本身的优越性争论。

Qdrant 的反馈中最常出现两点。首先,丰富的有效负载过滤系统:它允许您在同一查询中结合结构化过滤器(类别、日期、状态)和向量搜索。接下来是量化选项(标量或二进制),旨在减少大规模索引的内存占用。与 Weaviate 相同的妥协:与主数据库分离的系统,需要维护自己的同步逻辑。

#
决定

何时选择 pgvector、Pinecone、Weaviate 或 Qdrant

如果...选择 pgvector

  • 您的向量必须始终附加到您的关系数据(用户、权限、产品)
  • 您的 RLS 政策也应适用于矢量搜索结果
  • 您不想在 Postgres 之上添加一个同步系统

选择松果如果...

  • 您想要零矢量基础设施操作
  • 锁定封闭的专有格式对您的团队来说不是问题
  • 您同意构建到外部服务的同步管道

如果...选择Weaviate

  • 您想要混合关键字+本机矢量搜索,而不需要自己重建它
  • 您的用例是一个独立的搜索引擎,而不是添加到现有应用程序的功能
  • 除了您的主要基地之外,您还准备好运营或支付专门服务的费用

如果...选择 Qdrant

  • 按有效负载进行丰富的过滤是您规模的决定标准
  • 内存量化对于非常大的向量索引很重要
  • 您需要一个开源引擎来保持对代码的控制
#
我们的选择

代码显示的内容:原生 pgvector,没有单独的扩展名

Aurabase 不添加 pgvector:该扩展已存在于 CloudNativePG 提供的标准 Postgres 映像中,CloudNativePG 是用于租户集群的基础。 Aurabase 构建的基础是应用程序功能:具有网络错误管理功能的摄取管道、嵌入模块以及按 HNSW 索引进行矢量搜索。此功能在 aura-ai服务中原生公开,并于 2026 年 8 月 23 日在存储库代码中进行了验证。

Aurabase RAG 管道支持三类嵌入尺寸(768、1536、3072),对应于当前嵌入模型最常见的输出尺寸。每个向量仍然是项目模式中普通 Postgres 表的一列,并且与该项目的其余数据采用相同的 RLS 策略。这与第 02 节中的 SQL 示例的逻辑相同,应用于整个管道而不是孤立的查询。

注意

截至今天,此存储库中尚未发布在真实 Aurabase 负载上比较 pgvector 与 Pinecone、Weaviate 或 Qdrant 的延迟基准。请参阅我们的 基准 页面了解此支柱上使用的方法,并参阅我们的 RAG pgvector 指南 了解完整的技术文档。

#
常见问题

我们最常被问到的问题

pgvector 可以在生产中替代像 Pinecone 这样的专用载体库吗?+
这取决于数据的数量和拓扑,而不是绝对的规则。对于集成到现有应用程序中的矢量搜索(文档上的 RAG、目录上的语义搜索),pgvector 避免同步第二个系统。在非常大的规模上,对于不需要关系连接的纯粹向量使用,专用数据库可能是真正有意义的。请参阅第 06 节中的决策网格。
pgvector 中的 IVFFlat 和 HNSW 索引有什么区别?+
IVFFlat 通过聚类将向量空间划分为列表,并仅在最接近的列表中进行搜索:结构较轻,但需要根据体积校准多个列表。 HNSW 无需事先训练步骤即可构建多级邻居图,但代价是构建内存更加密集。有关调整参数的详细信息,请参阅我们的 HNSW 指数专用指南。
与 Pinecone 不同,Weaviate 和 Qdrant 是开源的吗?+
是的,两者都可以。 Weaviate 和 Qdrant 分发自托管开源版本,并辅以托管云产品(Weaviate Cloud、Qdrant Cloud)。相反,Pinecone 不提供任何公共自托管选项:它是一项只能通过其专有云访问的服务。
如果应用程序已经使用 Postgres,是否需要单独的向量库?+
不是自动的。真正的标准不是 Postgres 是否可以进行矢量化(它可以,通过 pgvector)。这是您的矢量搜索结果是否应继续通过 RLS 策略进行过滤并附加到您的关系数据。有关 Aurabase 机制的详细信息,请参阅 RLS 的多租户隔离指南。
#
综上所述

这四种架构之间没有普遍的赢家

pgvector、Pinecone、Weaviate 和 Qdrant 不能满足相同的需求。 pgvector 通过将向量保留在 Postgres 中来消除同步,但代价是使用比专用产品更专业的引擎。 Pinecone 撤回所有基础设施运营,以换取完全专有锁定。 Weaviate 添加了开箱即用的原生混合搜索。 Qdrant 强调丰富的过滤和大规模的内存占用。在所有四种情况下,决定标准都是相同的:您的数据应该存放在哪里,以及谁应该能够过滤它。

为了在此基础上构建完整的 RAG 管道,我们的 RAG 管道教程使用 pgvector 逐步详细介绍了摄取、嵌入和向量搜索。有关 Aurabase 原生 AI 支柱的概述,请参阅 原生 AI页面。

准备好部署了吗?

五分钟内完成您的后端。

无需信用卡 · 500 MB 免费 · 50,000 MAU