「雲端運算」(雲計算)已經講到爛?Gartner建議從二分法重新學起

2008年是「雲端運算年」,經過一連串的洗禮與轟炸,大家現在對雲端運算(cloud computing)都有初步認識,但,你確定昨天聽到的「雲端運算」,和前天聽到的「雲端運算」,是在講同一件事情嗎

ComputerWorld這周特地引用了知名分析公司Gartner提出的最新見解,Gartner認為,「雲端運算」這個字在當下被「熱情引用」得相當嚴重。報導還引用VMWare的技術長的話,指出「雲端運算可說是繼Virtualization以來,最被濫用的字眼!」

我覺得「濫用」是不至於,而是被太廣泛的用,哪裡都用,什麼都可以用,造成了「糊用」。當我們大家突然間都在談「雲端運算」(cloud computing),企業爭著要把自己歸類成「雲端」,提供的服務是「雲端」,要客戶學「雲端」,Web 3.0也是「雲端」,大家都在雲端的時候,實情就愈來愈像高空空氣一樣的飄渺虛無。「糊用」沒關係,這樣一來反而讓一般的民眾,更能將此字琅琅上口,促使大家更快的作系統更換,更去使用網路上的資源,不也很棒?不過,若是對於真正想用「雲端運算」來做點事的企業IT部門,或是真正在為「雲端運算」在奮力研究的研究人員來說,如果大家口中講「雲端運算」,卻是在講完完全全不同的技術,那就變成雞同鴨講、牛頭不對馬嘴、青黃不接、是非不明、上氣不接下氣了。

所謂「雲端」這個字最初的正確起源,來自資工系學生畫網路示意圖,一定是拿一朵「雲」來簡而代表「Internet」這個裡面不知道有幾台電腦幾台路由器的複雜網路,化繁為簡。所以,所謂的「雲端運算」就是透過「互聯網」(Internet)來作運算,而它隱藏的另一涵意不是「天空」,而是「模糊化」,有一點點「丟給互聯網這個黑盒子,它就會不知怎麼動用好多電腦傳送加計算然後幫你準備好答案」的意思在。於是,許多IT很熟的人又常把雲端運算搞成是「Grid Computing」,這樣就太窄義了,看維基百科對雲端運算的定義,只要是「透過互聯網來計算」的都可以算是雲端運算,換句話說,最近大家流行談的「雲端運算」的話題,其實就是Distributed computing、SaaS、Web-based software、Data Center、Virtualization、甚至Web services等等的概念(與技術)的一個「概括詞」。我認為,它在行銷的意義上,遠大於技術上的意義;並不是說它不需要技術,而是這個字本身定義太廣,並不是在形容任何一個必要的技術。

由於目前對「雲端計算」的定義,涵蓋太多雜七雜八的技術,大家都搶著當「雲端」,所以,Gartner特別舉出「兩大陣營」,指出它們根本不應該被「一同視為雲端運算」,認為應該重新取名,分開視為完全不同的東西

第一種雲端運算,叫「雲端服務」(cloud computing services):有些網路服務,透過一個瀏覽器,透過互聯網來存取、來操作、來服務,譬如Salesforce.com的CRM工具,或是Amazon EC2的空間服務,這一類的「雲端運算」可視為Grid computing、SaaS的自然延伸,使用者完全不必去擔心成長的問題,遠端自然會幫你將該需要的伺服器或資料庫都準備好,使用者只要放心的把東西丟到網路上、丟往遠端的服務商即可。也充份善用了互聯網的便利性,讓使用者可以安全的將所有資料都存在遠端的一或多個伺服機裡,到哪裡都可以使用,服務商也可隨時作升級或更動,同時又巧妙的將龐大運算的問題丟給「雲端」解決,於是讓一隻單薄的手機或一個沒有運算能力的GPS也都可以上網幹很多奇奇怪怪的事,這一種雲端運算,主要是在形容一種新的「服務」方式。

第二種雲端運算,叫「雲端技術」(cloud computing technologies):有些提到雲端運算的,其實是「data center」的下一代產品,內部系統採用多台電腦一同運算、儲存、相互備援,譬如可以將基因圖譜定序、DNA解碼等拆成好多來演算,又譬如Skype與BitTorrent以點對點(P2P)來共同組成單一系統,這個陣營其實才是正宗的distributed computing的「分身」,它技術牽扯到「雲端」的部份,遠比第一種雲端運算還要多,這種雲端運算主要是在形容一種新的「技術」。

Gartner說,不要吵、不要吵,以上兩者都是「雲端運算」,但是,幾乎是完全不同的「用意」。Gartner的建議是,在講「雲端運算」前,可能要先問自己,你所要講的這個「雲端運算」,可以說是某一個穿過密密麻麻幾億台電腦連線讓你使用的「服務」嗎?還是在講該服務後面的一個特殊的製作法,而這製作法是透過雲端內密密麻麻幾億台電腦內所構成的網路?

像,CRM這種SaaS,假如它要說它是雲端運算,那它,顯然是在第一陣營,也就是「雲端服務」。

像Skype這種點對點的,假如它哪天也硬要說它是雲端運算,那它是在第二陣營,也就是「雲端技術」。

但是,像Google呢

目前它是「雲端運算」最新最熱情的擁護者,因為它有第一陣營與第二陣營的特質。Google透過MapReduce架構來將資料拆成小塊丟出去運算後再重組回來,以及BigTable完全跳脫一般資料庫資料以row設計儲存又完全的配合Google自己的GFS (Google File System),幫助它穿過雲端的所有從request到response的所有環節,全部都是最佳化了,但,由於這一切的目的還是為了強化該公司所有的網站產品,讓使用者透過瀏覽器所使用的速度與感覺能變成最好,達到此點後,它就「夠用」了。所以,雖然也有許多、或許有扯到第二陣營的部份,但Google仍是偏向第一陣營

換句話說,下次看到李開復博士再次提到雲端運算可以拿來算基因,或許可以以Gartner來建議他:「不要再講到那裡去了。」

從這邊開始,慢慢的不要當雲端運算只是一個空渺的字眼,或許可以,從「雲端」慢慢降落到「地面」,然後分頭依我們的需求,一一的探索雲端中的秘密。

35 Comments