云計算簡述

互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,信息量與數(shù)據(jù)量的飛速增長,導(dǎo)致單個計算機的計算能力和存儲能力滿足不了人們的需求,大大提高了成本。在這種情況下云計算應(yīng)允而生。云計算將待處理的數(shù)據(jù)送到互聯(lián)網(wǎng)上的超級計算機集群中進行計算和處理,把互聯(lián)網(wǎng)變成一種全新的計算平臺,能夠在網(wǎng)絡(luò)上實現(xiàn)按需購買與按使用付費的業(yè)務(wù)模式。
  云計算是信息技術(shù)與服務(wù)的交付領(lǐng)域的重大進步。由于能夠以自助、動態(tài)擴展、可計量的方式提供對共享計算資源池的按需訪問,云計算在成本、速度和效率方面具有無與倫比的優(yōu)勢。

1、云計算簡介

1.1 云計算的定義

云計算是由分布式計算、并行處理、網(wǎng)格計算發(fā)展來的,是一種新興的商業(yè)計算模型。目前,對于云計算的認識在不斷的發(fā)展變化,云計算沒仍沒有普遍一致的定義。
  中國網(wǎng)格計算、云計算專家劉鵬給出如下定義 :“云計算將計算任務(wù)分布在大量計算機構(gòu)成的資源池上,使各種應(yīng)用系統(tǒng)能夠根據(jù)需要獲取計算力、存儲空間和各種軟件服務(wù)”。
  狹義的云計算 指的是廠商通過分布式計算和虛擬化技術(shù)搭建數(shù)據(jù)中心或超級計算機,以免費或按需租用方式向技術(shù)開發(fā)者或者企業(yè)客戶提供數(shù)據(jù)存儲、分析以及科學(xué)計算等服務(wù),比如亞馬遜數(shù)據(jù)倉庫出租生意。
  廣義的云計算 指廠商通過建立網(wǎng)絡(luò)服務(wù)器集群,向各種不同類型客戶提供在線軟件服務(wù)、硬件租借、數(shù)據(jù)存儲、計算分析等不同類型的服務(wù)。廣義的云計算包括了更多的廠商和服務(wù)類型,例如國內(nèi)用友、金蝶等管理軟件廠商推出的在線財務(wù)軟件,谷歌發(fā)布的Google應(yīng)用程序套裝等。

通俗的理解是,云計算的“云“就是存在于互聯(lián)網(wǎng)上的服務(wù)器集群上的資源,它包括硬件資源(服務(wù)器、存儲器、CPU等)和軟件資源(如應(yīng)用軟件、集成開發(fā)環(huán)境等),本地計算機只需要通過互聯(lián)網(wǎng)發(fā)送一個需求信息,遠端就會有成千上萬的計算機為你提供需要的資源并將結(jié)果返回到本地計算機,這樣,本地計算機幾乎不需要做什么,所有的處理都在云計算提供商所提供的計算機群來完成。

1.2 基本特征

根據(jù)美國國家標準和技術(shù)研究院的定義,云計算服務(wù)應(yīng)該具備以下幾條特征:

  • 隨需應(yīng)變自助服務(wù)。
  • 隨時隨地用任何網(wǎng)絡(luò)設(shè)備訪問。
  • 多人共享資源池。
  • 快速重新部署靈活度。
  • 可被監(jiān)控與量測的服務(wù)。

一般認為還有如下特征:

  • 基于虛擬化技術(shù)快速部署資源或獲得服務(wù)。
  • 減少用戶終端的處理負擔(dān)。
  • 降低了用戶對于IT專業(yè)知識的依賴。

1.3 云計算的主要形式

1.2.1 按服務(wù)模式來分

美國國家標準和技術(shù)研究院的云計算定義中明確了三種服務(wù)模式:

