雲計算(suàn)到底是誰發明(míng)的(de)?
2020-9-24新聞
說到雲計算(suàn)的(de)起源,公衆普遍認爲,谷歌(gē)前CEO埃裏克·施密特是雲計算(suàn)概念的(de)第一個(gè)提出者。
2006年8月(yuè)9日,在搜索引擎大(dà)會(SES San Jose 2006)上,他(tā)提出了(le)“雲計算(suàn)(Cloud Computing)”的(de)概念。
埃裏克·施密特(Eric Schmidt)
也(yě)有人(rén)認爲,當今雲計算(suàn)市場(chǎng)的(de)龍頭老大(dà)——美(měi)國亞馬遜(Amazon)公司,在更早的(de)2006年3月(yuè),就正式推出了(le)自家的(de)彈性計算(suàn)雲(Elastic Compute Cloud,EC2)服務,是事實上的(de)雲計算(suàn)開創者。
其實,準确來(lái)說,不管是谷歌(gē)還(hái)是亞馬遜,都不是雲計算(suàn)的(de)發明(míng)人(rén)。雲計算(suàn)概念的(de)提出,遠(yuǎn)比我們想象中要早得(de)多(duō)。
今天這(zhè)篇文章(zhāng),我們就針對(duì)雲計算(suàn)來(lái)一次徹底的(de)“尋根問祖”。
▉ Part.1 公共計算(suàn)——雲計算(suàn)理(lǐ)論的(de)萌芽
大(dà)家應該還(hái)記得(de),我們的(de)計算(suàn)機通(tōng)識課本裏說過,世界上第一台電子計算(suàn)機是ENIAC(埃尼阿克)。
Electronic Numerical Integrator And Computer
電子數字積分(fēn)計算(suàn)機
其實,嚴謹來(lái)說,ENIAC隻能算(suàn)是世界上第二台電子計算(suàn)機。在它之前,還(hái)有一台名叫阿塔納索夫-貝瑞(Atanasoff–Berry Computer)的(de)計算(suàn)機,簡稱ABC計算(suàn)機。隻不過這(zhè)台ABC計算(suàn)機不可(kě)編程,所以ENIAC是第一台通(tōng)用(yòng)電子計算(suàn)機。
ENIAC的(de)出現,宣告了(le)計算(suàn)時(shí)代的(de)開始,從此人(rén)類打開了(le)計算(suàn)機世界的(de)大(dà)門。
像ENIAC這(zhè)樣的(de)早期計算(suàn)機,體型巨大(dà)、耗資昂貴,計算(suàn)能力也(yě)非常有限。最重要的(de)是,它缺乏多(duō)用(yòng)戶能力,同一時(shí)間隻能被一個(gè)人(rén)占用(yòng)。大(dà)家都想用(yòng)的(de)話(huà),隻能排隊。
1955年,美(měi)國麻省理(lǐ)工學院(MIT)的(de)約翰·麥卡錫(John McCarthy)教授提出了(le)time-sharing(分(fēn)時(shí))的(de)技術理(lǐ)念,希望借此可(kě)以滿足多(duō)人(rén)同時(shí)使用(yòng)一台計算(suàn)機的(de)訴求。
約翰·麥卡錫(1927-2011)
這(zhè)個(gè)約翰·麥卡錫大(dà)家應該很眼熟,沒錯,他(tā)就是Artificial Intelligence(AI)概念的(de)提出者,世界公認的(de)人(rén)工智能之父,後來(lái)在1971年獲得(de)了(le)圖靈獎。
無獨有偶,1959年6月(yuè),英國計算(suàn)機科學家克裏斯托弗·斯特雷奇(Christopher Strachey)在國際信息處理(lǐ)大(dà)會上,發表了(le)一篇學術論文,也(yě)是關于大(dà)型機共享使用(yòng)的(de),名字叫做(zuò)《大(dà)型高(gāo)速計算(suàn)機中的(de)時(shí)間共享(Time Sharing in Large Fast Computer)》。
克裏斯托弗·斯特雷奇(1916-1975)
在這(zhè)篇論文中,虛拟化(huà)的(de)概念被首次提出。現在我們都知道,虛拟化(huà)是如今雲計算(suàn)架構的(de)基石。當時(shí)那篇論文,絕對(duì)堪稱“驚爲天人(rén)”。
到了(le)1961年,又是咱們的(de)大(dà)神約翰·麥卡錫,在麻省理(lǐ)工學院一百周年紀念慶典上,首次提出了(le)Utility Computing(公共計算(suàn)服務)的(de)概念:
“如果我設想的(de)那種計算(suàn)機(注:即分(fēn)時(shí)計算(suàn)機,同時(shí)支持多(duō)人(rén)同時(shí)使用(yòng)的(de)計算(suàn)機)能夠成真,那麽計算(suàn)或許某天會像電話(huà)一樣被組織成公共服務…… Utility Computing(公共計算(suàn)服務)将是一種全新的(de)重要工業的(de)基礎。”
這(zhè)個(gè)Utility Computing的(de)翻譯,其實行業裏存在一定的(de)争議(yì)。Utility有“公共服務、實用(yòng)、效用(yòng)”的(de)意思,有人(rén)把它翻譯成公共計算(suàn),也(yě)有人(rén)翻譯成效用(yòng)計算(suàn)。
麥卡錫的(de)理(lǐ)念,其實借鑒了(le)傳統的(de)電廠模式。
說白了(le),就是把計算(suàn)資源當作是一種像電一樣的(de)能源資源。用(yòng)戶可(kě)以像把燈泡插入插座一樣,随時(shí)随地使用(yòng)計算(suàn)資源,并根據使用(yòng)量進行付費。
受麥卡錫觀點的(de)影(yǐng)響,麻省理(lǐ)工學院和(hé)DARPA(美(měi)國國防高(gāo)級研究計劃局)下(xià)屬的(de)IPTO(信息處理(lǐ)技術辦公室)共同啓動了(le)著名的(de)MAC(Multiple Access Computing)項目。DARPA還(hái)專門提供了(le)約200萬美(měi)元的(de)項目津貼。
MAC項目的(de)目标,就是開發“多(duō)人(rén)可(kě)同時(shí)使用(yòng)的(de)電腦(nǎo)系統”。實際上,這(zhè)就是“雲”和(hé)“虛拟化(huà)”技術的(de)雛形。
1964年,大(dà)西洋月(yuè)刊發表了(le)一篇題爲《The Computers of Tomorrow(明(míng)日計算(suàn)機)》的(de)文章(zhāng),詳細分(fēn)析了(le)公共計算(suàn)服務與公共電網的(de)異同點。
文章(zhāng)指出,計算(suàn)想要成爲像電網那樣的(de)公共服務,需要關注三個(gè)問題:
接口——用(yòng)戶如何和(hé)資源進行對(duì)接?
服務設備——用(yòng)戶通(tōng)過什(shén)麽設備将資源轉換成服務?
産品同質性——電總歸是電,而計算(suàn)是一種複雜(zá)的(de)服務,存在多(duō)樣性,存在不同的(de)編程語言和(hé)硬件,如何兼容、交互?
1965年,在《The Computers of Tomorrow》的(de)影(yǐng)響下(xià),MAC項目組開始開發Multics分(fēn)時(shí)多(duō)任務操作系統。在這(zhè)個(gè)過程中,GE(通(tōng)用(yòng)電氣)被選爲硬件供應商,IBM出局。貝爾實驗室後來(lái)也(yě)加入到MAC的(de)軟件開發中。
1965年,從MAC中出局的(de)IBM開始研發CP-40/CMS分(fēn)時(shí)操作系統,該系統于1967年發布,是曆史上第一個(gè)虛拟機系統。
1969年,受不了(le)Multics緩慢(màn)進展的(de)貝爾實驗室從MAC項目退出,開始開發Unix操作系統(1970年問世)。
1969年,在約瑟夫·利克萊德(J.C.R.Licklider,IPTO負責人(rén))的(de)推動下(xià),ARPA(國防部高(gāo)級研究計劃局)研究的(de)計算(suàn)機網絡ARPANET誕生。
我相信大(dà)家都認識ARPANET,沒錯,這(zhè)就是後來(lái)的(de)Internet。
約瑟夫·利克萊德(1915-1990)
自此,雲計算(suàn)所依賴的(de)三大(dà)底層技術全部出現了(le):
用(yòng)于管理(lǐ)物(wù)理(lǐ)計算(suàn)資源的(de)操作系統
用(yòng)于把資源分(fēn)給多(duō)人(rén)同時(shí)使用(yòng)的(de)虛拟化(huà)技術
用(yòng)于遠(yuǎn)程接入的(de)互聯網
▉ Part.2 網格計算(suàn)——雲計算(suàn)理(lǐ)念的(de)複蘇
雖然雲計算(suàn)基礎技術紛紛出現,但20世紀70-80年代,人(rén)們沉浸于PC市場(chǎng)的(de)繁榮,主要精力都放在了(le)軟件和(hé)網絡上,進而忽視了(le)對(duì)Utility Computing的(de)關注。
1984年,SUN公司聯合創始人(rén)John Gage(約翰·蓋奇)提出 “網絡就是計算(suàn)機(The Network is the Computer)”的(de)重要猜想,用(yòng)于描述分(fēn)布式計算(suàn)技術帶來(lái)的(de)新世界。雲計算(suàn),其實就是分(fēn)布式計算(suàn)的(de)一種。
約翰·蓋奇
然而,人(rén)們仍然沒有對(duì)雲計算(suàn)引起足夠的(de)關注。
直到90年代,雲計算(suàn)相關的(de)理(lǐ)念重新回到了(le)人(rén)們的(de)視野。不過這(zhè)次它換了(le)一個(gè)更簡單的(de)名字,叫做(zuò)網格計算(suàn)(Grid Computing)。
網格(Grid)的(de)叫法,和(hé)我們日常理(lǐ)解的(de)“網格化(huà)管理(lǐ)”有很大(dà)不同,它是直接照(zhào)搬自電網的(de)概念(Electric Power Grid)。它的(de)本質目的(de),還(hái)是把大(dà)量機器整合成一個(gè)虛拟的(de)超級機器,給分(fēn)布在世界各地的(de)人(rén)們使用(yòng),也(yě)就是公共計算(suàn)服務。
1996年,康柏(Compaq)公司的(de)一群技術主管在討(tǎo)論計算(suàn)業務的(de)發展時(shí),首次使用(yòng)了(le)Cloud Computing這(zhè)個(gè)詞,他(tā)們認爲商業計算(suàn)會向Cloud Computing的(de)方向轉移。
1996年11月(yuè)14日,康柏公司關于cloud computing的(de)商業計劃
這(zhè)是Cloud Computing(雲計算(suàn))概念的(de)真正首次出現。
1997年,美(měi)國教授Ramnath K. Chellappa對(duì)“Cloud Computing”這(zhè)個(gè)詞做(zuò)出了(le)首個(gè)學術定義:“計算(suàn)邊界由經濟而并非完全由技術決定的(de)計算(suàn)模式”。
拉姆納特·K·切拉帕(印度裔)
此後的(de)雲計算(suàn)發展,掀起了(le)一股小高(gāo)潮——
1997年,InsynQ基于HP的(de)設備上線了(le)按需使用(yòng)的(de)應用(yòng)和(hé)桌面服務。
1998 年,VMware公司成立,并首次引入 X86 的(de)虛拟技術。同年,HP成立公共計算(suàn)部門。
1999 年,MarcAndreessen創建LoudCloud,是世界上第一個(gè)商業化(huà)的(de)IaaS平台。
同年,salesforce.com公司成立。這(zhè)家公司是目前公認的(de)雲計算(suàn)先驅,創始人(rén)是幾個(gè)Oracle公司前高(gāo)管。
公司成立之初,他(tā)們就喊出了(le)“No Software”的(de)口号,宣布開啓”軟件終結“革命。
他(tā)們通(tōng)過自己的(de)互聯網站點向企業提供客戶關系管理(lǐ)(CRM)軟件系統,使得(de)企業不必像以前那樣通(tōng)過部署自己的(de)軟件系統來(lái)進行客戶管理(lǐ)。這(zhè)就是最早的(de)軟件即服務(SaaS)模型。
2000年,Sun公司發布 Sun cloud。
2001年,HP公司發布公共數據中心産品。
……
此時(shí)此刻,雲計算(suàn)已經是呼之欲出了(le)。
▉ Part.3 亞馬遜&谷歌(gē)——雲計算(suàn)的(de)正式誕生
2000年,當時(shí)美(měi)國電子商務公司Amazon正在開發電商服務平台Merchant.com,旨在幫助第三方公司在Amazon上構建自己的(de)在線購(gòu)物(wù)網站。
不過,因爲架構設計能力和(hé)管理(lǐ)流程等方面的(de)問題,這(zhè)個(gè)項目進展緩慢(màn)。
于是,亞馬遜的(de)管理(lǐ)層開始考慮,是不是可(kě)以将已有的(de)代碼進行解耦,設計成獨立的(de)API服務,然後讓内部或外部應用(yòng)進行服務調用(yòng)。這(zhè)樣,既可(kě)以節約後續的(de)開發工作量,也(yě)可(kě)以增強系統的(de)靈活性和(hé)複用(yòng)度。
由此,2002年亞馬遜啓用(yòng)了(le)Amazon Web Services(AWS)平台。當時(shí)該免費服務可(kě)以讓企業将Amazon.com的(de)功能整合到自家網站上。
2003年,安迪·傑西(Andy Jassy),當時(shí)傑夫·貝索斯(Jeff Bezos,亞馬遜創始人(rén))的(de)秘書(shū)長(cháng),現在AWS的(de)CEO,在貝索斯的(de)家裏召開了(le)一次管理(lǐ)層會議(yì)。會上,大(dà)家決定要把應用(yòng)開發的(de)通(tōng)用(yòng)部分(fēn)抽離出來(lái),做(zuò)一個(gè)公共基礎設施服務平台,讓内外部開發者可(kě)以基于這(zhè)個(gè)平台開發自己的(de)應用(yòng)。
随後,他(tā)們整理(lǐ)了(le)一系列可(kě)以成爲公共服務的(de)候選模塊,并從中挑了(le)服務器、存儲和(hé)數據庫三個(gè)部分(fēn)開始。不僅因爲這(zhè)三個(gè)需求最多(duō),還(hái)因爲Amazon最擅長(cháng)這(zhè)部分(fēn),畢竟低利潤率商業模式讓他(tā)在如何降低數據中心的(de)運營成本上頗有積累。
2006年,亞馬遜推出了(le)兩款重磅産品,分(fēn)别是S3(Simple Storage Service,簡單存儲服務)和(hé)EC2(Elastic Cloud Computer,彈性雲計算(suàn)),從而奠定了(le)自家雲計算(suàn)服務的(de)基石(直至今日都無人(rén)可(kě)以撼動)。
在那一期間,谷歌(gē)其實也(yě)沒有閑著(zhe)。這(zhè)家誕生于1998年的(de)年輕公司,在2003~2006年期間,連續發表了(le)四篇重磅文章(zhāng),分(fēn)别關于分(fēn)布式文件系統(GFS)、并行計算(suàn)(MapReduce)、數據管理(lǐ)(Big Table)和(hé)分(fēn)布式資源管理(lǐ)(Chubby)。
這(zhè)些關鍵技術不僅奠定了(le)谷歌(gē)自家的(de)雲計算(suàn)服務基礎,也(yě)爲全世界雲計算(suàn)、大(dà)數據的(de)發展指明(míng)了(le)方向。
2006年,27歲的(de)Google高(gāo)級工程師克裏斯托夫·比希利亞第一次向Google董事長(cháng)兼CEO施密特提出“雲端計算(suàn)”的(de)想法。在施密特的(de)支持下(xià),Google推出了(le)“Google 101計劃”,并正式提出“雲”的(de)概念。
克裏斯托夫·比希利亞
後來(lái)《财富》雜(zá)志10大(dà)最具頭腦(nǎo)人(rén)物(wù)授予其“最聰明(míng)的(de)工程師”稱号
于是,就有了(le)本文開頭施密特發表的(de)講話(huà)。
至此,雲計算(suàn)揭開了(le)神秘的(de)面紗,正式來(lái)到了(le)公衆的(de)面前。随後的(de)雲計算(suàn),進入了(le)快(kuài)速發展階段,并最終滲透到了(le)我們工作和(hé)生活的(de)各個(gè)領域。