网易首页 > 网易号 > 正文 申请入驻

把 Agent 的状态放进数据库

0
分享至

一年前,我写过一篇文章叫《》。当时是为了解决 Odoo 社区的一个需求:将文件与 PostgreSQL 数据库一起做 PITR,回滚到指定时间点。

方案运行得还不错。它用纯软件的方式,实现了原本需要昂贵 CDP 专用硬件才能实现的功能 —— 文件系统与数据库一起回滚到任意时间点。性能也行,对于 Odoo、Dify 这类应用绰绰有余。

但最近我发现,这个方案吸引了不少意想不到的用户。他们不是来做 ERP 的,而是来存 AI Agent 状态的。

做法其实很简单:通过 PGFS,把 PG 数据库挂载成一个本地目录。读写这个目录,实际上就是在读写远程的数据库。然后把 AI Agent 的工作目录、配置文件、记忆数据全都放进去。

这让我意识到,PGFS 这个东西,可能比我最初想象的要有用得多。至少我知道,一家做 OpenClaw 商业发行版的公司,已经在用 PGFS 方案作为底层记忆共享机制了。

Agent 到底需不需要数据库?

在聊怎么做之前,先说说 “Why”。这是个被反复争论的问题。我的朋友蒋老板就经常跟我 Argue:AI Agent 不需要数据库,用个 SQLite 就行。

对于 To C 的本地单机单 Agent 场景,他说得也许没错。一个人用一个 Claude Code,状态就放在 .claude/ 目录下,Git 管好代码,没什么问题。在这种场景下拿 PG 来存储状态,有点拿着锤子找钉子的感觉。

但是,一旦场景稍微复杂一点,数据库就是不可避免的。 正如图灵奖得主、PG

什么叫"稍微复杂一点"?

多 Agent 协作。 你开始用并行的 Sub-Agents 来分工:一个负责写代码、一个负责写测试、一个负责审查。它们之间需要沟通任务状态、共享上下文。用 Markdown 文件做任务队列?能跑,但很脆弱。

从单人到团队。 你一个人 Vibe Coding 的时候无所谓,但当团队里有三五个人,每个人都有自己的 Agent 在干活,就需要一个地方来协调。当出现跨设备、跨个体、跨组织协作的时候,数据库就要比笔记本上的目录方便多了。

To B 场景。 企业级应用天然需要集中存储、审计、权限控制。你需要 CDP 能力,随时回滚到任意时间点,需要灵活地快照、分叉、共享,处理好并发争用与数据一致性。

To C 的终极形态。 现在你的 Agent 是跑在一台机器上,独占这个机器的环境。但如果你真的想实现类似 Jarvis 那样的愿景 —— Agent 应该运行在你所有的设备上,提供统一的使用体验 —— 那么这些 Agent 必然需要一个共享的记忆。

当复杂度开始升高,你早晚会开始使用数据库来解决这些问题。除非你准备在文件系统上重新发明一个蹩脚的数据库。

那么,数据库到底能给 AI Agent 提供什么独特的价值?

我认为有两个杀手锏。

杀手锏一:时光机

第一个,是时间点恢复(Point-in-Time Recovery, PITR)。

在现有的 AI Agent 工作流里,如果 Agent 把事情搞砸了,是很难办的。特别是当 Agent 完全依赖文件系统和 Git 来管理状态时 —— 你是个纯代码开发者,又构建了良好的 Git 工作流,能及时 commit 和 push,那还好说。但现实是,很多状态并不在 Git 里:Agent 的配置文件、中间产出、临时数据、工作记忆……这些东西一旦被误操作,就回不来了。

Claude 误删代码库的案例已经出现了,更不用说那些没有被版本管理的数据。

你可能会说:我可以用 Git 或者 ZFS 做快照。可以,但有两个问题:第一,快照是离散的时间点,你只能回到"上一个快照",而不能回到"3 分 27 秒之前"那个精确的时刻 —— 比如误删除发生的前一秒。第二,你得显式地管理这些快照:什么时候做、保留多久、怎么清理。这本身就是运维负担。

以前,想实现"回到任意时间点"这种能力,只有两条路:要么买昂贵的 CDP 硬件,要么自己实现一套复杂的日志系统。

PGFS 给了第三条路:把文件系统的所有写入都变成数据库的写入,借助 PostgreSQL 的 WAL 日志,天然获得 PITR 能力。

具体来说:当你往 PGFS 挂载的目录写文件时,数据实际上写进了 PG 的 jfs_blob 表里。文件操作和数据库操作共用同一套 WAL 日志。当你做 PITR 回滚时,数据库和文件系统会同时回到指定的时间点 —— 精确到每个操作的微秒时间戳。


这意味着你的 Agent 拥有了一台时光机:不管它做了什么,你都可以把一切恢复到任意一个时间点。 代码、数据、配置、记忆,全部一起回滚,没有任何不一致。

