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

神话破灭!AI 复刻人类顶级数据库,4.6万测试全过,却被一条SQL打回原形!

0
分享至

“如果不确定该选什么数据库,先用 PostgreSQL 准没错。”


PostgreSQL 源于 1986 年加州大学伯克利分校的 POSTGRES 项目,历经近四十年的迭代,因其极致的可靠性、数据完整性、超强扩展性以及对 SQL 标准的高度合规而享誉业界,被誉为“世界上最先进的开源关系型数据库”。

时间来到2026年,AI 编程能力越来越强,一个管理过 PB 级数据的 PostgreSQL 集群的数据库专家Michael Malis,产生了一个大胆的想法:


PostgreSQL 已经发展了几十年,历史包袱越来越重。为什么不借助大模型,把它重新设计一遍?

这件事情不容易,只精通数据库不行,于是他找了一个有 AI 背景的朋友 Jason Seibel, 两人合作,准备大干一场。


经过 3 个月的折腾、4 次大版本迭代、烧掉 10 万美元的 API 费用后,他们终于推出了 pgrust :一个用Rust 重写的 PostgreSQL。

pgrust 发布的成绩单堪称神迹:


  • 完全兼容:基于 PostgreSQL 18.3,甚至可以直接挂载现有的 Postgres 18.3 数据目录启动!

  • 满分通关:100% 通过了 PostgreSQL 官方回归测试套件(46,000+ 个测试),连极难搞定的事务隔离测试也全过!

  • 性能狂飙:在 OLTP 事务型负载下比原版快 50%;在 OLAP 分析型查询下,性能直接飙升 300 倍!


这些数据看起来太厉害了,所以一旦发布,立刻就在HackerNews上掀起了热烈讨论。


AI 真的这么强了吗? 都能写“真正”的数据库了吗?

很快,一位数据库领域的大神出手了。

Andreas Seltenreich 是 SQLsmith 的作者。


SQLsmith 是 PostgreSQL 社区非常著名的 SQL 模糊测试工具。

它不像普通测试那样执行固定 SQL,而是像一个疯狂的机器人:不断随机生成各种复杂、诡异、人类几乎不会手写的 SQL,然后丢给数据库执行。

目的只有一个:拷打数据库,尽量把它搞崩溃。

就在 pyrust 发布后不久,Andreas 开始测试它,仅用一条SQL,就把pyrust打回了原形:

SELECT numrange_subdiff(1,1);

在 PostgreSQL 中正常返回 0

但是pyrust 直接返回:Segmentation fault !进程访问了非法内存,被操作系统强制终止。

这件事情有点儿讽刺,因为 Rust 最大的卖点之一,就是内存安全。

结果一个“以 Rust 内存安全为核心卖点”的数据库,在处理 C 版本 PostgreSQL 可以正常处理的 SQL 时,却发生了内存崩溃。

当然,这不是Rust的问题,这是重写的问题。

0 1

四次“盖新房”

我们来看看 pyrust 是怎么创造出来的, Michael Malis 和 Jason Seibel 的 10 万美元是怎么花掉的。


1.第一次尝试:拿着说明书盖新房

方法:把PostGreSQL按功能划分,让 AI 为每个子系统进行设计、开发。

刚开始进展非常惊人,很快达到 96% 的 回归测试率。

然而,Rust版本抽象出的数据模型与原版 PostgreSQL C 语言的模型不一致,当推进到最复杂的 Query Planner(查询规划器,约 5 万行核心逻辑) 时,这种隐性矛盾彻底爆发。

拿着一个说明书盖新房,外观功能都一样,但内部墙体管线和老宅不兼容,装不下老宅的中央供暖主机(Planner),砸墙重建成本过高,放弃。

花费:~1600$

第二次尝试:全量机械翻译

方法:用c2rust这个工具,把PostgreSQL C源码直接转为Rust。

结果非常震撼,两天生成了530 万行 Rust,测试100% 通过,甚至PostgreSQL 扩展也能兼容!

但是代码完全不可维护,转译出来的 530 万行代码中,所有变量和函数参数基本都是 *mut 或 *const 裸指针,并且必须包裹在 unsafe 块中。

把 C 语言里的潜在风险,换了一种方式搬到了 Rust。

相当于把老宅整体搬过来,试图原位把木头一根一根换成钢筋。结果一动其中一根关键木头(裸指针),整座房子就因为承重依赖全塌了。

花费:成本可忽略

第三次尝试:重新设计

方法:建立一个全新的干净代码库,仅把 c2rust 转译出的代码和 C 源码作为 AI 的“参考蓝本”。

把 Postgres 拆成 ~1000 个 Rust Crate,让 AI 逐个 Crate 重新用纯正的 Safe Rust 从零编写。

