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