这还带来了一个额外的能力:瞬间克隆与分支。因为代码状态本质上也是数据库里的数据,你可以基于某个时间点创建一个新的数据库实例,里面的文件状态和数据库状态完全一致。就像 Git 的 branch,但连数据库里的业务数据也一起分支了。让不同的 Agent 在不同的"分支"上工作,互不干扰。搞砸了?回滚。想试试另一条路?Fork 一个新环境。这是纯文件系统方案做不到的。

对于 AI Agent 来说,这个能力的价值怎么强调都不过分。它让你有了一个"无限撤销"的安全网 —— 或者说,一个可以随时存档/读档的游戏存档系统。

杀手锏二:共享大脑

如果你只有一个人、一个 Agent,那确实不需要共享。但是当你开始用并行的 Agents、Sub-Agents 时,就需要一个高效沟通的地方。

目前的单机模式是怎么做的?在项目目录里写一个 Markdown 文件当 To-Do List,手动派发任务,让 Sub-Agent 去执行。一个人的时候勉强能跑。但如果用一张数据库表来记录任务,所有 Agent 都从里面取活、更新状态、上报结果 —— 这就是一个天然的任务调度中心。不需要文件锁,不需要轮询,数据库的 MVCC 和 NOTIFY/LISTEN 天然解决并发问题。

更重要的是:文件目录很难简单地共享给其他人。 你可以用 FTP、NFS,但配置麻烦,安全性也是问题。

而 PGFS 的共享方式非常优雅。设想这样一个架构:

1.你有一台云服务器,上面运行着一套 Pigsty(包含 PostgreSQL)。2.在上面创建一个 PGFS 挂载点,比如 /fs。3.所有项目代码、Agent 配置、共享记忆,都放在这个目录下。4.团队里的任何一个人,只要知道数据库连接串,就可以用一行命令把这个目录挂载到自己的本地机器。


一行连接串,一行挂载命令 —— 就可以让多个人、多台机器、多个 Agent 共享同一个工作空间。

我现在自己的工作方式就是这样:一个基于 Pigsty 的 Monorepo,所有项目都在里面。云服务器上可以直接用 Claude Code 干活,同时把云端的 PGFS 挂载到本地,实现本地读写。多平台、多实例、无缝同步。

可以每个人负责一个子项目,在一个整体 Repo 里面协作。

再往远了想:如果你真的想要一个 Jarvis 风格的数字管家,它肯定需要一个集中的地方来存储状态。你不能让每个 Agent 都有自己独立的记忆 —— 否则你得到的不是一个助理,而是一群互不知情的虾兵蟹将。

多个 Agent 共享记忆,最自然的方式就是建一个中枢:云端一台虚拟机,跑一套 Pigsty,通过一个 URL 把数据库挂载到本地。每一个 Agent 都可以读写共享状态,同时保留各自的私有记忆。


当然除了上面两点之外,还有很多其他的好处,ACID,高可用,可观测性,备份恢复,复制 / CDC 工具,这里就不一一展开了。

怎么做:Pigsty 的 JUICE 模块

说了这么多"为什么",来说说"怎么做"。底层能力一年前就有了。当时我已经把 JuiceFS 打包到了 Pigsty 里。在 Pigsty 4.0 版本中,正式发布了 JUICE 模块,把整个流程做成了声明式配置,一键部署。

什么是 JuiceFS?

JuiceFS 是一款高性能的 POSIX 兼容分布式文件系统。架构很简洁:一个元数据引擎 + 一个数据存储后端。元数据引擎管理文件目录树和属性,数据存储后端存放文件内容。

PGFS 的核心设计就是:JuiceFS 支持用 PostgreSQL 同时作为元数据引擎和数据存储后端。 所有的文件元数据和文件内容都存在 PG 里,共享同一套 WAL 日志。(TimescaleDB 最近出了一个 TigerFS,提供类似功能,但成熟度偏低。我也已经打包整合了。)

声明式一键部署

在 Pigsty 的 vibe 配置模板中,就已经提供了一个配置好的例子。只要你在一台全新的 Linux 服务器上执行这几行命令,那么你在 /fs 这个目录上就已经拥有一个预先定义并挂载好的 PGFS 了。

curl -fsSL https://repo.pigsty.io/get | bash; cd ~/pigsty
./configure -c vibe -g # 使用 vibe 模式,生成随机密码!
./deploy.yml # 部署基础设施和 PostgreSQL
./juice.yml # 部署 JuiceFS 文件系统

你对这个默认定义的 /fs 目录下的所有文件读写都会落在数据库里,而你也可以将这个数据库同时挂载到其他目录,甚至是多个不同电脑上的本地目录,实现目录共享。而这一切都是通过一段简短配置定义的:

