国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁 > 網(wǎng)易號(hào) > 正文 申請(qǐng)入駐

罵谷歌干蠢事、炮轟甲骨文、AI在真實(shí)數(shù)據(jù)庫測(cè)試得分為0!83歲圖靈獎(jiǎng)數(shù)據(jù)庫教父的硅谷“狂人日記”

0
分享至

編譯 | 王啟隆

文章來源:AI 科技大本營(ID:rgznai100)

過去這些年,數(shù)據(jù)庫世界里最流行的幾套說法,幾乎都能在邁克·斯通布雷克這里撞上一堵墻。

你跟他說大模型正在重寫一切,他會(huì)告訴你,他們拿四個(gè)真實(shí)生產(chǎn)級(jí)數(shù)據(jù)倉庫測(cè)過,今天最熱的 Text-to-SQL 在自己的基準(zhǔn)上得分是 0。你跟他說 Hadoop 和 MapReduce 曾經(jīng)開啟了一個(gè)新時(shí)代,他會(huì)很不客氣地說,那不過是谷歌干過的一件蠢事。你如果再把他當(dāng)年開發(fā)的 Postgres 講成一套可以吞掉所有場(chǎng)景的終極答案,他也不會(huì)順著這個(gè)行業(yè)共識(shí)往下說。


這不是一場(chǎng)溫和的數(shù)據(jù)庫懷舊訪談。

這是 Ryan Peterman 播客和圖靈獎(jiǎng)得主、Postgres 奠基者 Mike Stonebraker 的一場(chǎng)長談。兩個(gè)人一路從 Ingres 怎么在 1970 年代起步,聊到 Oracle 當(dāng)年怎么賣貨,聊到 Postgres 為什么要把類型系統(tǒng)做成可擴(kuò)展,聊到為什么查詢優(yōu)化器直到今天仍然是數(shù)據(jù)庫里最難啃的骨頭,也聊到他現(xiàn)在最關(guān)心的兩件事:

大模型到底能不能真的把自然語言變成生產(chǎn)環(huán)境里的 SQL

Agent 真開始讀寫世界之后,數(shù)據(jù)庫系統(tǒng)會(huì)不會(huì)重新回到舞臺(tái)中央?


這位八十多歲的數(shù)據(jù)庫老兵,他罵的很多東西,今天恰好又以新面貌回來了。大家重新迷上通用平臺(tái),迷上一個(gè)系統(tǒng)吃掉一切,迷上只要模型夠強(qiáng)就能抹平結(jié)構(gòu)化世界的復(fù)雜度,迷上把正確性往后放、先把速度和規(guī)模做出來。Stonebraker 基本是在把這些流行信念一條條掀開,說數(shù)據(jù)庫世界從來不是這樣運(yùn)轉(zhuǎn)的。

要點(diǎn)速覽

  • MapReduce 是谷歌干過的蠢事之一。谷歌后來連 eventual consistency 這條路也走錯(cuò)了, 最后還是回到了 Spanner 這種傳統(tǒng)事務(wù)系統(tǒng) 。

  • Postgres 是今天最好的默認(rèn)答案,但只是默認(rèn)答案。社區(qū)大、免費(fèi)、好招人、通用能力強(qiáng),這些都是真的??梢坏┻M(jìn)入百萬級(jí)事務(wù)、PB 級(jí)倉庫、多節(jié)點(diǎn)和列存這些高端場(chǎng)景, 通用系統(tǒng)就不再夠用了 。

  • Postgres 從 Ingres 走出來,核心不是再造一個(gè)關(guān)系型數(shù)據(jù)庫,而是要做一個(gè)可擴(kuò)展的類型系統(tǒng),讓數(shù)據(jù)庫能真正處理 GIS、金融債券時(shí)間這類標(biāo)準(zhǔn)類型之外的世界。

  • 數(shù)據(jù)庫最難的部分還是查詢優(yōu)化器。幾十年過去,最難的地方?jīng)]變。

  • 對(duì)聰明工程師和普通工程師的區(qū)分方式:不看套路,不看包裝,直接追問你到底做了什么、錯(cuò)誤怎么處理、為什么這樣實(shí)現(xiàn), 深問幾輪,水平就藏不住了。

  • 把應(yīng)用狀態(tài)更深地放回?cái)?shù)據(jù)庫,讓工作流天然擁有持久化、事務(wù)、故障轉(zhuǎn)移這些特性。 因?yàn)槲磥泶罅孔x寫型 Agent,最后都會(huì)重新撞上數(shù)據(jù)庫問題。

  • 如果今天重新開始,他都不確定還會(huì)不會(huì)建議 18 歲的人主修計(jì)算機(jī)科學(xué)。


“甲骨文靠對(duì)客戶撒謊贏了市場(chǎng)”

主持人:今天我們請(qǐng)到的是邁克·斯通布雷克(Mike Stonebraker)。他是圖靈獎(jiǎng)得主,因?qū)?Postgres 等數(shù)據(jù)庫系統(tǒng)做出的開創(chuàng)性貢獻(xiàn)而聞名。首先我想聊聊 Postgres 是如何起步的。為此,我想從最開始講起。你是如何進(jìn)入數(shù)據(jù)庫系統(tǒng)構(gòu)建這個(gè)領(lǐng)域的?

Mike Stonebraker:畢業(yè)那年,我有幸被伯克利大學(xué)聘用。當(dāng)時(shí)很明顯的一點(diǎn)是,我必須尋找新的研究方向——我讀博期間做的那些東西,在當(dāng)時(shí)和現(xiàn)在看來都沒什么前途。如果能被一位深諳門道的導(dǎo)師收于麾下,你就能贏在起跑線上。所以,目前依然健在且精神矍鑠的尤金·王(Gene Wong)把我?guī)У搅怂拈T下,他說:“咱們一起搞點(diǎn)什么吧?!?/p>

那是 1971 年,也就是泰德·科德(Ted Codd)在《美國計(jì)算機(jī)學(xué)會(huì)通訊》(CACM)上發(fā)表那篇開創(chuàng)性論文的第二年。尤金·王說:“咱們來看看數(shù)據(jù)庫這塊的東西吧?!?當(dāng)時(shí)市面上的競爭者是一個(gè)叫 CODASYL 的提案,你可能太年輕都沒聽說過。那是一個(gè)底層的、像意大利面一樣糾纏不清的網(wǎng)絡(luò)模型,你需要通過順藤摸瓜找指針來執(zhí)行查詢。另一個(gè)替代方案是 IBM 提出的名為 IMS 的層次化模型,這東西現(xiàn)在還有。它是層次化數(shù)據(jù),也就是把數(shù)據(jù)組織成樹狀結(jié)構(gòu)。

即使在當(dāng)時(shí),IBM 也意識(shí)到樹狀結(jié)構(gòu)不夠通用,無法解決很多人的問題。所以他們東拼西湊,硬是把它改造成了一個(gè)受限的網(wǎng)絡(luò)結(jié)構(gòu)。明眼人一看就知道那是個(gè)粗劣的補(bǔ)丁。

而 CODASYL 提案也有各種致命缺陷。除了過于底層且極難調(diào)試之外,它還有一個(gè)毛?。阂坏┠悻F(xiàn)在的所謂“數(shù)據(jù)模式(Schema)”發(fā)生任何變化,你基本上就得把所有東西推倒重來,因?yàn)樗耆缓杆涝诹宋锢韺用嫔?。相比之下,泰德·科德的理論簡直無懈可擊。

