阿里雲的核心技術要點
1、虛擬化技術
虛擬化是雲端計算最重要的核心技術之一,它為雲端計算服務提供基礎架構層面的支撐,是ICT服務快速走向雲端計算的最主要驅動力。可以說,沒有虛擬化技術也就沒有云計算服務的落地與成功。隨著雲端計算應用的持續升溫,業內對虛擬化技術的重視也提到了一個新的高度。與此同時,我們的調查發現,很多人對雲端計算和虛擬化的認識都存在誤區,認為雲端計算就是虛擬化。事實上並非如此,虛擬化是雲端計算的重要組成部分但不是全部。
從技術上講,虛擬化是一種在軟體中模擬計算機硬體,以虛擬資源為使用者提供服務的計算形式。旨在合理調配計算機資源,使其更高效地提供服務。它把應用系統各硬體間的物理劃分打破,從而實現架構的動態化,實現物理資源的集中管理和使用。虛擬化的最大好處是增強系統的彈性和靈活性,降低成本、改進服務、提高資源利用效率。
從表現形式上看,虛擬化又分兩種應用模式。一是將一臺效能強大的伺服器虛擬成多個獨立的小伺服器,服務不同的使用者。二是將多個伺服器虛擬成一個強大的伺服器,完成特定的功能。這兩種模式的核心都是統一管理,動態分配資源,提高資源利用率。在雲端計算中,這兩種模式都有比較多的應用。
2、分散式資料儲存技術
雲端計算的另一大優勢就是能夠快速、高效地處理海量資料。在資料爆炸的今天,這一點至關重要。為了保證資料的高可靠性,雲端計算通常會採用分散式儲存技術,將資料儲存在不同的物理裝置中。這種模式不僅擺脫了硬體裝置的限制,同時擴充套件性更好,能夠快速響應使用者需求的變化。
分散式儲存與傳統的網路儲存並不完全一樣,傳統的網路儲存系統採用集中的儲存伺服器存放所有資料,儲存伺服器成為系統性能的瓶頸,不能滿足大規模儲存應用的需要。分散式網路儲存系統採用可擴充套件的系統結構,利用多臺儲存伺服器分擔儲存負荷,利用位置伺服器定位儲存資訊,它不但提高了系統的可靠性、可用性和存取效率,還易於擴充套件。
在當前的雲端計算領域,Google的GFS和Hadoop開發的開源系統HDFS是比較流行的兩種雲端計算分散式儲存系統。
GFS(Google File System)技術:谷歌的非開源的GFS(GoogleFile System) 雲端計算平臺滿足大量使用者的需求,並行地為大量使用者提供服務。使得雲端計算的資料儲存技術具有了高吞吐率和高傳輸率的特點。
HDFS(Hadoop Distributed File System)技術:大部分ICT廠商,包括Yahoo、Intel的“雲”計劃採用的都是HDFS的資料儲存技術。未來的發展將集中在超大規模的資料儲存、資料加密和安全性保證、以及繼續提高I/O速率等方面。
3、程式設計模式
從本質上講,雲端計算是一個多使用者、多工、支援併發處理的系統。高效、簡捷、快速是其核心理念,它旨在通過網路把強大的伺服器計算資源方便地分發到終端使用者手中,同時保證低成本和良好的使用者體驗。在這個過程中,程式設計模式的選擇至關重要。雲端計算專案中分散式並行程式設計模式將被廣泛採用。
分散式並行程式設計模式創立的初衷是更高效地利用軟、硬體資源,讓使用者更快速、更簡單地使用應用或服務。在分散式並行程式設計模式中,後臺複雜的任務處理和資源排程對於使用者來說是透明的,這樣使用者體驗能夠大大提升。MapReduce是當前雲端計算主流並行程式設計模式之一。MapReduce模式將任務自動分成多個子任務,通過Map和Reduce兩步實現任務在大規模計算節點中的高度與分配。
MapReduce是Google開發的java、Python、C++程式設計模型,主要用於大規模資料集(大於1TB)的並行運算。MapReduce模式的思想是將要執行的問題分解成Map(對映)和Reduce(化簡)的方式,先通過Map程式將資料切割成不相關的區塊,分配(排程)給大量計算機處理,達到分散式運算的效果,再通過Reduce程式將結果彙整輸出。
4、大規模資料管理
處理海量資料是雲端計算的一大優勢。那麼如何處理則涉及到很多層面的東西,因此高效的資料處理技術也是雲端計算不可或缺的核心技術之一。對於雲端計算來說,資料管理面臨巨大的挑戰。雲端計算不僅要保證資料的儲存和訪問,還要能夠對海量資料進行特定的檢索和分析。由於雲端計算需要對海量的分散式資料進行處理、分析,因此,資料管理技術必需能夠高效的管理大量的資料。
Google的BT(BigTable)資料管理技術和Hadoop團隊開發的開源資料管理模組HBase是業界比較典型的大規模資料管理技術。
BT(BigTable)資料管理技術:BigTable是非關係的資料庫,是一個分散式的、持久化儲存的多維度排序Map.BigTable建立在 GFS, Scheduler, Lock Service和MapReduce之上,與傳統的關係資料庫不同,它把所有資料都作為物件來處理,形成一個巨大的表格,用來分佈儲存大規模結構化資料。 Bigtable的設計目的是可靠的處理PB級別的資料,並且能夠部署到上千臺機器上。
開源資料管理模組HBase:HBase是Apache的Hadoop專案的子專案,定位於分散式、面向列的開源資料庫。HBase不同於一般的關係資料庫,它是一個適合於非結構化資料儲存的資料庫。另一個不同的是HBase基於列的而不是基於行的模式。作為高可靠性分散式儲存系統,HBase在效能和可伸縮方面都有比較好的表現。利用HBase技術可在廉價PC Server上搭建起大規模結構化儲存叢集。
5、分散式資源管理
雲端計算採用了分散式儲存技術儲存資料,那麼自然要引入分散式資源管理技術。在多節點的併發執行環境中,各個節點的狀態需要同步,並且在單個節點出現故障時,系統需要有效的機制保證其它節點不受影響。而分散式資源管理系統恰是這樣的技術,它是保證系統狀態的關鍵。
另外,雲端計算系統所處理的資源往往非常龐大,少則幾百臺伺服器,多則上萬臺,同時可能跨躍多個地域。且雲平臺中執行的應用也是數以千計,如何有效地管理這批資源,保證它們正常提供服務,需要強大的技術支撐。因此,分散式資源管理技術的重要性可想而知。
全球各大雲端計算方案/服務提供商們都在積極開展相關技術的研發工作。其中Google內部使用的Borg技術很受業內稱道。另外,微軟、IBM、Oracle/Sun等雲端計算巨頭都有相應解決方案提出。
6、資訊保安
調查資料表明,安全已經成為阻礙雲計算髮展的最主要原因之一。資料顯示,32%已經使用雲端計算的組織和45%尚未使用雲端計算的組織的ICT管理將雲安全作為進一步部署雲的最大障礙。因此,要想保證雲端計算能夠長期穩定、快速發展,安全是首要需要解決的問題。
事實上,雲端計算安全也不是新問題,傳統網際網路存在同樣的問題。只是雲計算出現以後,安全問題變得更加突出。在雲端計算體系中,安全涉及到很多層面,包括網路安全、伺服器安全、軟體安全、系統安全等等。因此,有分析師認為,雲安全產業的發展,將把傳統安全技術提到一個新的階段。
現在,不管是軟體安全廠商還是硬體安全廠商都在積極研發雲端計算安全產品和方案。包括傳統防毒軟體廠商、軟硬防火牆廠商、IDS/IPS廠商在內的各個層面的安全供應商都已加入到雲安全領域。相信在不久的將來,雲安全問題將得到很好的解決.
7、雲端計算平臺管理
雲端計算資源規模龐大,伺服器數量眾多並分佈在不同的地點,同時執行著數百種應用,如何有效地管理這些伺服器,保證整個系統提供不間斷的服務是巨大的挑戰。雲端計算系統的平臺管理技術,需要具有高效調配大量伺服器資源,使其更好協同工作的能力。其中,方便地部署和開通新業務、快速發現並且恢復系統故障、通過自動化、智慧化手段實現大規模系統可靠的運營是雲端計算平臺管理技術的關鍵。
對於提供者而言,雲端計算可以有三種部署模式,即公共雲、私有云和混合雲。三種模式對平臺管理的要求大不相同。對於使用者而言,由於企業對於ICT資源共享的控制、對系統效率的要求以及ICT成本投入預算不盡相同,企業所需要的雲端計算系統規模及可管理效能也大不相同。因此,雲端計算平臺管理方案要更多地考慮到定製化需求,能夠滿足不同場景的應用需求。
包括Google、IBM、微軟、Oracle/Sun等在內的許多廠商都有云計算平臺管理方案推出。這些方案能夠幫助企業實現基礎架構整合、實現企業硬體資源和軟體資源的統一管理、統一分配、統一部署、統一監控和統一備份,打破應用對資源的獨佔,讓企業雲端計算平臺價值得以充分發揮。
8、綠色節能技術
節能環保是全球整個時代的大主題。雲端計算也以低成本、高效率著稱。雲端計算具有巨大的規模經濟效益,在提高資源利用效率的同時,節省了大量能源。綠色節能技術已經成為雲端計算必不可少的技術,未來越來越多的節能技術還會被引入雲端計算中來。
Carbon Disclosure Project(碳排放披露專案,簡稱CDP)近日釋出了一項有關雲端計算有助於減少碳排放的研究報告。報告指出,遷移至雲的美國公司每年就可以減少碳排放8570萬噸,這相當於2億桶石油所排放出的碳總量。