juice_instances:
jfs:
path: /fs # 挂载到本地的 /fs 目录
meta: postgres://dbuser_meta:DBUser.Meta@10.10.10.10:5432/meta
data: --storage postgres --bucket 10.10.10.10:5432/meta \
--access-key dbuser_meta --secret-key DBUser.Meta
port: 9567 # Prometheus 监控指标端口

就这么简单。系统会自动完成 JuiceFS 的格式化、挂载、开机自启配置和监控集成。

你也可以轻松依葫芦画瓢定义多个 JuiceFS 实例,或者把同一个实例共享挂载到多台不同的机器上面去


app:
hosts:
10.10.10.11: {}
10.10.10.12: {}
vars:
juice_instances: {....}

最妙的是,不仅仅是这些 Linux 服务器可以共享挂载,对于 macOS 和 Windows 用户,你也可以把云端的 PGFS 挂载到本地:

juicefs mount "postgres://dbuser_meta:DBUser.Meta@10.10.10.10:5432/meta" ~/work -d

一行连接串就是你的"共享云盘"入口。 比 NFS、FTP 简单太多。我最近准备弄一个一键配置脚本,在 macOS 和 Windows 上一次新配置好 Juicefs,只需要一键填一个 URL,就可以立即把所有的事情配置好。

当然,对于老司机来说,一看就知道怎么回事了,你只需要把 Claude Code,Codex,OpenClaw 在家目录下的 dot 目录移动到这个挂载上来的共享工作目录然后软链接回原位,你的 Agent 状态就存储到数据库中了!

而且最棒的是,性能也还不错。和原生文件系统比,PGFS 的吞吐量肯定差一些。但实测数据还不错,文件读写大概在百MB/s 上下的吞吐量,而且 JuiceFS 也有本地缓存机制,对于 Odoo,Coding Agent 之类的场景肯定是绰绰有余了。

当然,最棒的特性莫过于当 Agent 把你的环境搞砸了,你可以使用 pitr 一键回滚到任意时间点的黑魔法:

总结

回到最初的问题:AI Agent 到底需不需要数据库?

对于单人单机的简单场景,确实不一定需要,SQLite 也可能够了。但 Agent 的世界正在变得越来越复杂 —— 多 Agent 协作、团队共享、状态持久化、容错回滚。这些需求一旦出现,数据库就不是可选项,而是基础设施。

PGFS 通过 Pigsty 的 JUICE 模块,给 AI Agent 提供了两个杀手锏能力:

1.时光机:基于 PITR 的任意时间点回滚,代码、数据、配置、记忆一起恢复。还能瞬间克隆和分支,让 Agent 在不同的"存档"上并行实验。2.共享大脑:多 Agent、多人、多机器共享同一个工作空间和记忆。一行连接串,一行挂载命令。

这两个能力,是纯文件系统方案做不到的。以前实现这些需要几十万的 CDP 硬件。现在?一台云服务器,一套开源软件,四行命令。一分钱都不要。

这才是数据库在 AI 时代的正确打开方式。

数据库老司机

点一个关注 ⭐️,精彩不迷路

对 PostgreSQL, Pigsty,下云 感兴趣的朋友

欢迎加入 PGSQL x Pigsty 交流群 QQ 619377403


特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
央国企最大的问题:戏子当道!

央国企最大的问题:戏子当道!

黯泉
2026-04-18 09:20:48
太卷了!河北一幼儿园小班名单走红,网友:全班都是"大文豪"

太卷了!河北一幼儿园小班名单走红,网友:全班都是"大文豪"

观察鉴娱
2026-09-01 15:32:34
3-2!37岁阿森纳传奇西甲1射2传+一条龙绝杀 4轮造6球助升班马不败

3-2!37岁阿森纳传奇西甲1射2传+一条龙绝杀 4轮造6球助升班马不败

我爱英超
2026-09-06 05:36:55
男子坚持在APP上看视频赚钱,一年总收益136元,连续12天尝试提现失败:看了几千分钟视频、上万条广告,简直浪费时间;官方:已立案调查

男子坚持在APP上看视频赚钱,一年总收益136元,连续12天尝试提现失败:看了几千分钟视频、上万条广告,简直浪费时间;官方:已立案调查

天下泉城
2026-09-05 09:54:13
细思极恐!《自然》114万人超大型研究:DNA居然知道你最后住哪里?

细思极恐!《自然》114万人超大型研究:DNA居然知道你最后住哪里?

徐德文科学频道
2026-09-05 22:47:41
浙江“葫芦娃爷爷”把7个葫芦全剪了,比之前说的“30天后”计划提前:晚上奶奶头晕病发,游客量陡增,担心安全问题

浙江“葫芦娃爷爷”把7个葫芦全剪了,比之前说的“30天后”计划提前:晚上奶奶头晕病发,游客量陡增,担心安全问题