所以尤金說:“咱們也造一個(gè)這樣的系統(tǒng)吧。這顯然是下一步該嘗試的方向。” 于是,1972 年,當(dāng)我還是一名伯克利助理教授的時(shí)候,我們開始構(gòu)建 Ingres。如你所知,作為助理教授,你有五年的時(shí)間來證明自己的實(shí)力,要么被解雇,要么拿到終身教職。所以,Ingres 就是我拿到終身教職的敲門磚,這在 1976 年如愿以償。這就是一切的起點(diǎn)。

接下來的發(fā)展又是機(jī)緣巧合。在當(dāng)時(shí),很多人做出來的原型系統(tǒng)都充滿了“學(xué)生氣”,意思是代碼雖然能跑,但如果交給別人,別人根本跑不起來。所以我們花了前一半的精力做出了一個(gè)能跑的雛形,然后不知怎么地,我們又投入了另一半的精力把它打磨到真正穩(wěn)定運(yùn)轉(zhuǎn)的程度。所以加州大學(xué)版本的 Ingres 是真正能用的。在接下來的幾年里,大約有一百多所大學(xué)開始運(yùn)行它,因?yàn)?Unix 當(dāng)時(shí)正在崛起,而這是一個(gè)能在 Unix 上運(yùn)行的免費(fèi)數(shù)據(jù)庫系統(tǒng)。它在學(xué)術(shù)界非常受歡迎。

我們開始在伯克利接待大量的訪客,他們會(huì)說:“哇,這玩意兒看起來真酷。你們運(yùn)行過的最大的 Ingres 應(yīng)用程序是什么?” 我們不得不尷尬地回答:“沒多大?!?這一點(diǎn)在亞利桑那州立大學(xué)考慮用 Ingres 來管理他們?nèi)?4 萬名學(xué)生的學(xué)籍?dāng)?shù)據(jù)時(shí),被展現(xiàn)得淋漓盡致。他們可以克服從貝爾實(shí)驗(yàn)室獲取不受支持的操作系統(tǒng)的困難,也可以克服運(yùn)行我們這幫伯克利家伙搞出來的不受支持的數(shù)據(jù)庫系統(tǒng)的困難。但是,當(dāng)他們發(fā)現(xiàn) Unix 上沒有 COBOL 語言支持時(shí),這個(gè)項(xiàng)目徹底泡湯了,因?yàn)樗麄兺耆且粋€(gè)依賴 COBOL 的團(tuán)隊(duì)。所以,不受支持的操作系統(tǒng)、不受支持的數(shù)據(jù)庫系統(tǒng),再加上沒有 COBOL,注定了我們要被邊緣化。

很顯然,擺脫這種困境的唯一出路就是創(chuàng)辦一家公司。所以 1980 年,我們拿到了當(dāng)時(shí)那種形式的風(fēng)險(xiǎn)投資,創(chuàng)立了 Ingres 公司,把 Ingres 移植到了 DEC 的 VMS 上——那是一個(gè)真正的操作系統(tǒng)。我們擁有了一家能為 Ingres 提供支持的真正公司,這也是我們商業(yè)之旅的開端。

主持人:我看到 Ingres 當(dāng)時(shí)在和拉里·埃里森(Larry Ellison)的 Oracle 競爭。我也看到 Ingres 顯然比他們提供的產(chǎn)品更好,但你們依然在某種程度上處于競爭狀態(tài)。他們是怎么競爭的?

Mike Stonebraker:拉里·埃里森是個(gè)絕佳的推銷員。在當(dāng)時(shí),他能把“現(xiàn)在時(shí)”和“將來時(shí)”混為一談,說白了就是對(duì)客戶撒謊。他會(huì)把根本不能用的東西發(fā)貨,然后讓第一批客戶幫他調(diào)試。我認(rèn)為他使用了一些極其見不得光的商業(yè)手段。對(duì)客戶撒謊,我認(rèn)為是違背良知的。

舉個(gè)例子,數(shù)據(jù)庫里有個(gè)東西叫“參照完整性(referential integrity)”,意思是如果你解雇了一名員工,而他是某個(gè)部門的最后一個(gè)人,你是想把這個(gè)部門一起刪掉,還是讓它變成一個(gè)幽靈部門?就是這類問題。Ingres 公司實(shí)現(xiàn)了參照完整性。而 Oracle 公司只是寫了兩頁手冊(cè),上面印著大家都認(rèn)可的“參照完整性定義”,然后在最底下用小字寫著:“尚未實(shí)現(xiàn)”。

主持人:很有意思。我曾采訪過一位在太陽微系統(tǒng)(Sun Microsystems)工作過的人,他對(duì)拉里·埃里森也有類似的評(píng)價(jià),覺得他有點(diǎn)不太光彩??磥磉@是個(gè)共識(shí)。我也在其他地方看到過你的說法,當(dāng) Oracle 收購 MySQL 時(shí),大家都感到恐慌,紛紛轉(zhuǎn)向了 Postgres。這也是 Postgres 取代 MySQL 成為首選開源關(guān)系型數(shù)據(jù)庫的契機(jī)。

你創(chuàng)造了 Ingres,里面包含了很多技術(shù)創(chuàng)新,使它優(yōu)于當(dāng)時(shí)的現(xiàn)有產(chǎn)品,但最終它還是退出了歷史舞臺(tái),你又開發(fā)了 Postgres。Ingres 有什么是做不到的,而 Postgres 做到了?

Mike Stonebraker:在最開始指導(dǎo)我們的大方向,其實(shí)源于學(xué)術(shù)版 Ingres 的初衷:我們要為隔壁的 Pravin Varaiya 教授想要的一個(gè)地理信息系統(tǒng)(GIS)提供支持。為了支持 GIS 系統(tǒng),你需要點(diǎn)、線、多邊形、線組這類數(shù)據(jù)。很顯然 Ingres 做不到,因?yàn)槲覀冊(cè)?Ingres 里放入的數(shù)據(jù)類型都是標(biāo)準(zhǔn)的:整數(shù)、浮點(diǎn)數(shù)、文本、字符串。你無法在這些基礎(chǔ)之上高效地支持 GIS 數(shù)據(jù)類型。所以,作為 GIS 系統(tǒng)的底層,學(xué)術(shù)版的 Ingres 是一個(gè)徹底的失敗。這件事一直留在我們腦海里。

另外發(fā)生的一件事,雖然在時(shí)間順序上有點(diǎn)錯(cuò)位,但能很好地說明問題。大概在 1985 年,ANSI 剛剛提出了關(guān)系型數(shù)據(jù)庫的日期和時(shí)間標(biāo)準(zhǔn)。商業(yè)版 Ingres 使用標(biāo)準(zhǔn)的公歷實(shí)現(xiàn)了日期和時(shí)間。當(dāng)時(shí)我既參與商業(yè)版 Ingres 的工作,同時(shí)也是加州大學(xué)的教授。我接到一個(gè) Ingres 客戶的電話,他說:“你們把日期和時(shí)間實(shí)現(xiàn)錯(cuò)了?!?我一頭霧水:“啊?我們實(shí)現(xiàn)了公歷,你可以做減法。除了二月和閏年,每個(gè)月有 30 或 31 天。所以日期的減法運(yùn)算完全符合你的預(yù)期啊?!?/p>

但他告訴我,在他的特定領(lǐng)域里,他要的根本不是這個(gè)。他在處理債券金融工具,無論一個(gè)月有多長,他的金融債券在每個(gè)月產(chǎn)生的利息都是一樣的。他有買入債券的日期和賣出債券的日期。他想做一個(gè)減法,乘以票面利率,然后說:“這就是我們付給你的利息。” 但當(dāng)然,在他那里的減法定義是:3 月 15 日減 2 月 15 日等于 30 天,因?yàn)檫@就是他那個(gè)日歷的定義。

