BLOG主圖

加到網路書籤: 加入Furl網路書籤 加入HEMiDEMi網路書籤 加入MyShare網路書籤 加入funP   

Cloud Computing 雲端運算

  2008/02/15

本文已經過原作者同意轉載,原文連結在此

Posted by Mr. Saturday

http://www.research.att.com/files/grid_computing_technology.gif前一陣子在新聞上看到不少有關於 Cloud Computing (雲端運算) 的報導,不過看看台灣的報導似乎都不是相當深入或是明確,於是我興起了寫這一篇文章的念頭。這篇文章是我自己對於雲端運算的理解,還希望各位讀者能一起參與討論,提供不同的見解。有機會的話,我也希望之後能夠繼續寫一些有關雲端運算中所包含的粗淺的技術介紹。

好吧,開門見山:雲端運算不是技術它是概念。為什麼這樣說呢?因為 cloud computing 本身並不代表任何一項資訊科技的技術,它是一種電腦運算的概念,而一種概念就會有許多不同的方式去實踐,這個時候才會有不同的技術衍伸出來。就好像我們聽過 pervasive computing、ubiquitous computing、parallel computing 一樣,這些都是運算的概念,不是單指一項特定的技術。cloud computing 也不例外,它本質上就是代表分散式運算 (distributed computing) 的概念。而分散式運算說穿了,就是讓一些不同的電腦同時去幫你做事情、進行運算,所以你有兩台電腦也好、十萬台電腦也好,只要你有超過一台電腦,而且讓他們可以互相溝通,一起同時幫你做事情,恭喜你,這就是分散式運算。


好吧,如果雲端運算不過就是分散式運算罷了,故事就這樣結束也太沒意思了。那我們就繼續從其他名詞的出現繼續看下去好了。

大家可能同時也聽過 grid computing (網格運算) 這個名詞,相信滿多人覺得網格運算跟 cloud computing 很像。其實 cloud computing 在概念上跟 grid computing 並沒有非常嚴格的區隔或是很大的不同,兩者均可看成是 distributed computing (分散式運算) 衍伸出來的概念。grid computing 一詞出現得較早,將重點的概念放在異質系統之間運算資源的整合,簡單來說,就是讓不同等級的電腦、或是不同作業系統的電腦,彼此之間可以透過通訊標準來互相溝通,分享彼此的運算資源。在網際網路還沒有今天這麼發達之前,企業採用 grid computing,很大的原因是為了讓組織內部的 IT 資源達到更良好的使用率。

當大家努力去實現這樣的一個概念時,其實就促成了網際網路的蓬勃發展,因為網路本身就是在強調不同電腦之間的溝通以及合作,於是在各項基礎設施包括頻寬、通訊標準、電腦運算能力以及運算架構都逐漸發展成熟之後,提供給開發者或是一般使用者的網路服務便開始出現,這些網路服務 (Web Service) 提供給使用者簡單的介面來存取一些資源。當然一開始的時候,企業提供出來的,都是一些相當陽春的網路服務。

這些 Web Service 繼續發展下去,時至今日出現了像 Google、Yahoo!、Amazon 等等網路巨獸,這些大公司有能力去購買數以萬計的伺服器,並且把這些電腦串起來,成為一個龐大的運算資源。而龐大的運算資源自然就意味者更為多樣化和以前無法提供的新服務。所有的人現在可以在網路上不同的地方,利用各大企業開放出來的運算資源,進行資料的運算或是提供服務給使用者,於是就在這樣的情況之下,cloud computing 被提了出來。因為現在無論是一般的使用者或是開發者,都透過網路來取得資料或是進行資料運算,自己本地端的運算資源雖然有限,還是可以透過網路進行複雜的運算,結果資料就像是從天上的雲端掉下來一樣,相信學資訊的讀者都對於將網際網路表示成一朵雲的圖示不會陌生。例如下圖:

http://sturtevant.com/reed/pres3.gif

所以在我看來,cloud computing 並不代表任何單一技術的突破或是革新,它代表的是分散式運算本身的一種成熟,就好像我們看到網路發展到一定程度了,就有人喊出了 Web 2.0,都是一樣的道理。

本文已經過原作者同意轉載,原文連結在此


加到網路書籤: 加入Furl網路書籤 加入HEMiDEMi網路書籤 加入MyShare網路書籤 加入funP

    回上層 


  • 8.Kai 於 2008/08/01 14:52 回應
  • 其實他有解釋,他說無法將grid computing與cloud computing做嚴格的區分
    我個人認為grid computing的本質主要在於異質電腦之間彼此分享運算資源,而cloud computing將這種分散式運算提升為服務層級,讓使用者可以透過這樣的概念進行複雜的運算或取得某些個人電腦無法達成的服務,就像文中所提..Cloud就類似網路雲,使用者是在這雲上得到服務...
  • 7.阿默 於 2008/07/31 18:02 回應
  • 程序里使用的對象、內存、線程都是在網絡中散布的。
  • 6.abc 於 2008/06/25 11:03 回應
  • 隨意逛逛至此....Here are my two cents:

    (1) Cloud 指 IP network infrastructure. Usually, one network domain as one cloud according to network convention.

    (2) To use the "Cloud" effectively one requires specific algorithms for mass parallelism and distribution, e.g. Monte Carlo methods. Historically, please check SETI (at) HOME and BOINIC project using google search.

    Remarks:
    Google has internationally 10G backbone of its own and hierarchically supernodes in each areas in the world. So, don't too optimistic of what you can do via clouds. But this is still a good focus that Grid computing promised at the first place. (Grid computing promised too much though)
  • 5.johnson 於 2008/05/02 17:02 回應
  • 就個人的認知, 本質上相同, 但 Grid Computing 出來的年代, 是各種通訊協定的戰國時代, 也沒有統一的資料型態, 而Internet出來後, http逐漸統一各種通訊協定, XML逐漸統一資料格式, 二者相加的 Web Service 也逐漸成為 RPC 的標準, 這就是 Cloud Computing 的誕生背景. 也是二者不同之處, 不知這樣解釋對不對.
  • 4.浮冰 於 2008/04/15 14:27 回應
  • 引述連結
    Cloud computing is a new (circa late 2007) label for the subset of grid computing that includes utility computing and other approaches to the use of shared computing resources.

    根據以前讀過某本原文書中提到的,網格運算透過一個管理中心去分配取得的運算資源,並處理分配資源給運算請求,運算請求可以不用管資源是從哪裡來-這不就是雲端運算的基礎嗎!?和引述的內容相符合,不曉得本文作者真的知道他自己寫東西之前是否有先追根究底過!?
  • 3.藍 於 2008/04/07 09:51 回應
  • 他有說阿 就是提供SAAS的服務 自己的電腦將不用在灌軟體 透過網路就能得到這些服務
    就是這樣瞜
  • 2.同意1樓的看法. 於 2008/02/23 16:12 回應
  • 同意1樓的看法.
  • 1.有說跟沒說一樣 於 2008/02/21 13:32 回應
  • 說了半天, 反而在解釋 grid computing, 不能這麼隨便用 cloud computing也是一種分散式運算 就交代過去吧? 到底 cloud computing 又是什麼?跟grid computing差別?

留下你的意見(提醒:請開啟cookie,網頁會自動儲存您寫的內容。)
會員 * 帳號:
* 密碼:
  1. 欄位可選填,若全不填,則顯示為「匿名」。
  2. 不支援html語法
非會員 姓名:
E-Mail:
Blog:
  重新載入驗證碼
* 驗證碼: 記住我





CNET Towerboard 廣告