軟件即服務(wù)(SaaS): 消費者使用應(yīng)用程序,但并不掌控操作系統(tǒng)、硬件或運作的網(wǎng)絡(luò)基礎(chǔ)架構(gòu)。是一種服務(wù)觀念的基礎(chǔ),軟件服務(wù)供應(yīng)商,以租賃的概念提供客戶服務(wù),而非購買,比較常見的模式是提供一組賬號密碼。例如:Microsoft CRM與Salesforce.com。

平臺即服務(wù)(PaaS):消費者使用主機操作應(yīng)用程序。消費者掌控運作應(yīng)用程序的環(huán)境(也擁有主機部分掌控權(quán)),但并不掌控操作系統(tǒng)、硬件或運作的網(wǎng)絡(luò)基礎(chǔ)架構(gòu)。平臺通常是應(yīng)用程序基礎(chǔ)架構(gòu)。例如:Google App Engine。

基礎(chǔ)設(shè)施即服務(wù)(IaaS):消費者使用“基礎(chǔ)計算資源”,如處理能力、存儲空間、網(wǎng)絡(luò)組件或中間件。消費者能掌控操作系統(tǒng)、存儲空間、已部署的應(yīng)用程序及網(wǎng)絡(luò)組件(如防火墻、負載平衡器等),但并不掌控云基礎(chǔ)架構(gòu)。例如:Amazon AWS、Rackspace。

云計算的服務(wù)模式

1.2.2 按部署來分

美國國家標準和技術(shù)研究院的云計算定義中也涉及了關(guān)于云計算的部署模型:

  • 公用云(Public Cloud)

簡而言之,公用云服務(wù)可通過網(wǎng)絡(luò)及第三方服務(wù)供應(yīng)者,開放給客戶使用,“公用”一詞并不一定代表“免費”,但也可能代表免費或相當廉價,公用云并不表示用戶數(shù)據(jù)可供任何人查看,公用云供應(yīng)者通常會對用戶實施使用訪問控制機制,公用云作為解決方案,既有彈性,又具備成本效益。

  • 私有云(Private Cloud)

私有云具備許多公用云環(huán)境的優(yōu)點,例如彈性、適合提供服務(wù),兩者差別在于私有云服務(wù)中,數(shù)據(jù)與程序皆在組織內(nèi)管理,且與公用云服務(wù)不同,不會受到網(wǎng)絡(luò)帶寬、安全疑慮、法規(guī)限制影響;此外,私有云服務(wù)讓供應(yīng)者及用戶更能掌控云基礎(chǔ)架構(gòu)、改善安全與彈性,因為用戶與網(wǎng)絡(luò)都受到特殊限制。

  • 社區(qū)云(Community Cloud)

社區(qū)云由眾多利益相仿的組織掌控及使用,例如特定安全要求、共同宗旨等。社區(qū)成員共同使用云數(shù)據(jù)及應(yīng)用程序。

  • 混合云(Hybrid Cloud)

混合云結(jié)合公用云及私有云,這個模式中,用戶通常將非企業(yè)關(guān)鍵信息外包,并在公用云上處理,但同時掌控企業(yè)關(guān)鍵服務(wù)及數(shù)據(jù)。

云種類

2、云計算技術(shù)介紹

云計算系統(tǒng)中運用了很多技術(shù),其中以編程模型技術(shù)、數(shù)據(jù)存儲技術(shù)、數(shù)據(jù)管理技術(shù)、虛擬化
技術(shù)、可擴展的并行計算和高可靠的系統(tǒng)技術(shù)最為關(guān)鍵。

2.1 編程模型技術(shù)

云計算必須保證后臺復(fù)雜的并行執(zhí)行和任務(wù)調(diào)度,對用戶和編程人員是透明,因此,云計算的編程模型必須簡單有效,才能讓用戶更方便地享受云服務(wù)。云計算采用類似 MAP-Reduce的編程模式,
是一種簡化的分布式編程模型和高效的任務(wù)調(diào)度模型,適用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行運算。現(xiàn)在,大部分 IT 廠商采用的編程模型,都是基于 MAP-Reduce 的思想開發(fā)的。
  嚴格的編程模型使云計算環(huán)境下的編程十分簡單。MapReduce模式的思想是將要執(zhí)行的問題分解成Map(映射)和Reduce(化簡)的方式,先通過Map程序?qū)?shù)據(jù)切割成不相關(guān)的區(qū)塊,分配(調(diào)度)給大量計算機處理,達到分布式運算的效果,再通過Reduce程序?qū)⒔Y(jié)果匯整輸出。