所以他不得不把兩個(gè)日期提取到用戶代碼中,在代碼里做減法,然后再把結(jié)果放回去,這讓他的效率降低了兩到三倍。他問:“為什么我不能直接用我想要的邏輯,重載你們的減法定義呢?” 當(dāng)然,在 Ingres 里,這都是寫死在底層代碼里的。

問題在于,這是一個(gè)你需要“債券時(shí)間”的場(chǎng)景,就像你需要點(diǎn)、線和多邊形一樣。Postgres 在架構(gòu)之初就設(shè)計(jì)了一個(gè)可擴(kuò)展的類型系統(tǒng)。你可以擁有任何你想要的數(shù)據(jù)類型,而且效率極高。這就是 Postgres 的核心要義:它具備極高的靈活性。在商業(yè)數(shù)據(jù)處理中,大多數(shù)人對(duì)標(biāo)準(zhǔn)數(shù)據(jù)類型很滿意,但關(guān)系型數(shù)據(jù)庫開始滲透到各種其他領(lǐng)域。所謂的抽象數(shù)據(jù)類型或存儲(chǔ)過程具有極大的適用性,所以這成了 Postgres 最大的殺手锏。

我們還支持了當(dāng)時(shí)人工智能領(lǐng)域的家伙們想要的“繼承”功能。我們甚至支持了“時(shí)間旅行(歷史數(shù)據(jù)查詢)”。不過那部分的實(shí)現(xiàn)簡直爛透了,后來就被移除了。總之,Postgres 里有大量非常巧妙的設(shè)計(jì)。


“我受不了不夠聰明的人”

主持人:你提到你想招募非凡的軟件工程師,而且我記得你以前說過,你找這樣的人毫不費(fèi)力。在招聘時(shí),你是如何辨別出他們就是那些非凡之才的?

Mike Stonebraker:通常這很明顯。我對(duì)事情的難度有很好的直覺。如果他們?cè)趯W(xué)校里完成的工作量,是我認(rèn)為合理預(yù)期工作量的三倍,那他們就是不可思議的天才。

主持人:反過來說,你有一句很有意思的話,我把它記下來了。你說:“我受不了那些不夠聰明的人。和他們交流太費(fèi)勁了。” 你是如何辨別那些不夠聰明的人的?

Mike Stonebraker:這其實(shí)非常簡單。你和他們聊一聊,很快就能試探出他們到底聰不聰明?!澳愕拇T士論文寫的是什么?你具體做了什么?它是怎么運(yùn)作的?你是如何處理錯(cuò)誤情況的?你開了多少個(gè)進(jìn)程?你為什么不用線程?” 你只需要問他們深度的技術(shù)問題。

主持人:你做過一次演講,好像背后還有一篇論文,提出了這樣一個(gè)觀點(diǎn):萬金油式(one-size-fits-all)的數(shù)據(jù)庫系統(tǒng)并不是最優(yōu)解,試圖適應(yīng)一切的系統(tǒng)實(shí)際上什么都適應(yīng)不好。你真正需要的是針對(duì)特定需求量身定制的數(shù)據(jù)庫解決方案。你認(rèn)為當(dāng)今市面上有哪些數(shù)據(jù)庫產(chǎn)品是這種“萬金油”?

Mike Stonebraker:在 2004 年我寫那篇論文的時(shí)候,我們有一個(gè)學(xué)術(shù)項(xiàng)目,后來演變成了 Streambase。一個(gè)流處理引擎看起來和關(guān)系型數(shù)據(jù)庫毫無相似之處。我們還有了用于數(shù)據(jù)倉庫的列式存儲(chǔ)的初步構(gòu)想,后來被 Vertica 發(fā)揚(yáng)光大,它看起來和行式存儲(chǔ)也完全不同。所以這里有三個(gè)截然不同的實(shí)現(xiàn),它們彼此毫無相似之處,而且在各自的領(lǐng)域,它們都比其他系統(tǒng)快上一個(gè)數(shù)量級(jí)。很明顯,通過這三個(gè)例子可以看出,當(dāng)你運(yùn)行一個(gè)并非為你特定場(chǎng)景架構(gòu)的數(shù)據(jù)庫系統(tǒng)時(shí),你就要犧牲一個(gè)數(shù)量級(jí)的性能。

我認(rèn)為這在今天依然成立。ClickHouse 是一個(gè)列存數(shù)據(jù)庫。Pinecone 在基于文本的向量處理上,比用戶自定義類型要快得多。我認(rèn)為情況依然如此,而且在多個(gè)底層實(shí)現(xiàn)之上套用一個(gè)通用的解析器,并沒有什么難度。只是 Postgres 至今選擇不這么做。他們沒有實(shí)現(xiàn)列式存儲(chǔ),所以我認(rèn)為他們?cè)诖笮蛿?shù)據(jù)倉庫領(lǐng)域缺乏競爭力。他們也沒有多節(jié)點(diǎn)支持。同樣,對(duì)于擁有大型數(shù)據(jù)倉庫的人來說,這是入場(chǎng)券。所以我認(rèn)為這個(gè)觀點(diǎn)今天依然像過去一樣正確。

不過有一點(diǎn)也是事實(shí):如果你想快速起步,你遇到了一個(gè)數(shù)據(jù)庫問題,答案就是選擇 Postgres。它有龐大的編程社區(qū),各種數(shù)據(jù)類型的實(shí)現(xiàn),它是免費(fèi)的,而且你很容易招到懂 Postgres 的人來推進(jìn)工作。作為滿足最低通用需求的選項(xiàng),它是極好的。只要你不是想實(shí)現(xiàn)每秒一百萬次的事務(wù),它就完全沒問題。只要你不是想支撐一個(gè) PB 級(jí)的數(shù)據(jù)倉庫,它就能運(yùn)轉(zhuǎn)良好。在低端場(chǎng)景,它絕對(duì)是正確的“萬金油”。但在高端場(chǎng)景,這套就行不通了。

主持人:GPU 會(huì)為優(yōu)化數(shù)據(jù)庫提供一些新的機(jī)會(huì)嗎?

Mike Stonebraker:也許會(huì),但我認(rèn)為巨大的挑戰(zhàn)在于 GPU 是 SIMD(單指令多數(shù)據(jù)流)架構(gòu),而這簡直是索引的死穴。只要索引是正確的解決方案,GPU 可能就不是個(gè)好主意。此外,你必須在架構(gòu)上確保來自存儲(chǔ)的帶寬不會(huì)成為瓶頸。如果 GPU 只是 CPU 的一個(gè)附加組件,那么連接 GPU 和 CPU 的總線往往就會(huì)成為瓶頸。

主持人:你能解釋一下為什么在使用 SIMD 時(shí),索引的效果會(huì)大打折扣嗎?

Mike Stonebraker:假設(shè)我在查找瑞恩的薪水,而且我有一個(gè) B 樹索引。你走到 B 樹的根節(jié)點(diǎn),找到包含瑞恩所在區(qū)間的分割點(diǎn)。你順著指針往下走。這絕對(duì)是一次內(nèi)存訪問。然后你再重復(fù)這個(gè)過程,大概要重復(fù)三四次。這個(gè)過程是無法很好地并行化的。所以答案就是:索引無法很好地并行化。


谷歌當(dāng)年干的蠢事,不止 MapReduce 一件