构建了AI 技能与动态工作流,让 AI 组团(数十/上百个 Agent 并发)去分工编写、审计和修复各个 Crate。

但是不同的 AI Agent 在独立重构不同 Crate 时,对同一个 C 数据类型的翻译完全发散了!

相当于看着老宅图纸,在旁边一块砖一块砖盖全新的钢筋混凝土新房。

费用:~50000 $

第四次尝试:加入严格审计

方法:采用了“缝合点优先”策略(把致命隐患消灭在萌芽状态),把前三次尝试产生的所有代码、架构经验,以及一本详尽的技术债日志全部喂给 AI。

与此同时,大幅升级了自动化审计规则,专门让 Agent 巡检“缝合点类型是否发散”、“代码是否符合 Rust idiomatic 规范”。

依然是让上百个施工队(Dynamic Workflows)同时盖全新的钢筋混凝土大楼,但这次旁边配备了极度严苛且精密的施工监理(Audit Skill)。

费用:~50000 $

0 2

AI为什么不行?

这四次尝试,最终达成了文章开头描述的效果,听起来非常厉害,非常震撼。

人类花了30年才搞成的事情,AI 用10万美元,3个月就搞定了。

但是,“通过 100% 的官方回归测试”与“具备工业级数据库的可靠性”之间,隔着一条难以跨越的鸿沟。

Andreas 的测试正好说明了这一点,除了那个Segmentation Fault之外,Andreas还发现了好几个其他问题,例如MERGE 语句内部错误、 查询优化器内部状态异常、二进制数据输入没有完整验证等

这些问题说明:把 PostgreSQL 翻译成 Rust,并不等于重新获得 PostgreSQL 30年的可靠性。

数据库太复杂了,并且运行在极其复杂的硬件、内存和并发环境下,那 46,000 个测试,能保证主流路径能跑通,但根本无法穷尽复杂的死角。

过去30年的bug修复、测试经验、社区反馈、边界案例等宝贵的知识并没有完全包括在其中。

可能有人说,如果回归测试非常完善,包含了各个犄角旮旯的东西,而pyrsut通过了这些所有的测试,是不是就可以和postgresql媲美了?

我觉得很难,一方面是数据库功能太多,很难穷尽;

另一方面有很多东西回归测试难以覆盖,比如性能、内存占用、长时间稳定性、升级兼容性等。

写这篇文章的时候,我想起之前写过的一篇文章:《》,里面讨论的是 Linux 内核维护者面临的问题。

两个故事其实很像,Linux 内核也好,PostgreSQL 也好,它们真正珍贵的东西,并不仅仅是代码。

几十年时间里,无数 Bug 修复、失败经验、线上事故、工程取舍、知识沉淀...... 这些东西隐藏在代码背后。

AI 可以快速阅读代码,可以生成代码,甚至可以完成令人震惊的大规模重构。

但是,它还无法生成几十年的工程经验。

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

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.

相关推荐
热点推荐
CHINA GT发生重大撞车起火事故,“救援人员因害怕,放下灭火器后逃离”,对手弃赛冲入火海救人

CHINA GT发生重大撞车起火事故,“救援人员因害怕,放下灭火器后逃离”,对手弃赛冲入火海救人

澎湃新闻
2026-09-06 16:54:03
你无意间撞见过啥大秘密?网友:我也撞见过我闺蜜妈妈的那啥

你无意间撞见过啥大秘密?网友:我也撞见过我闺蜜妈妈的那啥

解读热点事件
2026-09-05 00:15:12
周末突发!千亿龙头,副总裁离任!涉嫌严重违纪违法被查

周末突发!千亿龙头,副总裁离任!涉嫌严重违纪违法被查

证券时报
2026-09-06 17:41:11
落后127分!张雪机车基本无缘总冠军 与杜卡迪争亚 雅马哈优势大

落后127分!张雪机车基本无缘总冠军 与杜卡迪争亚 雅马哈优势大

念洲
2026-09-06 20:01:44
周慧敏深夜悲痛发文:9月3日晚,女星周慧敏更新了社交账号

周慧敏深夜悲痛发文:9月3日晚,女星周慧敏更新了社交账号

东方不败然多多
2026-09-06 08:19:23
41岁拿388万底薪加盟费城,詹姆斯不敢退役的真相是3.6亿债务压身

41岁拿388万底薪加盟费城,詹姆斯不敢退役的真相是3.6亿债务压身

圆梦的小老头
2026-09-06 09:53:20
印度一大哥脚趾肿痛,医生说要截肢。女婿说先别切,第二天带他来中国,结果医生只说了三个字,全场愣住