2.2 海量數(shù)據(jù)分布存儲技術(shù)

云計算用分布式存儲數(shù)據(jù),并用冗余的方式保證數(shù)據(jù)存儲的高可用、高可靠和經(jīng)濟性。云計算系統(tǒng)由大量服務(wù)器組成,為保證大量可靠的用戶服務(wù),數(shù)據(jù)存儲技術(shù)必須具有高傳輸率和高吞吐率的特性的同時還需要保證數(shù)據(jù)的可靠性,因此云計算系統(tǒng)采用分布式存儲的方式存儲數(shù)據(jù),用冗余存儲的方式保證數(shù)據(jù)的可靠性。現(xiàn)在,廣泛使用的數(shù)據(jù)存儲技術(shù)是 GFS(Google File System)和 HDFS(Hadoop Distributed FileSystem) 。大部分 IT 廠商都是使用 HDFS 的數(shù)據(jù)存儲技術(shù)。未來將集中發(fā)展超大規(guī)模的數(shù)據(jù)存儲、數(shù)據(jù)安全、數(shù)據(jù)加密和提高 I/O 速率等方面。

GFS即Google文件系統(tǒng)(Google File System),是一個可擴展的分布式文件系統(tǒng),用于大型的、分布式的、對大量數(shù)據(jù)進行訪問的應(yīng)用。GFS的設(shè)計思想不同于傳統(tǒng)的文件系統(tǒng),是針對大規(guī)模數(shù)據(jù)處理和Google應(yīng)用特性而設(shè)計的。它運行于廉價的普通硬件上,但可以提供容錯功能。它可以給大量的用戶提供總體性能較高的服務(wù)。
  一個GFS集群由一個主服務(wù)器(master)和大量的塊服務(wù)器(chunkserver)構(gòu)成,并被許多客戶(Client)訪問。主服務(wù)器存儲文件系統(tǒng)所以的元數(shù)據(jù),包括名字空間、訪問控制信息、從文件到塊的映射以及塊的當前位置。它也控制系統(tǒng)范圍的活動,如塊租約(lease)管理,孤兒塊的垃圾收集,塊服務(wù)器間的塊遷移。主服務(wù)器定期通過HeartBeat消息與每一個塊服務(wù)器通信,給塊服務(wù)器傳遞指令并收集它的狀態(tài)。GFS中的文件被切分為64MB的塊并以冗余存儲,每份數(shù)據(jù)在系統(tǒng)中保存3個以上備份。
  客戶與主服務(wù)器的交換只限于對元數(shù)據(jù)的操作,所有數(shù)據(jù)方面的通信都直接和塊服務(wù)器聯(lián)系,這大大提高了系統(tǒng)的效率,防止主服務(wù)器負載過重。

2.3 海量數(shù)據(jù)管理技術(shù)

云計算需要對分布的、海量的數(shù)據(jù)進行處理、分析,因此,數(shù)據(jù)管理技術(shù)必需能夠高效的管理大量的數(shù)據(jù)。云計算系統(tǒng)中的數(shù)據(jù)管理技術(shù)主要是Google的BT(BigTable)數(shù)據(jù)管理技術(shù)和Hadoop團隊開發(fā)的開源數(shù)據(jù)管理模塊HBase。