主持人:你提到了 B 樹。當(dāng)你們最初實(shí)現(xiàn)第一版 Ingres 時(shí),所有這些都是你們手寫的嗎?因?yàn)槲蚁胂螽?dāng)時(shí)大概沒有什么現(xiàn)成的 B 樹代碼庫之類的東西。

Mike Stonebraker:是的,最初版本的 Ingres 全都是從零開始手寫的。

主持人:那個(gè)實(shí)現(xiàn)過程中最難的部分是什么?

Mike Stonebraker: 查詢優(yōu)化器。

主持人:為什么它那么難?

Mike Stonebraker:它非常棘手。它在算法上實(shí)在太難了。如果你去問任何一位資深的數(shù)據(jù)庫程序員最難的部分是什么,他們至今依然會(huì)說是優(yōu)化器。

主持人:MapReduce 大概在 2000 年代初問世,它席卷了整個(gè)數(shù)據(jù)領(lǐng)域。人們對(duì)它印象深刻,覺得谷歌真的知道自己在干什么,這是有史以來最棒的發(fā)明。但當(dāng)我查閱文獻(xiàn)以及你當(dāng)時(shí)的看法時(shí),似乎你非常不認(rèn)同。你為什么如此不看好 MapReduce?

Mike Stonebraker:我認(rèn)為當(dāng)時(shí)有很多不太懂行的人說:“谷歌真的很聰明。他們肯定知道自己在干什么,所以他們說什么我們就做什么?!?

于是他們開始搞 Hadoop。但是 Hadoop 的效率低得令人發(fā)指。當(dāng)時(shí),大衛(wèi)·德威特(David DeWitt)和其他參與了我們 2011 年論文的人,我們非常了解分布式數(shù)據(jù)庫,并且明白用一個(gè)分布式數(shù)據(jù)庫系統(tǒng)就能把 Hadoop 打得落花流水,這基本上就是那篇 2011 年論文的核心觀點(diǎn)。當(dāng)然,事實(shí)也確實(shí)如此。

但谷歌干的蠢事可不止這一件。谷歌當(dāng)時(shí)還認(rèn)為,“最終一致性(eventual consistency)”是處理并發(fā)控制的正確方式。在那個(gè)時(shí)期,這是谷歌高層定下的基調(diào)。而所有的數(shù)據(jù)庫專家都說:“你們簡直瘋了?!?因?yàn)樗荒芙鉀Q一種非常特定類型的問題,而那種問題在實(shí)際應(yīng)用中極少出現(xiàn)。

主持人:他們?yōu)槭裁匆非笞罱K一致性?

Mike Stonebraker:他們的設(shè)想是,你在東海岸有一個(gè)數(shù)據(jù)庫,在西海岸也有一個(gè)數(shù)據(jù)庫,它們互為副本。你希望它們保持一致。如果你說:“我要執(zhí)行一個(gè)事務(wù),我要把西海岸倉庫里的小商品數(shù)量減一”,那么在提交這個(gè)事務(wù)之前,你需要去更新東海岸的倉庫。這需要花費(fèi)一次消息往返的代價(jià)來更新它。然后為了確保萬無一失,還需要另一次往返消息來確認(rèn)兩邊都正確地提交了。執(zhí)行分布式提交是非常昂貴的,現(xiàn)在依然如此。

所以他們的想法是,你在西海岸執(zhí)行更新,把小商品減一,然后你只是異步發(fā)送一條消息,且不放在事務(wù)里,這樣“最終”東海岸的倉庫也會(huì)減一。與此同時(shí),如果你在東海岸,你把食品減一。你發(fā)送一條異步消息。最終,西海岸會(huì)收到它,最終一切都會(huì)塵埃落定。

如果你的系統(tǒng)允許庫存出現(xiàn)負(fù)數(shù),那么當(dāng)東海岸和西海岸的人同時(shí)賣出最后一件商品時(shí),最終倉庫的狀態(tài)就會(huì)變成負(fù)一,然后就會(huì)有人收不到他們的商品。如果你像亞馬遜那樣,允許標(biāo)明“通常在 24 小時(shí)內(nèi)發(fā)貨”,那也許你可以超賣,但大多數(shù)企業(yè)做不到這一點(diǎn)。所以最終一致性根本行不通

我們剛才花了很長時(shí)間聊參照完整性。在銷售系統(tǒng)中,參照完整性就是一個(gè)完整性約束:庫存必須大于負(fù)一。而最終一致性在這里就行不通了。谷歌的杰夫·迪恩(Jeff Dean)最終想明白了這一點(diǎn),所以當(dāng)他們開發(fā) Spanner 時(shí),Spanner 用回了傳統(tǒng)的事務(wù)系統(tǒng),谷歌也徹底放棄了最終一致性,徹底放棄了 MapReduce。

主持人:所以這本質(zhì)上是用正確性來換取性能。也就是性能與數(shù)據(jù)完整性之間的權(quán)衡。如果你不在乎你的數(shù)據(jù),那你才愿意承受糟糕的結(jié)果。在谷歌做這些你認(rèn)為錯(cuò)得離譜的事情時(shí),你和他們的團(tuán)隊(duì)交流過嗎?

Mike Stonebraker:在 2011 年那篇論文發(fā)表之前,我們和他們談過,提議說:“我們?yōu)槭裁床缓献鞲泓c(diǎn)東西呢?” 但他們不感興趣。所以他們拒絕了。

主持人:你有沒有看到其他大型科技公司的數(shù)據(jù)庫或數(shù)據(jù)庫解決方案中,也有你強(qiáng)烈不認(rèn)同的例子?比如亞馬遜或 Facebook。

Mike Stonebraker:大概三年前我在亞馬遜做過一次演講,我告訴了他們所有我認(rèn)為他們做錯(cuò)的地方。我認(rèn)為亞馬遜的問題在于他們同時(shí)在支持 15 種不同的數(shù)據(jù)庫系統(tǒng),這大概多出了 12 種。他們有自己的企業(yè)文化,我說:“你們支持的數(shù)據(jù)庫系統(tǒng)太多了?!?但到目前為止,他們還沒有選擇淘汰其中的任何一個(gè)。

主持人:為什么你覺得 15 種應(yīng)該縮減到 3 種?

Mike Stonebraker:他們?cè)谥С忠粋€(gè)基于圖的數(shù)據(jù)庫系統(tǒng),而業(yè)界早就達(dá)成共識(shí),圖數(shù)據(jù)庫系統(tǒng)幾乎從來都不是性能最優(yōu)的選擇。如果你喜歡那種處理節(jié)點(diǎn)和邊緣的用戶界面,沒問題。你可以在關(guān)系型數(shù)據(jù)庫系統(tǒng)之上加一層,給你提供那種用戶模型。

他們的大多數(shù)數(shù)據(jù)庫系統(tǒng),總能找到另一個(gè)在特定領(lǐng)域做得比它更好的系統(tǒng)。我的答案是,如果一個(gè)數(shù)據(jù)庫系統(tǒng)在一個(gè)足夠大的市場(chǎng)里沒有性能優(yōu)勢(shì),無法證明其維護(hù)成本的合理性,你就應(yīng)該把它淘汰掉。

主持人:你從學(xué)術(shù)界對(duì)工業(yè)界產(chǎn)生了深遠(yuǎn)的影響,我有一個(gè)想法:為什么不直接在工業(yè)界工作呢?為什么你更傾向于留在學(xué)術(shù)界,以你現(xiàn)在的方式施加影響,而不是直接去 AWS 之類的公司謀個(gè)差事,做個(gè)極其杰出的工程師?

