賀貝
(河南工業(yè)貿(mào)易職業(yè)學(xué)院,河南 鄭州 450053)
隨著網(wǎng)絡(luò)的日益普及和IT技術(shù)的迅猛發(fā)展,網(wǎng)絡(luò)存儲(chǔ)和計(jì)算等服務(wù)不斷深入到生活的方方面面。目前,PC依然是人們?nèi)粘9ぷ魃畹暮诵墓ぞ撸脕?lái)處理文檔、存儲(chǔ)數(shù)據(jù)、發(fā)送E-mail、業(yè)務(wù)計(jì)算或與別人信息共享等。在 “云計(jì)算”時(shí)代,“云”會(huì)完成存儲(chǔ)和計(jì)算工作。用戶只需要一臺(tái)能上網(wǎng)的電腦或其他終端設(shè)備,不需要安裝任何應(yīng)用軟件,不需要關(guān)心存儲(chǔ)或計(jì)算發(fā)生在哪朵“云”上,就可以存儲(chǔ)大量數(shù)據(jù),通過(guò)網(wǎng)絡(luò)服務(wù)來(lái)實(shí)現(xiàn)需要做的一切,甚至包括超級(jí)計(jì)算。重要的是,用戶不必?fù)?dān)心個(gè)人數(shù)據(jù)會(huì)丟失,因?yàn)椤霸啤睍?huì)幫用戶安全保管。這樣的愿景取決于互聯(lián)網(wǎng)技術(shù)帶來(lái)的一種新型網(wǎng)絡(luò)計(jì)算模式——云計(jì)算。
云計(jì)算的思想可以追溯到20世紀(jì)60年代,圖靈獎(jiǎng)得主John McCarthy曾說(shuō) :“計(jì)算將成為公共基礎(chǔ)設(shè)施?!边@意味著計(jì)算能力可以被用作一種商品,就如燃?xì)夂退T谧罨镜囊饬x上,云計(jì)算就是數(shù)據(jù)存儲(chǔ)在云端,應(yīng)用和服務(wù)存儲(chǔ)在云端,充分利用數(shù)據(jù)中心強(qiáng)大的計(jì)算能力,實(shí)現(xiàn)用戶業(yè)務(wù)系統(tǒng)的自適應(yīng)性[1]。2007年10月,IBM和谷歌宣布在云計(jì)算領(lǐng)域的合作之后,云計(jì)算引起了廣泛關(guān)注,成為業(yè)界和學(xué)術(shù)界的一個(gè)熱點(diǎn)。
目前,云計(jì)算系統(tǒng)尚無(wú)統(tǒng)一定義,云計(jì)算提供商根據(jù)自己的業(yè)務(wù)推出相關(guān)的云計(jì)算策略。Hewitt認(rèn)為云計(jì)算系統(tǒng)主要是在云服務(wù)器上永久存儲(chǔ)信息,而在使用信息時(shí)只能在客戶端緩存,客戶端可以是臺(tái)式機(jī)、筆記本、手持式設(shè)備等[2]。Wang Lizhe等人從云計(jì)算系統(tǒng)應(yīng)具備的功能出發(fā),給出了科學(xué)云計(jì)算系統(tǒng)的定義,指出云計(jì)算系統(tǒng)不僅為用戶提供硬件服務(wù)HaaS、軟件服務(wù)SaaS和數(shù)據(jù)資源服務(wù)DaaS,還可以把平臺(tái)服務(wù)提供給用戶,用戶根據(jù)需要向計(jì)算平臺(tái)提出自己的硬件配置、軟件安裝和數(shù)據(jù)訪問(wèn)申請(qǐng)[3]。Buyya等人認(rèn)為云計(jì)算是由一組內(nèi)部互聯(lián)虛擬機(jī)組成的并行分布式計(jì)算系統(tǒng),該系統(tǒng)可以基于服務(wù)提供商和客戶之間的良好服務(wù)水平協(xié)議動(dòng)態(tài)提供計(jì)算資源。加州大學(xué)伯克利分校認(rèn)為,云指的是數(shù)據(jù)中心的硬件和系統(tǒng)軟件,分為公共云(開(kāi)放給公眾)和私有云(企業(yè)組織本身),在公共云基礎(chǔ)上,云計(jì)算系統(tǒng)意味著終端用戶應(yīng)用以因特網(wǎng)服務(wù)的形式由SaaS提供商交付,并且云提供商向SaaS提供數(shù)據(jù)核心的軟硬件服務(wù)。
(1)支持虛擬化。云計(jì)算系統(tǒng)可作為一個(gè)虛擬資源池,通過(guò)在一個(gè)服務(wù)器上部署多個(gè)虛擬機(jī)和應(yīng)用,提高資源利用率 ;當(dāng)一個(gè)服務(wù)器過(guò)載時(shí)支持負(fù)載遷移。
(2)提供服務(wù)質(zhì)量保證(QoS)。云計(jì)算系統(tǒng)能為用戶提供符合QoS要求的服務(wù),并可以根據(jù)用戶需要對(duì)系統(tǒng)進(jìn)行調(diào)整,如硬件配置、網(wǎng)絡(luò)帶寬、存儲(chǔ)容量等。
(3)高可靠性、可用性和可擴(kuò)展性。云計(jì)算系統(tǒng)必須確保能夠?yàn)橛脩籼峁┛煽康姆?wù),確保用戶可以隨時(shí)隨地訪問(wèn)所需的服務(wù)。當(dāng)用戶系統(tǒng)的規(guī)模發(fā)生變化時(shí),云計(jì)算系統(tǒng)可以根據(jù)用戶需要自由地進(jìn)行折彎。
(4)自主性。云計(jì)算系統(tǒng)是一個(gè)自治系統(tǒng),系統(tǒng)管理對(duì)用戶是透明的,不同的管理任務(wù)自動(dòng)完成。系統(tǒng)硬件、軟件和存儲(chǔ)可自動(dòng)配置,以便用戶按需提供。
云計(jì)算的關(guān)鍵技術(shù)是虛擬化技術(shù)。通過(guò)虛擬化單個(gè)服務(wù)器可支持多個(gè)虛擬機(jī)運(yùn)行多個(gè)操作系統(tǒng)和應(yīng)用程序,從而提高服務(wù)器的利用率,并通過(guò)虛擬化向應(yīng)用提供可擴(kuò)展的平臺(tái)服務(wù)。虛擬機(jī)技術(shù)的核心是HyperVisor(虛擬機(jī)監(jiān)控程序),它在虛擬機(jī)和底層硬件之間創(chuàng)建一個(gè)抽象層,可以攔截操作系統(tǒng)對(duì)硬件的調(diào)用,并為駐留在其上的操作系統(tǒng)提供虛擬CPU和內(nèi)存。目前,VMware ESX和Citrix xenService可以直接在硬件上運(yùn)行,虛擬操作系統(tǒng)運(yùn)行在HyperVisor上,可以根據(jù)用戶需求提供IT基礎(chǔ)設(shè)施。
隨著虛擬化技術(shù)的應(yīng)用,虛擬資源的管理是研究的熱點(diǎn)之一。有專(zhuān)家提出了一種將VM供應(yīng)模型集成到現(xiàn)有資源管理框架中的方法。VM的管理通過(guò)兩級(jí)調(diào)度方法集成到批量調(diào)度中,為用戶提供最大的努力,但目前不支持虛擬資源的預(yù)訂服務(wù)。在調(diào)度短期租用請(qǐng)求時(shí),傳統(tǒng)的調(diào)度器很難完成嚴(yán)格的預(yù)定資源服務(wù)租約。另一種方法提出了利用虛擬機(jī)進(jìn)行無(wú)縫掛起和恢復(fù)計(jì)算的能力來(lái)解決這一問(wèn)題。對(duì)于具有較不嚴(yán)格可用性需求的批處理任務(wù),調(diào)度器首先掛起當(dāng)前的計(jì)算任務(wù),然后以嚴(yán)格的可用性要求完成作業(yè),例如預(yù)定的資源分配。
隨著Web 2.0的出現(xiàn),互聯(lián)網(wǎng)上的信息呈指數(shù)級(jí)增長(zhǎng),如搜索引擎、在線事務(wù)處理等應(yīng)用系統(tǒng)處理數(shù)據(jù)的規(guī)模越來(lái)越大。云計(jì)算系統(tǒng)必須給用戶提供一個(gè)簡(jiǎn)單易用的編程模型來(lái)并行處理用戶的數(shù)據(jù),從而更好地利用云計(jì)算系統(tǒng)的資源。因此研究者提出了一些分布式系統(tǒng)和并行編程模型來(lái)支持大規(guī)模數(shù)據(jù)處理。
為了能夠?qū)A繑?shù)據(jù)進(jìn)行高效的分析處理和對(duì)特定數(shù)據(jù)進(jìn)行快速搜索,云計(jì)算系統(tǒng)的數(shù)據(jù)管理技術(shù)必須具備對(duì)海量數(shù)據(jù)的存儲(chǔ)、讀取后進(jìn)行大量分析的能力。數(shù)據(jù)的讀操作頻率要遠(yuǎn)大于數(shù)據(jù)的更新頻率,因此,云系統(tǒng)的數(shù)據(jù)管理往往采用數(shù)據(jù)庫(kù)領(lǐng)域中列存儲(chǔ)的數(shù)據(jù)管理模式,將表按列劃分后存儲(chǔ)。云計(jì)算的數(shù)據(jù)管理技術(shù)最著名的是Google的Big2 Table數(shù)據(jù)管理技術(shù)。Hadoop開(kāi)發(fā)團(tuán)隊(duì)正在開(kāi)發(fā)類(lèi)似Big Table的開(kāi)源數(shù)據(jù)管理模塊。采用列存儲(chǔ)的方式管理數(shù)據(jù),如何提高數(shù)據(jù)的更新速率以及隨機(jī)讀速率,是未來(lái)數(shù)據(jù)管理技術(shù)必須解決的問(wèn)題。
現(xiàn)代數(shù)據(jù)挖掘算法往往需要大量的訓(xùn)練過(guò)程,并做好相關(guān)的數(shù)據(jù)統(tǒng)計(jì),實(shí)現(xiàn)模型參數(shù)的求解和優(yōu)化。海量數(shù)據(jù)挖掘是一種基于大量分布式基礎(chǔ)數(shù)據(jù)挖掘的分布式并行算法。在提供詳細(xì)的并行數(shù)據(jù)挖掘算法的過(guò)程中,有必要結(jié)合關(guān)聯(lián)規(guī)則的學(xué)習(xí)分類(lèi)方法來(lái)進(jìn)行聚類(lèi)和流數(shù)據(jù)挖掘。對(duì)于分布式圖書(shū)挖掘中的中間件庫(kù),MAHOUT是一種開(kāi)源的、可擴(kuò)展的分布式數(shù)據(jù)挖掘,其中組件間庫(kù)的構(gòu)建過(guò)程實(shí)現(xiàn)了聚類(lèi)分類(lèi)和協(xié)同過(guò)濾的應(yīng)用,并完成了進(jìn)化規(guī)劃數(shù)據(jù)挖掘算法。結(jié)合Hadoop云計(jì)算的高效操作和基本框架,可以很好地挖掘和應(yīng)用云計(jì)算海量數(shù)據(jù),降低成本。
云服務(wù)通常以Web服務(wù)的形式實(shí)現(xiàn)。云服務(wù)的組織和協(xié)作可以在面向服務(wù)的體系結(jié)構(gòu)中進(jìn)行管理。SOA架構(gòu)下的云服務(wù)可以部署在各種分布式平臺(tái)上,也可以通過(guò)網(wǎng)絡(luò)訪問(wèn)各種服務(wù)。近年來(lái),SOA受到了廣泛關(guān)注,但這并不是一個(gè)新概念。基于網(wǎng)絡(luò)的SOA的一些早期實(shí)例是RPC、DCOM和0RBS(對(duì)象請(qǐng)求代理),而最近的網(wǎng)格計(jì)算是基于SOA的體系結(jié)構(gòu)和解決方案。
在SOA環(huán)境中,終端用戶請(qǐng)求IT服務(wù)(或一組服務(wù)),希望這些服務(wù)滿足一定的QoS要求,并且用戶請(qǐng)求即時(shí)服務(wù),或者在特定延遲之后滿足[4]??梢灶A(yù)見(jiàn),在未來(lái)十年內(nèi),基于服務(wù)的解決方案將是向個(gè)人和機(jī)構(gòu)提交信息和其他IT相關(guān)功能的主要手段。例如,軟件應(yīng)用、基于Web的服務(wù)、個(gè)人和商業(yè)桌面計(jì)算等。
云計(jì)算系統(tǒng)已經(jīng)成為下一代IT系統(tǒng)的發(fā)展趨勢(shì),云計(jì)算技術(shù)的發(fā)展和應(yīng)用是一種必然趨勢(shì),是企業(yè)、家庭和個(gè)人的一次劃時(shí)代的革命[5],但云計(jì)算技術(shù)仍存在不能忽視的技術(shù)困難和弱點(diǎn),云系統(tǒng)的安全性、自治性、服務(wù)質(zhì)量、服務(wù)描述發(fā)現(xiàn)、云交互等方面,還需要進(jìn)一步研究??v觀全球高端云計(jì)算技術(shù)的發(fā)展,不可否認(rèn)的是,云計(jì)算技術(shù)服務(wù)有很大的發(fā)展空間。相信在不久的將來(lái),云計(jì)算技術(shù)將取得巨大的進(jìn)步。