【学习笔记】PostgreSQL:不只是关系型,更是 AI 时代的“数据底座”

一、 前言:为什么搞 AI 离不开 PostgreSQL?

在上一篇我们厘清了数据库家族的分类,指路👉一篇了解数据库家族
按照常理,MySQL 作为关系型数据库的代表,应该和 InfluxDB(时序)、Milvus(向量)井水不犯河水。但 PostgreSQL(简称 PG)是个例外。

在实际的 AI 应用开发中,很多同学会遇到一个灵魂拷问:

“我的 ChatGPT 私有知识库该存在哪?我的用户行为数据怎么跟向量特征联动?”

答案是 PostgreSQL

在这个大模型(LLM)爆发的时代,单纯的关系型数据库显得笨重,而单纯的向量数据库(如 Milvus)又缺乏事务能力。PostgreSQL(简称 PG)凭借其“插件化”的超能力,成为了目前最适合 AI 工程化落地的数据库。它不仅能存传统的订单数据,还能直接存储 AI 生成的向量(Embedding),甚至能处理复杂的知识图谱关系。
主流向量数据库对比
来源:菜鸟教程

二、 PostgreSQL 的核心武器:为 AI 而生的扩展性

PG 之所以特殊,源于它的设计哲学:“核心最小化,接口开放化”。这对于 AI 开发者来说至关重要:

  1. 原生支持向量运算:通过 pgvector 插件,它能直接存储高维向量并进行相似度计算(L2 / Cosine),完美支持 RAG(检索增强生成) 架构。
  2. 统一的数据源:你不需要为了 AI 再维护一套独立的向量库。业务数据(SQL)、监控数据(时序)、特征数据(向量)都在一个库里,无需复杂的数据同步。
  3. 图与向量的结合:未来的 AI 趋势是“图推理 + 向量检索”,PG 可以通过插件同时支持这两种能力。

1. PostgreSQL 的多模架构图

这张图展示了 PG 如何通过插件打破关系型与非关系型的界限:

PostgreSQL 多模扩展架构

三、 实战:PG 的“变身”演示

1. 变身向量数据库 (Vector DB)

场景:为大模型(LLM)搭建本地知识库(RAG)。
操作:安装 pgvector 插件,存储 OpenAI 生成的 Embedding 向量。

-- 1. 启用插件
CREATE EXTENSION IF NOT EXISTS vector;
-- 2. 创建表,直接定义向量字段
CREATE TABLE items (
id BIGSERIAL PRIMARY KEY,
content TEXT,
embedding VECTOR(1536) -- 直接支持1536维向量
);
-- 3. 进行相似度搜索(L2 距离)
SELECT content
FROM items
ORDER BY embedding <-> '[0.1, 0.2, ...]'
LIMIT 5;

点评:无需引入复杂的 Milvus 集群,一条 SQL 搞定 AI 语义搜索。

2. 变身时序数据库 (Time Series DB)

场景:存储服务器监控指标或 IoT 设备数据。
操作:安装 TimescaleDB 插件,自动分表(Hypertable)。

-- 1. 启用插件
CREATE EXTENSION IF NOT EXISTS timescaledb;
-- 2. 创建一个普通表
CREATE TABLE metrics (
time TIMESTAMPTZ NOT NULL,
device_id INT,
cpu_usage DOUBLE PRECISION
);
-- 3. 将其转换为时序超级表
SELECT create_hypertable('metrics', 'time');

点评:保留了完整的 SQL 事务能力,同时拥有了 InfluxDB 的高效存储特性。

3. 变身图数据库 (Graph DB)

场景:分析社交网络关系或金融反欺诈。
操作:安装 Apache AGE 插件,支持 Cypher 查询语言。

-- 使用 Cypher 语法查询朋友的朋友
SELECT * FROM cypher('graph_name', $$
MATCH (u:User)-[:FRIEND]->(f:User)-[:FRIEND]->(fof:User)
WHERE u.name = 'Alice'
RETURN fof.name
)AS(nameagtype);

点评:在同一份数据中,既能用SQL查账单,又能用Cypher查关系,无需同步数据。


四、 对比:专用数据库 vs PostgreSQL

维度 专用数据库 (Milvus / InfluxDB) PostgreSQL (多模插件)
极致性能 极强 (针对单一场景深度优化) (满足绝大多数业务需求)
运维成本 (需要维护多个异构系统) 极低 (只需维护一套 PG 集群)
事务一致性 弱 (通常不支持跨表事务) (原生支持 ACID)
适用规模 超大规模 (PB级数据、亿级QPS) 中小至大型 (TB级数据、千万级QPS)

五、 总结与选型建议

PostgreSQL 是“全能型中场”,专用数据库是“顶级前锋”。

  • 初创公司 / 中型项目:首选 PostgreSQL。
    • 理由:你可以用一套数据库搞定所有需求(业务数据+监控+AI搜索),极大降低技术栈复杂度和运维成本。
  • 超大规模巨头:PG + 专用数据库混合架构。
    • 理由:核心交易用 PG(保稳定),海量向量搜索用 Milvus(拼性能),海量时序日志用 InfluxDB(省存储)。

一句话总结:PostgreSQL 让关系型数据库在 NoSQL 和 AI 时代不仅没有落伍,反而成为了打通数据孤岛的最强粘合剂。


系列完结。通过这两篇笔记,希望能帮你建立起从宏观分类到具体选型的完整数据库知识体系。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