Mike Stonebraker:因?yàn)槟且馕吨銜?huì)有個(gè)老板。會(huì)有公司規(guī)章制度,限制你發(fā)表論文,限制你去參加會(huì)議發(fā)表演講,限制你去刺探競爭對(duì)手那些他們不愿向同行透露的底牌。但最主要的是,我真的非常喜歡置身于初創(chuàng)公司中。在商業(yè)版的 Postgres 被 Informix 收購后,我曾在 Informix 兼職工作過,那是一家有 2000 人的公司,我感覺自己根本發(fā)揮不了什么作用,因?yàn)槟抢锕倭胖髁x嚴(yán)重,總裁想要什么,他就能得到什么。我覺得我天生不適合搞辦公室政治。我做不好那個(gè),而且我很難跟那些我認(rèn)為愚蠢的人打交道。所以在大公司里,我會(huì)遇到很多麻煩。


對(duì)剛 Linux 的 DBOS

主持人:我想聊聊 DBOS。我覺得這是一個(gè)非常有趣的技術(shù)模型。你能解釋一下 DBOS 是什么嗎?

Mike Stonebraker:我們大概在 2019 年、2020 年左右啟動(dòng)了這個(gè)學(xué)術(shù)項(xiàng)目。當(dāng)時(shí)的核心背景是,斯坦福大學(xué)的教職員工、也是 Databricks 的創(chuàng)始人之一,同時(shí)也是 Spark 最初創(chuàng)造者的馬泰·扎哈里亞(Matei Zaharia)提出了一些痛點(diǎn)。他說,當(dāng)時(shí) Databricks 基本上是在云端運(yùn)行人們的 Spark 任務(wù)。他說在任何給定時(shí)間,他們可能要調(diào)度一百萬個(gè) Spark 任務(wù)。所以必須編寫一個(gè)調(diào)度器,來決定接下來運(yùn)行誰,而且要達(dá)到百萬級(jí)的規(guī)模。他說他們嘗試了操作系統(tǒng)專家編寫的所有調(diào)度器,但都無法支撐這種規(guī)模。

于是,我們把所有的調(diào)度數(shù)據(jù)都放進(jìn)了一個(gè) Postgres 數(shù)據(jù)庫里,基本上就是用一個(gè) Postgres 應(yīng)用程序來做調(diào)度。然后我們突然恍然大悟:操作系統(tǒng)里絕大多數(shù)的工作,本質(zhì)上都是在大規(guī)模地管理數(shù)據(jù),而你本就應(yīng)該用數(shù)據(jù)庫技術(shù)來做這件事。那么,我們?yōu)槭裁床桓纱?strong>用一個(gè)數(shù)據(jù)庫系統(tǒng)來替換掉 Linux 至少上半部分的功能呢?

這就是那個(gè)學(xué)術(shù)項(xiàng)目的核心思想。我們?cè)?2020 年代初在伯克利和斯坦福研究了這個(gè)項(xiàng)目,而且非常成功。它顯然是行得通的。在這個(gè)過程中,斯坦福的團(tuán)隊(duì)為 JavaScript 編寫了一個(gè)擴(kuò)展程序,因?yàn)槟阈枰粋€(gè)編程環(huán)境來與你的底層實(shí)現(xiàn)進(jìn)行交互。如果你在做一種編程語言,并且運(yùn)行在一個(gè)本質(zhì)上是數(shù)據(jù)庫的操作系統(tǒng)之上,那么最顯而易見的做法,就是把所有的狀態(tài)都存在數(shù)據(jù)庫里。他們正是這么做的。所以我們擁有了創(chuàng)新的編程語言模型,以及創(chuàng)新的操作系統(tǒng)模型。

當(dāng)然,接下來的想法就是,我們能創(chuàng)辦一家公司嗎?我們?nèi)ズ惋L(fēng)險(xiǎn)投資人談,他們異口同聲地說:“想取代 Linux,你是在做夢(mèng)。不過,你們那個(gè)編程語言的東西倒是很巧妙?!?我們擁有的,相當(dāng)于 JavaScript 的擴(kuò)展,它能讓任何程序都具備數(shù)據(jù)庫系統(tǒng)的所有優(yōu)秀特性。數(shù)據(jù)是持久化的。你可以使用事務(wù)。如果系統(tǒng)崩潰了,它會(huì)自動(dòng)故障轉(zhuǎn)移。全都是這些絕妙的特性。

所以我們?cè)?2023 年拿到了融資,成立了公司,這就是 DBOS 公司。我們決定用這個(gè)名字,因?yàn)樗恢倍际沁@個(gè)項(xiàng)目的名字,但我們實(shí)際上做的是編程語言的生意。目前,DBOS 擁有 TypeScript 版本、Java 版本、Go 版本和 Python 版本,它們幾乎是無縫對(duì)接的。它跑起來就像是普通的程序一樣。

在云端世界里,把你的應(yīng)用程序構(gòu)建成工作流是絕對(duì)的大勢(shì)所趨。所以我們決定,我們要支持一個(gè)工作流系統(tǒng),就這么簡單。DBOS 在這四種語言中支持的工作流,其各個(gè)步驟、各個(gè)微應(yīng)用(不管你怎么稱呼它們),都是具備事務(wù)性的。工作流是持久化的,所以一旦你完成了一個(gè)步驟,它就不會(huì)被遺忘。很明顯,如果有市場(chǎng)需求,我們可以讓工作流具備原子性,這意味著整個(gè)工作流要么全部完成,要么就像從未發(fā)生過一樣。它擁有非常棒的特性,而且比競爭對(duì)手快得多,也容易使用得多。

公司目前正在這個(gè)領(lǐng)域進(jìn)行銷售和創(chuàng)新。核心理念是,當(dāng)你把應(yīng)用程序的狀態(tài)放入數(shù)據(jù)庫時(shí),你想讓它持久化,然后你再想辦法讓它跑得快。正像我們之前聊到的,他們的商業(yè)模式非常明確,就是去吸引基層程序員的興趣。所以我們的策略一直是:“告訴我們,基層程序員們,你們需要什么我們還沒有的東西,快速把它做出來,然后說服人們?nèi)L試。” 我們?cè)谖切┫胍x擇最佳方案的其他初創(chuàng)公司方面非常成功,而且我們也開始在大型企業(yè)中取得突破。

這是一個(gè)非常有趣的市場(chǎng),我認(rèn)為目前最關(guān)鍵的一點(diǎn)是,大概有三分之二的客戶在做智能體 AI(agentic AI),這意味著他們有一個(gè)大語言模型,周圍環(huán)繞著一堆提供更多信號(hào)的組件。到目前為止,絕大多數(shù)的智能體 AI 都是只讀的,意思是你想預(yù)測(cè)一下瑞恩會(huì)不會(huì)成為一個(gè)好客戶。它只是運(yùn)行一些數(shù)據(jù),然后生成一個(gè)新結(jié)果交給某人?;旧鲜侵蛔x的,這意味著你并沒有真正去更新瑞恩的信用評(píng)分。

