高手論:到底云計算是什么呢
云計算這個新名詞最近甚囂塵上,最近周圍不少朋友都在談,有必要寫一個關于云計算的科普了。一般的業(yè)界比較喜歡用一些新名詞來體現(xiàn)自己的戰(zhàn)略眼光和與對手的區(qū)隔。當幾個月前google提出云計算的概念的時候,amazon說自己做的事情就是云計算,IBM、intel、Sun都聲稱自己在云計算領域有深刻的計劃。只可惜大家聽了半天仍然不知道什么是云計算,依舊云里霧里知道這個與計算有關,干脆就叫“云計算”吧。
到底云計算是什么呢?
這個問題不好回答,專業(yè)一點的回答是:云計算是依靠強大的計算能力,使得成千上萬的終端用戶不擔心所使用的計算技術和接入的方式等都能夠進行有效的依靠網(wǎng)絡連接起來的硬件平臺的計算能力來實施多種應用。
非專業(yè)一點的回答就是,一堆你不需要搞清楚的硬件、軟件在服務你。這堆硬件和軟件構成的東東大的像朵云彩,又擁有極強的計算能力,這就叫云計算。那么云計算是怎么來的?我們?yōu)槭裁从中枰朴嬎?
1. 云計算的前身是grid computing。
說起grid computing 可能知道的人就很多了,就是傳統(tǒng)的網(wǎng)格計算。網(wǎng)格計算就是將一個計算分割成片段,提交到網(wǎng)絡系統(tǒng)上的各個計算機上(格點),工作做好進行匯總完成。比較流行的軟件例如globe bus + afs(提供存儲映射服務)。不過grid一般都是用在學術界,例如cern的幾個實驗都采用了大規(guī)模的grid計算,例如進行新粒子的發(fā)現(xiàn),需要處理t 級別的數(shù)據(jù),單臺計算機的運算和存儲顯然是不可能完成的,因此就必須使用網(wǎng)格計算了。
2. 云計算有實實在在的例子么?
很幸運,我們還可以找到幾個:google appengine,Amazon的S3+EC2系統(tǒng)都是云計算的雛形。
3. 云計算的基礎是什么?
最基本的需求:存儲+處理器,當然,要支持無數(shù)的應用請求并負責保證存儲和計算的性能,這兩方面都是挑戰(zhàn)。
4. 我自己能夠搭建一個云計算環(huán)境么?
當然可以,我們可以利用開源的項目來搭建一個云計算環(huán)境:你可以利用hadoop+hbase+php(包裝API)也許就實現(xiàn)一個簡單的云計算環(huán)境。
5. 有沒有更簡單的例子?
也許一個分布式的郵件系統(tǒng)就是一個云計算的雛形:計算分布在各個節(jié)點上,應用(郵件收發(fā))通過一個統(tǒng)一的平臺來處理,也算是符合云計算的定義了,不過只能支持最簡單的一種固定應用。
6. 有沒有復雜一點的例子?
google的云計算的邏輯關系:gfs 實現(xiàn)存儲,bigtable 實現(xiàn)結構化、半結構化數(shù)據(jù)存儲,map/reduce 實現(xiàn)將分布在各個節(jié)點上的計算和merage起來,剩下的就是進行job的管理器,管理工作的提交和觸發(fā),然后就是我們看到的appengine了。
7. 程序員應該關注哪些軟件?
hadoop 項目應該是一個比較有前途的一個,當然powerset在hadoop之上的Hbase應該是一個更接近能夠替代簡單database的應用。
8. 我們?yōu)槭裁葱枰朴嬎?
很簡單,企業(yè)的雄心+個人電腦性能進展緩慢+我們處在數(shù)據(jù)指數(shù)膨脹的年代。當我們在 google上提交一個搜索的時候,會有成千上萬的計算機被卷入這一個簡單的一個查詢過程中,未來的計算越來越龐大,到了我們干脆說“云”來替代其中的一切細節(jié)的時候。
9. 云計算平臺的下一步是什么?
云計算api的標準化也許是一個最需要進行競爭的,可惜基礎的技術平臺的完善還需要時日,而且云計算未來也許會是免費的,這個遵從 “競爭導致利潤下降”的原則,難度不是么?當更多的云計算平臺出現(xiàn)的時候,然而跑在云上的應用卻沒有那么多,當然免費的午餐就會來。
10. 還有更有趣的么?
當然,你可以提供一個云計算,利用 google,amazon的云計算包含在你自己的云計算里,然后提供一個統(tǒng)一的api,或者也許未來的云計算會整合在一個,云里霧里,成為一個超大的云計算平臺,那個時候,也許自己家的電腦也可以接入云計算平臺成為其中的一個計算的提供者。這個聽起來很有意思,不過13年前就已經(jīng)存在了,那個分布在全球電腦上的尋找外星et的屏保就是一個云計算的平臺,如果他們該行做云計算的話,估計能夠蓋過 google和amazon。
【編輯推薦】