BT是建立在GFS, Scheduler, Lock Service和MapReduce之上的一個大型的分布式數(shù)據(jù)庫,與傳統(tǒng)的關(guān)系數(shù)據(jù)庫不同,它把所有數(shù)據(jù)都作為對象來處理,形成一個巨大的表格,用來分布存儲大規(guī)模結(jié)構(gòu)化數(shù)據(jù)。
  Google的很多項目使用BT來存儲數(shù)據(jù),包括網(wǎng)頁查詢,Google earth和Google金融。這些應(yīng)用程序?qū)T的要求各不相同:數(shù)據(jù)大小(從URL到網(wǎng)頁到衛(wèi)星圖象)不同,反應(yīng)速度不同(從后端的大批處理到實時數(shù)據(jù)服務(wù))。對于不同的要求,BT都成功的提供了靈活高效的服務(wù)。

2.4 虛擬化技術(shù)

虛擬化技術(shù)是指計算任務(wù)在虛擬的基礎(chǔ)上而不是真實的硬件基礎(chǔ)上運行,可實現(xiàn)軟件應(yīng)用與底層硬件相隔離,擴大硬件的容量,簡化軟件的重新配置過程。它包括將單個資源劃分成多個虛擬資源的裂分模式,也包括將多個資源整合成一個虛擬資源的聚合模式。
  利用虛擬化技術(shù),可以有效地整合數(shù)據(jù)中心的硬件資源、虛擬服務(wù)器和其它基礎(chǔ)設(shè)施,通過高效的管理和調(diào)度,為上層應(yīng)用程序提供動態(tài)的、可擴展的、靈活的基礎(chǔ)設(shè)施平臺,以滿足云計算按需部署、隨需隨用的需求。半虛擬化技術(shù)是目前主流的技術(shù),能減少 CPU 額外的開銷,但內(nèi)存性能消耗較大。因此,原來的 CPU 集型應(yīng)用程序可以較好地遷移到虛擬化平臺上來,而內(nèi)存或 I/O 密集型應(yīng)用程序,在數(shù)據(jù)操作等方面將會面臨更大的性能問題。

虛擬化技術(shù)根據(jù)對象可分成存儲虛擬化、計算虛擬化、網(wǎng)絡(luò)虛擬化等,計算虛擬化又分為系統(tǒng)級虛擬化、應(yīng)用級虛擬化和桌面虛擬化。

2.5 可擴展的并行計算技術(shù)

并行計算技術(shù)是云計算最具挑戰(zhàn)性的核心之一,多核處理器增加了并行的層次結(jié)構(gòu)和并行程序開發(fā)的難度,當前尚無有效的并行計算解決方案。可擴展性是并行計算的關(guān)鍵技術(shù)之一,將來的很多
并行應(yīng)用必須能夠有效擴展到成千上萬個處理器上,必須能隨著用戶需求的變化和系統(tǒng)規(guī)模的增大進行有效地擴展,這對開發(fā)者是一個巨大的挑戰(zhàn),短期內(nèi)很難開發(fā)出成熟的產(chǎn)品。

2.6 高可靠的系統(tǒng)技術(shù)

如何有效地管理龐大的資源,使大量分布在不同地點的服務(wù)器能夠協(xié)同工作,執(zhí)行各種任務(wù),并能快速地發(fā)現(xiàn)和恢復(fù)系統(tǒng)故障,保證整個系統(tǒng)提供不間斷的服務(wù)是巨大的挑戰(zhàn)。當系統(tǒng)規(guī)模增大后,面對大量的緊耦合通訊應(yīng)用,目前還沒出現(xiàn)有效的系統(tǒng)級容錯方案,主要通過應(yīng)用層面的檢查點和重啟技術(shù),這不但增加了系統(tǒng)開發(fā)的難度和工作量,還影響系統(tǒng)運行的性能。如何形成一個強大可靠的、動態(tài)的、自治的計算存儲資源池,提供云計算所需要的高容量的計算能力,保證大規(guī)模系統(tǒng)的可靠運營,有待進一步的深入研究。

4、云計算的應(yīng)用

