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