我認(rèn)為這個(gè)領(lǐng)域很快就會(huì)演變?yōu)椋菏褂弥悄荏w來執(zhí)行讀寫應(yīng)用程序,而這將使它們變得非?!皵?shù)據(jù)庫化”。DBOS 非常擅長處理這類事情。舉個(gè)例子,如果你想寫一個(gè)智能體,或者兩個(gè)智能體,把 100 美元從我的賬戶轉(zhuǎn)到你的賬戶。你需要從我的賬戶扣款,在你的賬戶加錢,這兩個(gè)智能體必須同意提交,否則你就得把一切回滾。也就是說,工作流需要具備我所說的原子性,要么全部發(fā)生,要么就像從未發(fā)生過。我認(rèn)為這個(gè)市場(chǎng)的需求會(huì)隨著人們對(duì)讀寫操作的渴望而不斷攀升。我認(rèn)為這對(duì)市場(chǎng)是個(gè)好兆頭,對(duì) DBOS 也是個(gè)好兆頭。

主持人:所以現(xiàn)在市場(chǎng)上提供給應(yīng)用程序開發(fā)者的東西,和最初那個(gè)把操作系統(tǒng)內(nèi)核替換成數(shù)據(jù)庫的研究項(xiàng)目是不一樣的。我明白了。這真的很酷。我從未想象過用一個(gè)數(shù)據(jù)庫來替換操作系統(tǒng)的所有狀態(tài)。這其中的權(quán)衡是什么?

Mike Stonebraker:寫在數(shù)據(jù)庫管理系統(tǒng)(DBMS)之上的文件系統(tǒng),比 Linux 文件系統(tǒng)還要快。調(diào)度引擎與其他調(diào)度引擎相比也毫不遜色。你可以讓一切都具備故障轉(zhuǎn)移能力,所以你不需要做任何額外的工作就能獲得高可用性。答案是,真的沒有任何缺點(diǎn)。

主持人:那為什么 Linux 不吸收這項(xiàng)技術(shù),用它來升級(jí)自己呢?

Mike Stonebraker:你當(dāng)然希望他們會(huì)這么做。換句話說,你應(yīng)該把所有那些設(shè)備驅(qū)動(dòng)之類的雜七雜八的東西留在最底層,因?yàn)檫@類東西很多,也沒人愿意去碰它們,然后用數(shù)據(jù)庫實(shí)現(xiàn)來替換掉其他所有的東西。

主持人:你向 Linux 社區(qū)的人提過這件事嗎?他們通常是什么反應(yīng)?

Mike Stonebraker:當(dāng)年做學(xué)術(shù)項(xiàng)目的時(shí)候,如果我向操作系統(tǒng)專家提到這個(gè),他們會(huì)感到極大的威脅,他們的反應(yīng)是:“這是搞數(shù)據(jù)庫的家伙想來搶地盤。” 我覺得編程語言領(lǐng)域的人也是一樣的反應(yīng):“實(shí)現(xiàn)編程環(huán)境運(yùn)行時(shí)的最佳方式,竟然是使用數(shù)據(jù)庫?!?/p>

主持人:這很有意思。我是說,如果它客觀上是正確的,那它也許終將接管一切。

Mike Stonebraker:畢竟,Java 也花了 10 年時(shí)間才被廣泛接受。我認(rèn)為這需要一個(gè)漫長的時(shí)間周期。


大模型得分 0%?

主持人:我們聊了很多數(shù)據(jù)庫的過去,我很好奇你對(duì)數(shù)據(jù)庫領(lǐng)域未解之謎的看法,以及你認(rèn)為未來會(huì)是什么樣。

Mike Stonebraker:好的。我想談兩件不同的事情。第一件事是,和所有人一樣,三年前我們開始研究大語言模型到底能干什么。我們一直試圖讓現(xiàn)在所謂的 Text-to-SQL(自然語言轉(zhuǎn) SQL)在真實(shí)的數(shù)據(jù)庫中發(fā)揮作用,特別是在真實(shí)的生產(chǎn)級(jí)數(shù)據(jù)倉庫中。

我們?cè)谒膫€(gè)不同的生產(chǎn)級(jí)數(shù)據(jù)倉庫上測(cè)試了這項(xiàng)技術(shù),我們獲取了實(shí)際用戶在系統(tǒng)中運(yùn)行的真實(shí)工作負(fù)載,并讓他們逆向工程出與該查詢序列對(duì)應(yīng)的自然語言文本。所以我們擁有了四個(gè)基準(zhǔn)測(cè)試的文本和 SQL 對(duì)照數(shù)據(jù)。

主持人:當(dāng)你說 Text-to-SQL 時(shí),是指像人類用英語向模型發(fā)出提示詞那樣嗎?

Mike Stonebraker:那些文本可能是:“告訴我麻省理工學(xué)院所有年齡超過四歲且獲得過圖靈獎(jiǎng)的教授?!?大語言模型據(jù)說很擅長這個(gè)?,F(xiàn)有的 Text-to-SQL 基準(zhǔn)測(cè)試,有一個(gè)叫 Spider,另一個(gè)叫 BIRD,最頂尖的 LLM 系統(tǒng)在這些基準(zhǔn)測(cè)試上表現(xiàn)相當(dāng)不錯(cuò)。準(zhǔn)確率能達(dá)到 80% 甚至更高。雖然還沒達(dá)到超人類的水平,但也相當(dāng)不錯(cuò)了。你是會(huì)考慮使用它們的。目前的排行榜上大概有 85% 的準(zhǔn)確率,已經(jīng)很接近實(shí)用了。

主持人:你說它也許還沒完全準(zhǔn)備好投入實(shí)際應(yīng)用,但看起來確實(shí)相當(dāng)不錯(cuò)了。

Mike Stonebraker:然而,在我們的基準(zhǔn)測(cè)試?yán)?,大語言模型的得分是 0%。如果你用 RAG(檢索增強(qiáng)生成)和各種技巧來強(qiáng)化它們,準(zhǔn)確率能提升到 10%。如果你在提示詞中直接給出 FROM 子句——換句話說,告訴它所有需要訪問的實(shí)際表名,以及所有需要連接的 JOIN 條件——準(zhǔn)確率能上升到大概 35%。所以,這項(xiàng)技術(shù)的現(xiàn)狀就是,它根本沒有準(zhǔn)備好投入實(shí)際應(yīng)用,而且在很長一段時(shí)間內(nèi)都不會(huì),甚至可能永遠(yuǎn)都不會(huì)。

主持人:區(qū)別到底在哪兒?

Mike Stonebraker:第一,LLM 是在公共語料庫(the pile)上訓(xùn)練出來的。而數(shù)據(jù)倉庫的數(shù)據(jù)并不在那個(gè)語料庫里。有一句老話:如果你以前沒有見過這些數(shù)據(jù)幾次,你根本不可能把它吐出來。這是第一點(diǎn)。

第二,Spider 和 BIRD 測(cè)試?yán)锏?strong>查詢復(fù)雜度,大概也就是 10 到 20 行 SQL 代碼。但在真實(shí)世界的數(shù)據(jù)倉庫里,那是 100 行 SQL 代碼。復(fù)雜度完全不在一個(gè)量級(jí)。

第三,Spider 和 BIRD 里的數(shù)據(jù)模式(Schema)非常干凈。表名是見名知意的。列名是見名知意的,而且沒有重復(fù)。但在數(shù)據(jù)倉庫里,人們到處都在用物化視圖。這意味著存在數(shù)據(jù)冗余,而且列名經(jīng)常是下劃線、Z、大寫字母等等亂七八糟的東西。它們根本不能見名知意。這讓難度大大增加。