云 計 算 平 臺 是 一 個 強 大 的 “云 ”網(wǎng) 絡(luò) ,連 接 了 大量并發(fā)的網(wǎng)絡(luò)計算和服務(wù),可利用虛擬化技術(shù)擴展每一個服務(wù)器的能力,將各自的資源通過云計算平臺結(jié)合起來,提供超級計算和存儲能力。
  構(gòu)建在網(wǎng)絡(luò)之上的云計算給人們帶來了諸多方便,為人們的生活和工作提供了無限多的可能。目前國內(nèi)提供了各種的云計算產(chǎn)品,用戶可以方便的進行使用,如百度云盤等遠程存儲。

4.1 云計算國外相關(guān)組織及方向

目前,國外已經(jīng)有多個云計算的科學(xué)研究項目,非常有名是ScientificCloud和 [OpenNebula](htp:∥ hive.apache.org/)項 目。產(chǎn) 業(yè) 界 也 在 投 入 巨 資 部署各自的云計算系統(tǒng),參與者主要有 Gogle、Ama-zon、IBM、Microsoft等。國 內(nèi) 關(guān) 于 云 計 算 的 研 究 也 已起步,并在計算機系統(tǒng)虛擬化基礎(chǔ)理論與方法研究方面取得了階段性成果。國際上云計算主要研究組織及研發(fā)方向如表 1所示


云計算國外組織及方向

4.2 云計算國內(nèi)相關(guān)組織及方向

國內(nèi)學(xué)術(shù)界對云計算研究也非常熱門,并做了大 量 的 研 究 工 作 。國內(nèi)企業(yè)界主要云計算研究組織及研發(fā)方向如下圖所示:


國內(nèi)產(chǎn)品比較

4.3 移動互動應(yīng)用程序

Tim O’Reilly 認為:將來是屬于能對人或者其他傳感器提供實時響應(yīng)的服務(wù)。如實時響應(yīng)的服務(wù),需要綜合兩個或多個源信息或服務(wù)提供綜合服務(wù)的應(yīng)用,不僅要求高可用性,而且需要大型數(shù)據(jù)中心可靠地存儲大量數(shù)據(jù),正日益增加對移動云計算和移動云應(yīng)用程序的采用。

4.4 并行批處理程序

云計算為批處理和數(shù)據(jù)分析提供了獨特的機遇,TB 級的數(shù)據(jù)分析將可以在數(shù)小時內(nèi)完成。如果應(yīng)用程序中的數(shù)據(jù)有足夠的并行性,就可以利用云提供的成本特性,在不擴大成本的前提下,使用大量機器可以在很短的時間內(nèi),完成少量機器需要很長時間才能完成的工作。

4.5 分析需求的興起

計算密集型批處理的典型案例就是商業(yè)分析,大型數(shù)據(jù)庫起初主要是針對事務(wù)處理,但這種需求已經(jīng)不再增長了。現(xiàn)在越來越多的計算資源用于理解客戶、供應(yīng)鏈和排名分析等數(shù)據(jù)分析問題,網(wǎng)數(shù)據(jù)庫處理的資源平衡點正在從事務(wù)轉(zhuǎn)向商業(yè)分析。

4.6 計算密集型桌面應(yīng)用程序的擴展

最新版本的數(shù)學(xué)軟件,如 Matlab 和 Mathematica 都可以通過云計算進行復(fù)雜的評估計算,其它的桌面應(yīng)用程序,將來也可以無縫地擴展到云系統(tǒng)中。

4.7 地域局限的應(yīng)用程序

有些應(yīng)用程序盡管本身很適合云的伸縮性和并行性,但卻因為數(shù)據(jù)傳輸成本或者數(shù)據(jù)傳輸延遲的根本性限制,而不能使用云計算。只有降低了網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)某杀净蜓舆t,這些應(yīng)用程序才適用于云計算。

5、云計算的研究熱點及挑戰(zhàn)

