news 2026/8/18 4:39:59

在 Cloud SQL for PostgreSQL 上启用 pgvector

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在 Cloud SQL for PostgreSQL 上启用 pgvector

本文档记录了如何在 Google Cloud SQL (PostgreSQL 13+) 实例上启用pgvector扩展,以支持向量数据库功能(如向量存储和相似度搜索)。

1. 简介

pgvector是 PostgreSQL 的一个开源扩展,用于存储和查询向量嵌入(Vector Embeddings)。Google Cloud SQL 已经内置了对该扩展的支持。

此外,Google 还提供了专有的性能优化(ScaNN 索引),可以通过配置 Flags 开启。

2. 操作步骤

启用过程分为两个部分:基础设施配置(Terraform)和数据库内部配置(SQL)。

2.1 步骤一:启用 Google 向量辅助优化 (Terraform)

为了获得更好的向量搜索性能(特别是支持 ScaNN 索引),建议在 Cloud SQL 实例级别启用cloudsql.enable_vector_assist标志。

操作:修改 Terraform 代码 (instance.tf),在google_sql_database_instancesettings块中添加database_flags

resource "google_sql_database_instance" "main" { # ... 其他配置 ... settings { # ... 其他配置 ... # 添加以下 Flag database_flags { name = "cloudsql.enable_vector_assist" value = "on" } } }

应用更改:
执行terraform apply

⚠️ 注意:修改数据库 Flags 通常会触发 Cloud SQL 实例重启,请在维护窗口进行操作。

2.2 步骤二:安装扩展 (SQL)

基础设施配置完成后,还需要在具体的数据库中“安装”扩展。这一步必须通过连接数据库执行 SQL 命令来完成,无法直接通过 Terraform 资源(除非使用专门的 postgresql provider)完成。

连接数据库:
你可以通过 Cloud SQL Auth Proxy、Bastion Host 或配置好的 Envoy 代理连接到数据库。

psql -h[DB_IP]-p5432-U[USERNAME]-d[DB_NAME]

执行安装命令:

psql提示符下执行:

CREATEEXTENSIONIFNOTEXISTSvector;

验证安装:

执行\dx查看已安装的扩展:

default_db=> \dx List of installed extensions Name | Version | Schema | Description ---------+---------+------------+------------------------------------------------------ plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language vector | 0.8.0 | public | vector data type and ivfflat and hnsw access methods (2 rows)

看到vector出现在列表中即表示成功。

3. 常见问题 (FAQ)

Q: 我需要下载 pgvector 的安装包吗?
A:不需要。Cloud SQL 的系统镜像中已经预装了 pgvector 的二进制文件。你只需要执行CREATE EXTENSION命令来在你的数据库中启用它。

Q:cloudsql.enable_vector_assist是必须的吗?
A:不是强制的,但强烈推荐。它启用了 Google 对向量搜索的底层优化(如 ScaNN 索引支持),能显著提升查询性能。如果不开启,你只能使用标准的 HNSW 或 IVFFlat 索引。

Q: 支持哪些 PostgreSQL 版本?
A:pgvector 支持 PostgreSQL 11+,但 Google 的vector_assist优化通常在较新的版本(如 PG 13, 14, 15+)中支持更好。本项目使用的是 PostgreSQL 13。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/15 9:39:18

【图数据库与知识图谱入门】3.5 知识图谱的典型应用场景

文章目录 3.5 知识图谱的典型应用场景 3.5.1 智能搜索:知识增强型语义检索 应用概述 实战代码:基于Neo4j的影视知识智能搜索 环境准备 步骤1:构建影视知识图谱 步骤2:实现智能搜索功能 运行结果 3.5.2 个性化推荐:实体关联驱动的精准推荐 应用概述 实战代码:基于知识图谱…

作者头像 李华
网站建设 2026/8/16 22:18:23

Cordova与OpenHarmony运动建议引擎

欢迎大家加入开源鸿蒙跨平台开发者社区,一起共建开源鸿蒙跨平台生态。 个性化建议的价值 个性化运动建议能够帮助用户更有效地实现健身目标。通过Cordova框架与OpenHarmony的AI能力,我们可以构建一个智能的运动建议引擎。本文将介绍如何实现这一功能。 …

作者头像 李华
网站建设 2026/8/11 11:45:28

基于SpringBoot的酒店客房管理系统的设计与实现毕业设计项目源码

题目简介本课题以 SpringBoot 框架为核心技术支撑,研发一套高效、易用的酒店客房管理系统,旨在解决传统酒店客房管理中人工登记效率低、房态更新不及时、数据统计困难等痛点问题。系统面向中中小型酒店的前厅、客房、财务等部门,覆盖客房预订…

作者头像 李华
网站建设 2026/7/26 8:24:48

程序员的职业生涯:从代码到架构师

程序员的职业生涯:从代码到架构师 关键词:程序员、职业生涯、代码、架构师、技术成长、职业规划、技能提升 摘要:本文深入探讨了程序员从专注于代码编写逐步成长为架构师的职业生涯发展路径。详细阐述了每个阶段所需的核心技能、知识体系和思维转变,通过对相关概念、算法原…

作者头像 李华
网站建设 2026/8/5 0:40:33

【mamba-ssm】cuda12.4|python3.12|torch2.6.0保姆级安装手册

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录环境下载安装插播广告环境 linux python3.12.3 torch2.6.0 cuda12.4 使用pip install xxx.whl 方式安装 安装成功的关键是版本对齐 下载 需要下载两个.whl 1、cau…

作者头像 李华
网站建设 2026/8/9 19:30:19

基于SpringBoot的物流管理系统的设计与实现毕业设计项目源码

项目简介本课题以 SpringBoot 框架为核心技术支撑,研发一套适配中小物流企业的全流程物流管理系统,旨在解决传统物流运营中订单处理效率低、货物轨迹不可控、仓储与配送衔接不畅、财务结算繁琐等痛点,实现物流订单、仓储、运输、结算全环节的…

作者头像 李华