最后,他們還有各種極其特殊的數(shù)據(jù)。比如“J-term”在麻省理工學(xué)院是個(gè)很常見的詞。它是指一月份的一個(gè)為期一個(gè)月的學(xué)期。這并非麻省理工獨(dú)有,但也不是很普及。所以,它不在訓(xùn)練語料庫里,包含極其特殊的數(shù)據(jù),查詢并不簡單,而且數(shù)據(jù)模式一團(tuán)糟。這些因素加在一起,讓它根本無法工作。而我所知道的每一個(gè)數(shù)據(jù)倉庫都是這副德行。我認(rèn)為這項(xiàng)技術(shù)目前根本行不通,而且在短期內(nèi)也別指望它能行得通。

主持人:那你該怎么辦?

Mike Stonebraker:首先,我們發(fā)布了我們的基準(zhǔn)測(cè)試。它叫 Beaver,是這四個(gè)真實(shí)數(shù)據(jù)倉庫的匿名化和抽象化版本。如果你覺得自己做 Text-to-SQL 真的很牛,那就來試試真實(shí)的基準(zhǔn)測(cè)試,別玩那些假的。

第二,借用我剛才說的,如果你沒有所有的 JOIN 條件,沒有 FROM 子句,你就徹底完蛋了。更重要的是,如果你不把查詢拆解成更簡單的部分,你也會(huì)完蛋。這對(duì)我來說意味著,你需要給你的檢索系統(tǒng)提供更簡單的組件,其中包括 FROM 子句和 JOIN 條件。這是第一點(diǎn)。

第二,一旦你想同時(shí)與兩個(gè)不同的結(jié)構(gòu)化數(shù)據(jù)庫對(duì)話,比如你的數(shù)據(jù)倉庫和你的 CRM 系統(tǒng),那在我看來,用 LLM 來做結(jié)構(gòu)化數(shù)據(jù)的 JOIN 絕對(duì)是個(gè)餿主意。你最好還是讓它們保持表的形式,然后在 SQL 里做 JOIN。

我們的觀點(diǎn)是,我們正在嘗試把一切都變成表。我們正在和德國慕尼黑市的交通部合作,他們有六個(gè)全職人員專門回答市民的投訴和質(zhì)詢,問題大概是這種:“為什么我家旁邊的十字路口,綠燈時(shí)間短得不夠我走過去?” 各種各樣的問題?!盀槭裁措娷囃?康臅r(shí)間不夠我上車?” “為什么電車一小時(shí)才來一趟?”

他們的數(shù)據(jù)庫里,電車時(shí)刻表是 SQL。紅綠燈時(shí)序是 SQL。十字路口的地圖是 CAD。德國聯(lián)邦關(guān)于這些東西的法規(guī)是文本。慕尼黑市的法規(guī)也是文本。所以你得把 SQL、SQL、CAD、文本和文本連接(JOIN)在一起。我們的觀點(diǎn)是,把它們?nèi)嫁D(zhuǎn)換成 SQL,全變成表,然后用一個(gè)類似查詢優(yōu)化器的東西來做 JOIN。這就是我們正在研究的方向。我想其他人會(huì)有其他的思路,但我認(rèn)為這是一個(gè)極其肥沃的領(lǐng)域,因?yàn)槿藗冋娴姆浅P枰鉀Q這個(gè)問題。這是第一件事。

第二件事,我們之前聊到了智能體 AI(agentic AI)。一旦它涉及到讀寫操作,它就變成了一個(gè)分布式數(shù)據(jù)庫問題,你會(huì)需要原子性、一致性等等所有這些特性。我認(rèn)為這是一個(gè)非常有趣的領(lǐng)域。所以這基本上就是我現(xiàn)在正在研究的東西。

主持人:在那個(gè)目前得分是 0% 的基準(zhǔn)測(cè)試上,人類能拿多少分?比如你找一個(gè)真正懂 SQL 的人,普通人類能得多少分?

Mike Stonebraker:一旦你消除了文本中的歧義,一個(gè)熟悉數(shù)據(jù)模式的資深 SQL 程序員能達(dá)到極高的準(zhǔn)確率。

主持人:好的。大概至少能到 90% 之類的。哇,我真驚訝 LLM 在這種基準(zhǔn)測(cè)試上得分這么低。也許這期節(jié)目播出去之后,某個(gè)在 Anthropic 工作的人會(huì)聯(lián)系你,說:“咱們來試試……”

Mike Stonebraker:我很樂意看看結(jié)果,因?yàn)槿绻闪?,那將是一個(gè)了不起的成功故事。


大模型得分 0%?

主持人:對(duì)于那些想要深入理解數(shù)據(jù)庫,并且正在尋找學(xué)習(xí)資料的人來說,有沒有哪本書是你推薦的頂尖技術(shù)書籍,或者是文獻(xiàn)中的經(jīng)典論文?

Mike Stonebraker:喬·海勒斯坦(Joe Hellerstein)和我出版過一本被稱為“紅皮書”的書,叫《數(shù)據(jù)庫系統(tǒng)讀本》(Readings in Database Systems)。它現(xiàn)在已經(jīng)出版八年了。我覺得它作為八年前的閱讀材料是非常棒的,除此之外,可以去讀讀文獻(xiàn)中那些廣受歡迎的論文。

主持人:如果你能回到剛畢業(yè)的時(shí)候,帶著你今天所知道的一切,你會(huì)給自己什么建議?

Mike Stonebraker:當(dāng)年我剛在伯克利接下那份工作時(shí),我們連想都沒怎么想,就說:“咱們寫個(gè)數(shù)據(jù)庫系統(tǒng)吧?!?我們對(duì)數(shù)據(jù)庫一無所知,對(duì)底層實(shí)現(xiàn)一竅不通。我們也不像比爾·喬伊(Bill Joy,Sun的聯(lián)合創(chuàng)始人)那樣是編程高手。所以,一開始就去做那么瘋狂的事情,真的是挺瘋狂的。但你投入了精力,你讓東西運(yùn)轉(zhuǎn)起來,你在這個(gè)過程中不斷學(xué)習(xí)。所以答案是:跳出框架思考。敢于有瘋狂的想法,并努力去實(shí)現(xiàn)它們。

對(duì)我來說,這根本不是什么顯而易見的事。更好的問題是,如果你今天才剛起步,你會(huì)選擇什么專業(yè)?因?yàn)?strong>我認(rèn)為計(jì)算機(jī)科學(xué)在未來可能不再是一個(gè)朝陽產(chǎn)業(yè)了。我不太確定我還會(huì)不會(huì)建議 18 歲的年輕人們?nèi)ブ餍抻?jì)算機(jī)科學(xué)。我認(rèn)為醫(yī)療保健和建筑行業(yè)是安穩(wěn)的選擇,而其他一切看起來風(fēng)險(xiǎn)都要大得多。

如果你即將拿到博士學(xué)位,正在猶豫該做什么,我覺得事情很簡單。接受你能拿到的最有名望的工作,找一位愿意幫你的導(dǎo)師,然后選一個(gè)不隨波逐流的領(lǐng)域。就像我們做的那個(gè)叫 Rubicon 的項(xiàng)目,絕對(duì)是不隨波逐流的。選一個(gè)逆流而上的方向,然后努力讓它大放異彩。

我和我妻子都曾說過:“追隨你的熱情。錢的問題總會(huì)迎刃而解的。” 其實(shí)我骨子里根本不相信這句話,但我覺得你必須這么告訴你的孩子和孫子們。

主持人:如果你不相信這句話,那你為什么還要這么告訴他們?

Mike Stonebraker:我妻子就是個(gè)很好的例子。她有計(jì)算機(jī)科學(xué)的本科學(xué)位和碩士學(xué)位,但她真正想做的是一名中小學(xué)教師。她的父母說:“你不能去教書,那賺不到足夠的錢?!?我覺得從那以后,她一直都在后悔那個(gè)決定。她對(duì)搞計(jì)算機(jī)科學(xué)并沒有什么熱情;那對(duì)她來說只是個(gè)謀生的手藝。