上观新闻
2026-09-06 07:31:06
“长的这么漂亮,还是带家去吧!”高一女生不想住校,因颜值逃过一劫!

“长的这么漂亮,还是带家去吧!”高一女生不想住校,因颜值逃过一劫!

林林先生
2026-09-04 11:10:12
景甜被除名,震惊全网!

景甜被除名,震惊全网!

财经三分钟pro
2026-09-03 16:39:54
从月销4223台跌到367台!尊界销量暴跌90%!真要歇菜了吗?

从月销4223台跌到367台!尊界销量暴跌90%!真要歇菜了吗?

玩车专家1
2026-09-05 16:28:53
阿尔卡拉斯自曝换衣原因:不想再露了

阿尔卡拉斯自曝换衣原因:不想再露了

甜度百分百21
2026-09-05 12:41:22
女性长期使用情趣用品,身体可能出现哪些不适?不少人缺乏认知

女性长期使用情趣用品,身体可能出现哪些不适?不少人缺乏认知

看世界的人
2026-08-07 09:22:50
外阴腋窝全溃烂,辗转多科难确诊!医生:这个病别只盯着消化道!

外阴腋窝全溃烂,辗转多科难确诊!医生:这个病别只盯着消化道!

医学界妇产科频道
2026-09-05 20:19:28
扔掉12斤水果,赔掉10万元,中国式自我感动有多可怕!

扔掉12斤水果,赔掉10万元,中国式自我感动有多可怕!

夜深爱杂谈
2026-09-05 21:28:52
太过分了!凤姐下场连发帖子撕景甜,评容貌、咒断子绝孙,引发网友怒骂

太过分了!凤姐下场连发帖子撕景甜,评容貌、咒断子绝孙,引发网友怒骂

火山詩话
2026-09-04 06:34:14
两性心理学:女人主动跟你说例假来了,过来人都懂,她其实是在暗示你这两句话,不要再傻乎乎地听不明白

两性心理学:女人主动跟你说例假来了,过来人都懂,她其实是在暗示你这两句话,不要再傻乎乎地听不明白

心理观察局
2026-09-06 06:41:37
年薪4160万!火箭7子薪资排名,阿门新合同小胜申京!1人已掉队

年薪4160万!火箭7子薪资排名,阿门新合同小胜申京!1人已掉队

熊哥爱篮球
2026-09-06 10:04:41
曹德旺当年反对女儿嫁给厦大高材生,理由只有一句:他太优秀了!14年后,这个女婿拿到的不是聘书,而是福耀的一份重任

曹德旺当年反对女儿嫁给厦大高材生,理由只有一句:他太优秀了!14年后,这个女婿拿到的不是聘书,而是福耀的一份重任

背包旅行
2026-09-03 15:48:21
女子985毕业年薪15万男友妈看不上,让他娶公务员,6年后再相逢

女子985毕业年薪15万男友妈看不上,让他娶公务员,6年后再相逢

黑猫故事所
2025-04-26 16:36:31
钢琴家鲍蕙荞与庄则栋离婚后,做了一件至今让她后悔的事

钢琴家鲍蕙荞与庄则栋离婚后,做了一件至今让她后悔的事

精彩背后的故事
2026-09-05 23:32:42
63-54险胜!女篮世界杯D组变天,头号宿敌露绽,中国队再输恐出局

63-54险胜!女篮世界杯D组变天,头号宿敌露绽,中国队再输恐出局

带你领略快乐真谛
2026-09-06 00:48:44
2026-09-06 11:19:00
老冯云数 incentive-icons
老冯云数
数据库老司机,云计算泥石流,PostgreSQL大法师
232文章数 62关注度
往期回顾 全部

科技要闻

DeepSeek被曝将采购16万颗华为昇腾950DT

头条要闻

牛弹琴:日本急了 高市亲自抗议用日语、俄语各说一遍

头条要闻

牛弹琴:日本急了 高市亲自抗议用日语、俄语各说一遍

体育要闻

本西蒙斯加盟国王,不管怎样,回来就好

娱乐要闻

低调富养!郭富城两女儿入读香港名校

财经要闻

亏损高达200亿,昔日彩电霸主走下巅峰!

汽车要闻

带升降立标MPV 岚图梦想家9预售价42.99万起

态度原创

家居
房产
手机
游戏
数码

家居要闻

2026建博会(广州) 公装联探展交流活动

房产要闻

突发重磅!海口出台楼市新政!

手机要闻

CASETiFY联合漫威推出蜘蛛侠联名iPhone外设,国行259元起

GTA6地图空前庞大!数百个房屋可进 大量信息曝光

数码要闻

绿联发布家庭AIoT中枢HomeAgent,至高可选Jetson Thor T5000

无障碍浏览 进入关怀版