網路服務提供者可以在數秒之內,達成處理數以千萬計甚至億計的資訊,達到和「超級電腦」同樣強大效能的網路服務。
雲端運算(Cloud Computing),從本質上來看,他是一種分散式運算(Distributed Computing)的新運用,其最基本的概念,是透過網際網路將龐大的運算處理程序(Process),自動分拆成無數個較小的子程序(Sub process),再交由多部伺服器(Multi- Server)所組成的龐大系統,透過搜尋與運算分析之後,再將處理結果回傳給使用者端。透過這項技術,網路服務提供者(Service Provider)可以在數秒之內,處理數以千萬計甚至億計的資訊,達到和「超級電腦」同樣強大效能的網路服務。
簡單來說,就是讓網路上不同電腦同時幫你做一件事情,大幅增進處理速度。
雲端運算的概念
「雲端運算」=「網路」=「網路運算」。「雲端運算」是一種概念,代表的是利用網路使電腦能夠彼此合作或使服務更無遠弗屆。在實現「概念」的過程中,產生出相應的「技術」。
雲端運算是一種電腦運算的概念,是整合一些不同的電腦,讓它們同時去幫您做事情、進行運算。近年流行的「雲端運算」話題,其實就是分散式運算 (Distributed co m p u t i n g) 、經由網路提供軟體服務(SaaS)、資料中心(Data Center)、虛擬化技術(Virtualization)、甚至網路服務(Web services)等等概念的一個「概括詞」。
「雲」即為我們最常使用的網際網路(Internet);「端」則指使用者端(Client)或泛指使用者運用網路服務來完成事情的方式。最終目標是沒有軟體的安裝,所有的資源都來自於雲端,使用者端只需一個連上雲端的設備與簡單的介面(例如瀏覽器)即可。
網格運算
傳統的網格運算(Grid computing)又與雲端運算有什麼樣的不同呢?在網際網路還沒有發達的時代,企業為了讓組織內部的 IT資源達到最佳化使用,會將異質系統進行運算資源整合,讓不同等級的電腦或是不同作業系統的電腦,彼此之間可以透過通訊標準協定來互相溝通,分享彼此的 運算資源,這種方式稱為網格運算。網格運算能夠經由網路管理組織內任何一個可使用的運算資源,進而降低伺服器的閒置時間。
雲端運算的「技術」
所謂「雲端技術」(Cloud computing technologies)應該是在講「雲端服務」後面的一種特殊技術的製作法。雲端技術其實是「data center」的下一代產品,內部系統採用多台電腦一同運算、儲存、相互備援,在此架構下,對於誰可以分享、分享哪些資源、什麼條件可以允許分享等都定義 的很清楚。
第一種雲端運算,叫「雲端服務」(cloud computing services): 有些網路服務,透過一個瀏覽器,透過互聯網來存取、來操作、來服務,譬如Salesforce.com的CRM工具,或是Amazon EC2的空間服務,這一類的「雲端運算」可視為Grid computing、SaaS的自然延伸,使用者完全不必去擔心成長的問題,遠端自然會幫你將該需要的伺服器或資料庫都準備好,使用者只要放心的把東西丟 到網路上、丟往遠端的服務商即可。也充份善用了互聯網的便利性,讓使用者可以安全的將所有資料都存在遠端的一或多個伺服機裡,到哪裡都可以使用,服務商也 可隨時作升級或更動,同時又巧妙的將龐大運算的問題丟給「雲端」解決,於是讓一隻單薄的手機或一個沒有運算能力的GPS也都可以上網幹很多奇奇怪怪的事, 這一種雲端運算,主要是在形容一種新的「服務」方式。
第二種雲端運算,叫「雲端技術」(cloud computing technologies):有些提到雲端 運算的,其實是「data center」的下一代產品,內部系統採用多台電腦一同運算、儲存、相互備援,譬如可以將基因圖譜定序、DNA解碼等拆成好多來演算,又譬如Skype與 BitTorrent以點對點(P2P)來共同組成單一系統,這個陣營其實才是正宗的distributed computing的「分身」,它技術牽扯到「雲端」的部份,遠比第一種雲端運算還要多,這種雲端運算主要是在形容一種新的「技術」。
兩種的差別
簡單的說,網格運算著重在需要複雜運算的「單一任務」。但雲端運算則比較偏大眾應用,在應用上,雲端運算可以被視為平民化的網格運算。
雲端運算經常會使用到「虛擬化」技術。
網格運算只使用專屬的應用協定和資料格 式,雲端運算則受到近年Web潮流的影響很深
雲端的應用
像google的搜尋引擎、google的Gmail、google docs、WebOS、Windows Azure 、 MSN、分析DNA結構、基因圖譜定序、解析癌症細胞等