引言
雲計算是由企業界開始發展,然後才進入學術界引起重視的,這與網格計算相反。 經過對迄今為止的雲計算相關學術論文進行統計分析後,顯示學術界對於雲 計算的研究主要集中在雲技術關鍵技術方面。 雲計算研究的關鍵技術包括虛擬機器、安全管理、資料管理、雲監測、能耗管理和計算模型等。 雲計算的計算模型是研究 如何針對某類應用特點提出效率更高的程式設計方式,目前雲計算模型眾多,而Hadoop是一個開源的分散式系統基本架構,正日益成為具有較強實用性的開發平 台. 淘寶就是國內率先使用Hadoop的公司之一。
1 雲計算關鍵技術
1. 1 虛擬機器
虛擬機器是雲計算的關鍵技術之一。 目前在雲計算中使用的主要虛擬機器之一就是VMware Infrastructure。 它是一個虛擬資料中心作業系統,可以將離散的硬體資源統一起來以創建共用平臺。 其優點有:①整合伺服器以降低IT成本;② 暗哨計畫內和計畫外停機以改進業務連續性;⑧運行較少的伺服器並且動態關閉不使用的伺服器。
1. 2 安全管理
雲計算是電腦資源的整合,通過雲計算設施中的任何一台電腦,任何隱私資訊都能夠被找到。 雲計算安全問題已經成為急需解決的重要問題。 其 中,Siani Persion等提出了在雲計算服務設計過程中保護使用者隱私的一些設計原則:① 發送儘量少的個人資訊到雲中,或者對系統進行分析後只對一小部分個人資訊進行必要的收集和採集;② 採用安全措施防止未授權的訪問、複製、 使用或者修改個人資訊來保護雲中的個人資訊:③最大限度地實現使用者控制。 在雲計算環境中,讓使用者完全控制個人資訊是 比較困難的。 要加強對個人資訊的控制:一可以允許使用者控制最重要的個人資訊;二可以委託信任的協力廠商來管理:④允許使用者對個人資訊的使用進行選擇,即加 入、退出機制;⑤明確以及限制資料使用的目的。 個人資訊必須被身份明確的人使用和處理;⑥有回饋機制。 即設計人及介面清楚地表明雲服務中採取的安全措施, 用其向使用者提供安全提示。
1. 3 資料管理
雲計算具有計算能力可變、資料儲存在不信任的主機上、資料是遠端複製等3個特點。 從這3個特點分析而出,只有兩種資料管理應用程式可能適合部署到雲 計算中:一是和交易處理相關的資料管理系統:另一種是和分析相關的資料管理系統。 前者未採用共用的體系結構,在進行遠端資料複製時很難滿足ACID的需 求,同時在不信任的主機上存儲資料也有比較大的風險。 ACID要求對於基於分析的資料管理系統來說不是必須的,同時可以保證敏感性資料在分析之外,從而保證 其安全。 因此,基於分析的資料管理系統應該很合適部署到雲計算環境中去。
1.4 雲監測和能耗管理
雲監測是隨著雲計算的推廣、雲設施不斷增加、為了更好地體現雲計算的強大計算處理能力而設置的對虛擬機器監控的能力:能耗管理是如何節省雲設施中計算設施所需要的能源、有效整合資源、降低成本。
1. 5 雲計算的計算模型
現行的分散式運算系統可以提供強大的計算能力. 但非專業使用者並不能有效地利用,一個龐大的任務很可能由於初學者的偶然操作導致性能的大幅下降。 為了 解決這些問題,應該提供給使用者一個高度抽象的產品系統. 這些就是雲計算的計算模型。 提到雲計算模型,就不得不說一個開源框架,那就是Hadoop。
Hadoop是一個分散式系統基本架構。 由Apache開發,使使用者在不了解分散式底層細節的情況下,開發分散式程式。 簡單點說。 Hadoop是一個可以更容易開發和運行處理大規模資料的軟體平臺。
Hadoop實現了一個分散式檔案系統(Hadoop DistributedFile System),簡稱HDFS。 HDFS有著高容錯性的特點,並且設計用來部署在低廉的硬體上。 而且它提供高傳輸率來訪問應用程式的資料,適合那些有著超 大資料集的應用程式。 HDFS放寬了POSIX標準的要求。 這樣可以流的形式訪問檔案系統中的資料。
Hadoop採用Master/Slave結構(如圖1),會有一台Mas. ter,主要負責NameNode的工作以及JobTracker的工 作,Job. Tracker的主要職責就是啟動、跟蹤和調度各個Slave的任務執行。 還會有多台Slave,每一台Slave通常具有DataNode 的功能並負責TaskTracker的工作。 TaskTracker根據應用要求來結合本地資料執行Map任務以及Reduce任務。
圖1 Hadoop結構
(責任編輯:蒙遺善)