雲計算的關鍵技術
來源:互聯網
上載者:User
1 虛擬化技術
虛擬化技術是指計算元件在虛擬的基礎上而不是真實的基礎上運行,它可以擴大硬體的容量,簡化軟體的重新配置過程,減少軟體虛擬機器相關開銷和支援更廣泛的作業系統方面。 通過虛擬化技術可實現軟體應用與底層硬體相隔離,它包括將單個資源劃分成多個虛擬資源的裂分模式,也包括將多個資源整合成一個虛擬資源的聚合模式。 虛擬化技術根據物件可分成存儲虛擬化、計算虛擬化、網路虛擬化等,計算虛擬化又分為系統級虛擬化、應用級虛擬化和桌面虛擬化目。 在雲計算實現中。 計算系統虛擬化是一切建立在「雲」上的服務與應用的基礎。 虛擬化技術目前主要應用在CPU、作業系統、伺服器等多個方面,是提高服務效率的最佳解決方案。
2 分散式海量資料存儲
雲計算系統由大量伺服器組成,同時為大量使用者服務,因此雲計算系統採用分散式存儲的方式存儲資料,用冗余存儲的方式(集群計算、資料冗余和分散式存儲)保證資料的可靠性。 冗余的方式通過任務分解和集群,用低配機器替代超級電腦的性能來保證低成本,這種方式保證分散式資料的高可用、高可靠和經濟性,即為同一份資料存儲多個副本。 雲計算系統中廣泛使用的資料存儲系統是Google的GFS和Hadoop團隊開發的GFS的開源實現HDFS。
3 海量資料管理技術
雲計算需要對分佈的、海量的資料進行處理、分析,因此,資料管理技術必需能夠高效的管理大量的資料。 雲計算系統中的資料管理技術主要是Google的BT sT~lO資料管理技術和Hadoop團隊開發的開來源資料管理模組HBase。 由於雲資料存儲管理形式不同于傳統的RDBMS資料管理方式,如何在規模巨大的分散式資料中找到特定的資料,也是雲計算資料管理技術所必須解決的問題[61。 同時,由於管理形式的不同造成傳統的SQL資料庫介面無法直接移植到雲管理系統中來,目前一些研究在關注為雲資料管理提供RDBMS和SQL的介面,如基於Hadoap 子專案HBase和Hive等。 另外,在雲資料管理方面,如何保證資料安全性和資料訪問高效性也是研究關注的重點問題之一。
4 程式設計方式
雲計算提供了分散式的計算模式,客觀上要求必須有分散式的程式設計模式。 雲計算採用了一種思想簡潔的分散式並行程式設計模型Map—Reduce。 Map—Reduce是一種程式設計模型和任務調度模型。 主要用於資料集的並行運算和並行任務的調度處理。 在該模式下,使用者只需要自行編寫Map函數和Reduce函數即可進行平行計算。 其中,Map 函數中定義各節點上的分塊資料的處理方法,而Reduce函數中定義中間結果的保存方法以及最終結果的歸納方法[71。
5 雲計算平臺管理技術
雲計算資源規模龐大,伺服器數量眾多並分佈在不同的地點,同時運行著數百種應用,如何有效的管理這些伺服器,保證整個系統提供不問斷的服務是巨大的挑戰。 雲計算系統的平臺管理技術能夠使大量的伺服器協同工作,方便的進行業務部署和開通,快速發現和恢復系統故障,通過自動化、智慧化的手段實現大規模系統的可靠運營。