所以我認(rèn)為,找到你熱愛的事業(yè),你大概率不會(huì)餓死——你可能賺不到大錢,但我認(rèn)為你會(huì)有很大的機(jī)會(huì),比做一份你不熱愛的工作要快樂得多。因?yàn)槲艺J(rèn)識(shí)的很多人,他們僅僅把工作看作是一份工作,認(rèn)為真正的生活是下午 5 點(diǎn)下班后到第二天早上 8 點(diǎn)上班前的那段時(shí)間。我完全不這么想。我真的熱愛我所做的一切。無論我賺不賺錢,這都無所謂。

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。

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.

相關(guān)推薦
熱點(diǎn)推薦
第一集就全裸出鏡,女神新劇破格出演了

第一集就全裸出鏡,女神新劇破格出演了

來看美劇
2026-04-27 16:21:10
真?zhèn)牧?,哈維-西蒙斯在因傷無緣世界杯后清空了個(gè)人社媒

真?zhèn)牧耍S-西蒙斯在因傷無緣世界杯后清空了個(gè)人社媒

懂球帝
2026-04-27 18:48:21
圓明園地下大反轉(zhuǎn),大火燒掉的僅是圓明園的表皮

圓明園地下大反轉(zhuǎn),大火燒掉的僅是圓明園的表皮

混沌錄
2026-04-24 21:02:11
002779、603360,被證監(jiān)會(huì)立案!

002779、603360,被證監(jiān)會(huì)立案!

證券時(shí)報(bào)e公司
2026-04-27 22:46:03
2026禁賭來襲!打麻將的趕緊看!一次講透不踩坑

2026禁賭來襲!打麻將的趕緊看!一次講透不踩坑

生活新鮮市
2026-04-27 01:13:31
男籃官宣短期集訓(xùn)名單:王俊杰龐崢麟等在列 6月3日和4日打熱身賽

男籃官宣短期集訓(xùn)名單:王俊杰龐崢麟等在列 6月3日和4日打熱身賽

羅說NBA
2026-04-27 20:46:29
世界杯制造20球有多難?歷史僅5人,巴西德國霸榜,現(xiàn)役僅1人

世界杯制造20球有多難?歷史僅5人,巴西德國霸榜,現(xiàn)役僅1人

籃球圈里的那些事
2026-04-27 09:24:49
革命衛(wèi)隊(duì)敢不敢切斷霍爾木茲海底的光纜?

革命衛(wèi)隊(duì)敢不敢切斷霍爾木茲海底的光纜?

高博新視野
2026-04-27 00:53:46
中日對(duì)峙到了今天,一個(gè)問題已然徹底被擺在了中國的面前

中日對(duì)峙到了今天,一個(gè)問題已然徹底被擺在了中國的面前

安安說
2026-04-27 10:58:52
國家叫停美國資本收購Manus,什么信號(hào)?

國家叫停美國資本收購Manus,什么信號(hào)?

一見財(cái)經(jīng)
2026-04-27 22:18:21
皮蛋再次成為關(guān)注對(duì)象!研究發(fā)現(xiàn):高血脂吃皮蛋,身體或有6改善

皮蛋再次成為關(guān)注對(duì)象!研究發(fā)現(xiàn):高血脂吃皮蛋,身體或有6改善

健康科普365
2026-04-25 09:27:08
倒計(jì)時(shí)!全體車主自查!4月30日前務(wù)必辦完,5月起嚴(yán)查扣分罰款

倒計(jì)時(shí)!全體車主自查!4月30日前務(wù)必辦完,5月起嚴(yán)查扣分罰款

復(fù)轉(zhuǎn)這些年
2026-04-26 16:54:30
A股:漲到4086點(diǎn),尾盤很明顯,明天,4月28日,很可能這樣走

A股:漲到4086點(diǎn),尾盤很明顯,明天,4月28日,很可能這樣走

虎哥閑聊
2026-04-27 15:05:15
在中國有100萬存款,算什么水平?銀行員工“直言不諱”

在中國有100萬存款,算什么水平?銀行員工“直言不諱”

王二哥老搞笑
2026-04-26 13:59:23
兩年物是人非!當(dāng)初三方交易爆紅,如今遼籃少主成最大輸家

兩年物是人非!當(dāng)初三方交易爆紅,如今遼籃少主成最大輸家

弄月公子
2026-04-27 22:14:05
“神仙員工”每天最早到最晚走,不斷上報(bào)“穩(wěn)賺十幾萬”大項(xiàng)目,老板多次爽快撥款!一看賬戶資金,傻眼了……

“神仙員工”每天最早到最晚走,不斷上報(bào)“穩(wěn)賺十幾萬”大項(xiàng)目,老板多次爽快撥款!一看賬戶資金,傻眼了……

洪觀新聞
2026-04-27 16:49:40
悲催!荊州一90后醫(yī)生突發(fā)心梗在衛(wèi)生間去世,3小時(shí)后被妻子發(fā)現(xiàn)

悲催!荊州一90后醫(yī)生突發(fā)心梗在衛(wèi)生間去世,3小時(shí)后被妻子發(fā)現(xiàn)

火山詩話
2026-04-27 06:26:04
謝逸楓:顫抖吧!一季度賣地收入大跌,不足6000億元

謝逸楓:顫抖吧!一季度賣地收入大跌,不足6000億元

謝逸楓看樓市
2026-04-27 09:54:05
饒毅教授發(fā)文:痛斥一門三代七博士學(xué)術(shù)不端亂象

饒毅教授發(fā)文:痛斥一門三代七博士學(xué)術(shù)不端亂象

TOP大學(xué)來了
2026-04-27 09:31:01
廣州市未來五年城市整體規(guī)劃...

廣州市未來五年城市整體規(guī)劃...

西莫的藝術(shù)宮殿
2026-04-27 18:34:33
2026-04-27 23:40:49
算法與數(shù)學(xué)之美 incentive-icons
算法與數(shù)學(xué)之美
分享知識(shí),交流思想
5496文章數(shù) 64624關(guān)注度
往期回顧 全部

科技要聞

DeepSeek V4上線三天,第一批實(shí)測(cè)出來了

頭條要聞

坐在特朗普身邊親歷槍擊案的女記者 身份非常不一般

頭條要聞

坐在特朗普身邊親歷槍擊案的女記者 身份非常不一般

體育要聞

人類馬拉松"破二"新紀(jì)元,一場(chǎng)跑鞋軍備競賽

娛樂要聞

黃楊鈿甜為“耳環(huán)風(fēng)波”出鏡道歉:謠言已澄清

財(cái)經(jīng)要聞

Meta 140億收購Manus遭中國發(fā)改委否決

汽車要聞

不那么小眾也可以 smart的路會(huì)越走越寬

態(tài)度原創(chuàng)

數(shù)碼
藝術(shù)
親子
健康
軍事航空

數(shù)碼要聞

LABUBU冰箱還未正式發(fā)售就已溢價(jià)3000元

藝術(shù)要聞

你絕對(duì)想不到,攝影能讓她成為女神!

親子要聞

小姨又給妹妹買了好多衣服,姐做兼職給你買

干細(xì)胞如何讓燒燙傷皮膚"再生"?

軍事要聞

伊朗外長折返伊斯蘭堡內(nèi)情披露

無障礙瀏覽 進(jìn)入關(guān)懷版