图灵奖得主劝年轻人:别学计算机DeepTech深科技
Mike Stonebraker 是 2014 年图灵奖得主,他对数据库系统的奠基性贡献几乎写进了所有相关教科书。从 Ingres、Postgres,到 Vertica、VoltDB、SciDB,再到最近的 DBOS,每一个都是真正成就了诸多商业公司的工程系统。
最近他做客 Meta 资深工程师 Ryan Peterman 的播客,与其进行了一个小时的对话。他说话直接,不太客气。聊到 Larry Ellison 时,他说那人“把现在时和将来时混为一谈,本质上是在对客户撒谎”;聊到 Google 当年力推的 MapReduce 和最终一致性,他说“那不是 Google 唯一一件愚蠢的事”;聊到亚马逊同时维护着十五个数据库系统,他说“多了十二个”;
(来源:Youtube)
他也表达了对如今 AI 的看法。在他看来,现在多数 agentic AI 还停在“只读”,给一个客户算个分、出个预测,并不真的去改数据库里的字段。一旦 agent 开始做读写,比如两个 agent 协作完成一笔转账,问题就立刻落回数据库的老地盘:事务、一致性、原子性。
说到大模型写 SQL,他甩出来几个数字。在 Spider、Bird 这些公开 text-to-SQL 基准上,最好的模型已经能拿到 85% 准确率,看起来差一步就能上生产。但 Stonebraker 团队用四个真实生产数据仓库做了一个新基准 Beaver,在这个基准上,大模型的准确率是 0;加上 RAG 也只到 10%;把 join 条件直接喂给模型,最多到 35%。同样的任务,一个懂 schema 的 SQL 工程师能做到 90% 以上。所以他的结论是:这项技术,至少在可见的未来,还不够格进生产。
谈及对年轻人的建议,他说如今已不太确定是否要推荐十八岁的小孩去主修计算机科学,“医疗和建筑业是稳妥的选择”。
下面是这次对话的完整内容:
在伯克利,被一个懂门道的人带进门
Peterman:我第一件想聊的事是 Postgres 是怎么起步的。我想从更早的地方开始,你最初是怎么进入数据库这个领域的?
CODASYL 那套问题一堆。层级太低,调试起来要命。它还有个性质:一旦你的 schema(数据结构定义)有任何变化,基本就得把所有东西扔了重来,因为它整个根扎在物理层面。而 Codd 那套东西完全说得通。所以 Gene 说,咱们就来造一个这样的玩意儿吧,下一步显然该试这个方向。1972 年他开始造 Ingres(INteractive GRaphics REtrieval System)的雏形,那时候我刚到伯克利当助理教授。
Peterman:Ingres 是怎么从一个原型走到真的能用的?
Stonebraker:美国大学里的助理教授一般有五年的考核期,要么熬到终身教职,要么走人。Ingres 就是我拿到终身教职的敲门砖,1976 年我拿到了。
唯一的出路是开公司。1980 年我们拿到了那个年代意义上的风险投资,成立了 Ingres 公司,把 Ingres 移植到 DEC 公司(数字设备公司,当年的小型机巨头)的 VMS 上,一个真正的操作系统、一家真正能支持产品的公司。这就是商业化旅程的起点。
Larry Ellison 把现在时和将来时混为一谈
Peterman:我看到 Ingres 当时是和 Larry Ellison 的 Oracle 在竞争。从能力上看 Ingres 明显更好,他们怎么还能跟你们争?
Peterman:有意思。我之前采访过一个在 Sun Microsystems 干过的人,他对 Larry Ellison 的看法也差不多,觉得这人有点不光彩。看来是个共识。我还在某处看到你说过,Oracle 收购 MySQL 的时候,所有人都怕了,转去用 Postgres。
Stonebraker:那就是 Postgres 取代 MySQL、成为首选开源关系型数据库的起点。
一个债券交易员的电话,催生了 Postgres
Peterman:你造了 Ingres,里面有大量技术创新,让它比对手强。但最后它还是没了,你做了 Postgres。Ingres 没做、而 Postgres 做了的那件关键的事是什么?
一种数据库不可能解决所有问题
Peterman:你做过一个演讲,后面也有篇论文,讲的是“一种数据库通吃所有场景”是错的,你想要的是针对具体需求的数据库方案。今天市面上你看到哪些数据库还在试图通吃?