印度一大哥脚趾肿痛,医生说要截肢。女婿说先别切,第二天带他来中国,结果医生只说了三个字,全场愣住

LULU生活家
2026-09-06 18:05:04
北京交通大学研究生因金价下跌在闲鱼卖黄金,线下交易所得12.4万刚到账所有账户被冻结!湖南警方:资金涉诈骗案件,北京警方:无犯罪事实

北京交通大学研究生因金价下跌在闲鱼卖黄金,线下交易所得12.4万刚到账所有账户被冻结!湖南警方:资金涉诈骗案件,北京警方:无犯罪事实

台州交通广播
2026-09-06 10:24:38
净胜9分险胜!女篮世界杯D组大乱,中国女篮输球就回家

净胜9分险胜!女篮世界杯D组大乱,中国女篮输球就回家

野渡舟山人
2026-09-06 13:58:36
百万吃播网红“莹莹”去世,仅24岁,知情人曝原因,长期大油大盐

百万吃播网红“莹莹”去世,仅24岁,知情人曝原因,长期大油大盐

裕丰娱间说
2026-09-06 18:18:40
尼泊尔泥石流再现生命奇迹!灾后第11天,64岁老妇人获救,泥石流当天她连同四层楼房被冲出50米远,被找到时家人正为她举办葬礼

尼泊尔泥石流再现生命奇迹!灾后第11天,64岁老妇人获救,泥石流当天她连同四层楼房被冲出50米远,被找到时家人正为她举办葬礼

每日经济新闻
2026-09-06 19:05:25
炸裂!孙宇晨聊天记录曝光,越来越疯狂!

炸裂!孙宇晨聊天记录曝光,越来越疯狂!

财经要参
2026-09-06 19:00:03
女篮世界杯8强晋级形势!法国锁定美国稳了:中国队却无缘直通了?

女篮世界杯8强晋级形势!法国锁定美国稳了:中国队却无缘直通了?

篮球快餐车
2026-09-06 17:10:00
广州图书馆人满为患!大批失业者假装上班,专家痛批:脱不下孔乙己的长衫

广州图书馆人满为患!大批失业者假装上班,专家痛批:脱不下孔乙己的长衫

火山詩话
2026-09-06 15:08:53
中国女篮74-70捷克!认清3个事实,登上小组榜首,世界杯出线稳了

中国女篮74-70捷克!认清3个事实,登上小组榜首,世界杯出线稳了

侃球熊弟
2026-09-06 22:27:02
24GB+1TB!新机官宣:9月10日,正式发布

24GB+1TB!新机官宣:9月10日,正式发布

科技堡垒
2026-09-06 11:40:33
武大风波持续发酵:原配完整身份曝光,付某被扒凤凰男底色,离岗失联细节坐实

武大风波持续发酵:原配完整身份曝光,付某被扒凤凰男底色,离岗失联细节坐实

老猫观点
2026-09-06 07:04:00
白眼狼啊!舅舅4万资助外甥上大学,毕业要每月500,该男子发帖直言不想给,评论区瞬间炸锅

白眼狼啊!舅舅4万资助外甥上大学,毕业要每月500,该男子发帖直言不想给,评论区瞬间炸锅

火山詩话
2026-09-06 13:26:46
大瓜?网传梁宏达也移民了,将在9月15日顺利离境

大瓜?网传梁宏达也移民了,将在9月15日顺利离境

小徐讲八卦
2026-09-06 13:06:15
董事长周晓萍两次道歉!“00后”把“最佳雇主”告到了欧盟,契约就是契约,跟忍不忍没关系

董事长周晓萍两次道歉!“00后”把“最佳雇主”告到了欧盟,契约就是契约,跟忍不忍没关系

中国能源网
2026-09-06 10:45:07
2026-09-06 23:47:00
码农翻身 incentive-icons
码农翻身
有趣且硬核的技术文章
306文章数 670关注度
往期回顾 全部

科技要闻

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

头条要闻

CHINA GT发生重大撞车起火事故 救援人员因为害怕逃离

头条要闻

CHINA GT发生重大撞车起火事故 救援人员因为害怕逃离

体育要闻

3.9秒绝平!杨舒予18+5成女篮救世主

娱乐要闻

杨紫获白玉兰影后!爸爸:累了就回家

财经要闻

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

汽车要闻

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

态度原创

本地
家居
亲子
时尚
数码

本地新闻

扒完小作文,富豪们私藏的度假胜地有多绝

家居要闻

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

亲子要闻

工程车小故事:淘气的小警车

金秋最流行的鞋子,“红色”更时髦!

数码要闻

网购诈骗方式升级:新套路让人防不胜防!近万元RTX 5080变保温杯

无障碍浏览 进入关怀版