通過對云計算相關(guān)專利進行分析,可以看出在 Iaas 層的主要以虛擬化技術(shù)展開,同時涉及分布式云框架以及數(shù)據(jù)安 全 方 面 的 技 術(shù)。PaaS 層 服 務(wù) 器 相 關(guān)的數(shù)據(jù)傳輸、數(shù)據(jù)存儲、數(shù)據(jù)安全、分布式網(wǎng)絡(luò)方面的技術(shù)為主。而 Iaas 層與Paas 層則以數(shù)據(jù)中心與數(shù)據(jù)存儲的相關(guān)技術(shù)為橋梁, 形成云計算核心服務(wù)層的基礎(chǔ)支持。Saas 層則承擔(dān)了云計算結(jié)果的展示功能,更加注重平臺建設(shè),服務(wù)優(yōu)化方面的技術(shù)。因此,目前在云計算領(lǐng)域相對熱點的技術(shù)主要集中在虛擬化技術(shù),云安全技術(shù)、分布式計算方面。

同時,IaaS 提供硬件基礎(chǔ)設(shè)施部署服務(wù),為用戶按需提供實體或虛擬的計算、存儲和網(wǎng)絡(luò)等資源。在使用 IaaS 層服務(wù)的過程中,用戶需要向 IaaS 層服務(wù)提供商提供基礎(chǔ)設(shè)施的配置信息,運行于基礎(chǔ)設(shè)施的程序代碼以及相關(guān)的用戶數(shù)據(jù)。由于數(shù)據(jù)中心是 IaaS 層的基礎(chǔ),因此數(shù)據(jù)中心的管理和優(yōu)化問題近年來成為研究熱點。

5.1 云計算領(lǐng)域前沿技術(shù)

數(shù)據(jù)中心為云計算提供了大規(guī)模資源。為了實現(xiàn)基礎(chǔ)設(shè)施服務(wù)的按需分配,需要研究虛擬化技術(shù)。虛擬化是 IaaS 層的重要組成部分,也是云計算的最重要特點。虛擬化技術(shù)可以提供以下特點 :

  • 資源分享。通過虛擬機封裝用戶各自的運行環(huán)境,有效實現(xiàn)多用戶分享數(shù)據(jù)中心資源。
  • 資源定制。用戶利用虛擬化技術(shù), 配置私有的服務(wù)器,指定所需的 CPU 數(shù)目、內(nèi)存容量、磁盤空間,實現(xiàn)資源的按需分配。
  • 細粒度資源管理。將物理服務(wù)器拆分成若干虛擬機, 可以提高服務(wù)器的資源利用率,減少浪費,而且有助于服務(wù)器的負載均衡和節(jié)能。

基于以上特點,虛擬化技術(shù)成為實現(xiàn)云計算資源池化和按需服務(wù)的基礎(chǔ)。通過支持動態(tài)創(chuàng)建分離的、完全獨立與物理網(wǎng)絡(luò)硬件的虛擬網(wǎng)絡(luò),網(wǎng)絡(luò)虛擬化解決了實現(xiàn)云計算——網(wǎng)絡(luò)——敏捷性的最終障礙之一。就像服務(wù)器虛擬化將虛擬機(VM)從底層 x86 服務(wù)器硬件分離出來以改變計算運營模式一樣,網(wǎng)絡(luò)虛擬化將基于軟件的虛擬網(wǎng)絡(luò)從底層網(wǎng)絡(luò)硬件分離出來,以便支持新的網(wǎng)絡(luò)運營模式。在不更改的情況下非破壞性地部署到任何現(xiàn)有網(wǎng)絡(luò)上,網(wǎng)絡(luò)虛擬化將物理網(wǎng)絡(luò)轉(zhuǎn)變?yōu)榭筛鶕?jù)需求而消費并改變用途的容量池。
  云計算計算的實現(xiàn)主要集中在虛擬化、分布式計算系統(tǒng)、云存儲、云操作系統(tǒng)這四個方面。

參考:
云計算(維基百科)
云計算關(guān)鍵技術(shù)及應(yīng)用研究
云計算領(lǐng)域的熱點技術(shù)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容