未來云計算的發(fā)展趨勢可以用5個字概括:“三化一提升”,其中“三化”是指應(yīng)用領(lǐng)域化、資源泛在化和系統(tǒng)平臺化,而“一提升”則指服務(wù)質(zhì)量的提升。隨著互聯(lián)網(wǎng)聯(lián)網(wǎng)設(shè)備越來越多,我們正進入一個“人-機-物”融合、萬物互聯(lián)的時代,如何將各種網(wǎng)絡(luò)資源進行有效管理,如何應(yīng)對各種各樣的應(yīng)用需求,從而使得應(yīng)用支撐和資源之間能夠更好地溝通,是未來云計算技術(shù)需要著重解決的問題。
應(yīng)用領(lǐng)域化
應(yīng)用領(lǐng)域化是指面向各個領(lǐng)域、各種應(yīng)用需求的領(lǐng)域云和行業(yè)云等將會不斷出現(xiàn),例如支持電力的云、醫(yī)療的云和交通的云等等。隨著云計算底層支撐技術(shù)的日益成熟,云計算的關(guān)注重點將轉(zhuǎn)移到對上層應(yīng)用的支撐。面向特定領(lǐng)域需求,提供支撐應(yīng)用開發(fā)和運行的API、解決方案及其一體化環(huán)境,以支撐更多云應(yīng)用,是云計算發(fā)展面臨的新挑戰(zhàn)?梢灶A(yù)期,領(lǐng)域云和行業(yè)云等專用云平臺將具有廣闊的空間。
應(yīng)用領(lǐng)域化的一個重要技術(shù)是具備云感知能力的軟件服務(wù)。早期的信息系統(tǒng)是緊耦合一體化的,應(yīng)用自我建設(shè)、自我包含,業(yè)務(wù)處理功能難以分割;軟件即服務(wù)(SaaS)概念的提出催生了SOA體系,用于實現(xiàn)松耦合的分布式應(yīng)用,應(yīng)用建設(shè)依賴于互聯(lián)網(wǎng)上的“粗粒度”服務(wù),業(yè)務(wù)處理功能分散存在于互聯(lián)網(wǎng)上;而云計算的新發(fā)展正在催生SaaS 2.0,各種服務(wù)應(yīng)用充分利用云提供的API,基于云所提供的服務(wù)或者微服務(wù)進行構(gòu)建,服務(wù)應(yīng)用運行在云中,同時感知云環(huán)境中各種資源的變化,提供優(yōu)化的服務(wù)質(zhì)量。
資源泛在化
未來“人-機-物”融合的世界,計算資源廣泛多樣,需要充分發(fā)揮各種資源的能力。在移動互聯(lián)網(wǎng)的驅(qū)動下,云和智能終端開始融合(云-端融合),未來甚至涉及物聯(lián)網(wǎng)節(jié)點的融合,新的云-端融合的云計算體系架構(gòu)正在形成,簡單地側(cè)重使用某一端資源已經(jīng)不再適用,按需(動態(tài)可變地)使用客戶端和服務(wù)器資源,是云計算架構(gòu)發(fā)展的又一新趨勢。
一方面,客戶端和服務(wù)端的軟件資源、硬件資源和能源可以在兩端實現(xiàn)合理分布和應(yīng)用,兩端的數(shù)據(jù)和獨特資源也可以實現(xiàn)共享;另一方面,未來的云將不僅需要支撐現(xiàn)在移動互聯(lián)網(wǎng)的智能手機和平板電腦等終端,還需要支撐物聯(lián)網(wǎng)所承載的各種各樣的聯(lián)網(wǎng)設(shè)備,在這樣一個泛在化網(wǎng)絡(luò)環(huán)境下,面向各種海量新硬件的云資源管理將會面臨很大的挑戰(zhàn)。
越來越多的新型硬件進入云平臺。在服務(wù)器硬件方面,包括RDMA和NVM等新型硬件設(shè)備開始投入應(yīng)用,諸如機器學(xué)習(xí)和數(shù)據(jù)挖掘等專用計算架構(gòu)不斷涌現(xiàn),各種類腦、神經(jīng)網(wǎng)絡(luò)、深度學(xué)習(xí)等專用芯片也開始上市……如何及時、有效地管理和利用新的硬件設(shè)備和架構(gòu),充分發(fā)揮其效能,是云管理平臺的一項重要任務(wù)。在終端硬件方面,新型的傳感器設(shè)備種類繁多且數(shù)量巨大,從攝像頭到GPS定位,從監(jiān)測血壓、測量海拔高度到光陀螺儀等等,如此海量的傳感器能否在云平臺上實現(xiàn)統(tǒng)一管理,也是新型云平臺將面臨的挑戰(zhàn)。
在資源泛在化的背景下,云還呈現(xiàn)出多尺度和差異化的現(xiàn)象,公有云、私有云和混合云并存;既有少量規(guī)模龐大的大型云,更有大量的利用已有資源的微小云;有實體云,還有基于實體云的虛擬云和聯(lián)盟云。未來跨云計算的需求也將越來越突出,如何跨越多云為應(yīng)用提供服務(wù),實現(xiàn)多云之間的開放協(xié)作和深度合作,也是資源泛在化背景下的一個重要課題。
針對多云協(xié)作的問題,我國科學(xué)家提出了云際計算的概念,希望實現(xiàn)云服務(wù)實體之間的開放協(xié)作和多方云資源的深度融合,從而方便用戶和開發(fā)者定制云服務(wù)、創(chuàng)造云價值,這是下一代云計算研究的一個代表性嘗試。
系統(tǒng)平臺化
云計算的另一個重要趨勢是系統(tǒng)平臺化,云計算支撐系統(tǒng)呈現(xiàn)從云資源管理系統(tǒng)向云操作系統(tǒng)演化的趨勢。“云操作系統(tǒng)”的概念現(xiàn)在用得比較多,但均未達到預(yù)期的操作系統(tǒng)形態(tài)和能力。什么是操作系統(tǒng)?簡單而言就是向下管理資源,向上提供服務(wù)。例如單機操作系統(tǒng),其基本由兩大功能構(gòu)成:管理資源和管理作業(yè)。目前云管理系統(tǒng)主要作用是管理云的資源,以支撐各種應(yīng)用的運行;未來,其還要管理云上各種各樣的作業(yè),這一理念和單機操作系統(tǒng)相似,是系統(tǒng)平臺化之路共性不斷凝練和沉淀的結(jié)果。
云管理系統(tǒng)的共性理念是什么?我們的理解是:其應(yīng)包含云操作系統(tǒng)、單機操作系統(tǒng)、各種各樣的應(yīng)用容器和中間件,以支撐各類云服務(wù)。要實現(xiàn)真正意義上的云操作系統(tǒng),需要向下管理所有云端和終端的資源,向上則對多樣化的資源應(yīng)用需求提供相應(yīng)的API服務(wù)。
云操作系統(tǒng)的發(fā)展面臨著哪些挑戰(zhàn)?在現(xiàn)階段,需要應(yīng)對復(fù)雜多樣的應(yīng)用需求,將傳統(tǒng)應(yīng)用無縫云化,需要支持基于互聯(lián)網(wǎng)的多終端一體交互方式,以及云內(nèi)海量異構(gòu)資源的有效管理等;更進一步則需要向上更好地支撐應(yīng)用,探索原生云應(yīng)用的運行與構(gòu)造技術(shù),研究開發(fā)新型程序設(shè)計模型和相關(guān)的編程語言,設(shè)計云作業(yè)的統(tǒng)一調(diào)度和管理機制,進行跨云和云際資源的按需整合,實現(xiàn)云服務(wù)的自主協(xié)同等。
在整個云資源的管理與定制方面,軟件定義是一個重要途徑,通過軟件定義方式可以完成深度定制,以管理各種各樣的資源,包括分布式資源的高效融合、巨量資源彈性調(diào)配、極端硬件特性和移動硬件特性的虛擬化、集約化的資源便捷共享、可定制化的系統(tǒng)軟件棧,以及終端和云端的融合協(xié)作等,為從微型虛擬機、小型虛擬機到滿足更大需要的巨型虛擬機提供寬譜系的管理支撐。
服務(wù)質(zhì)量的提升
服務(wù)質(zhì)量的提升可以用3個詞概括——更高、更快、更強壯。其中,“高”意味著支持高吞吐,這需要聚合大規(guī)模資源、提供海量數(shù)據(jù)的處理能力,以及實現(xiàn)高吞吐并發(fā)訪問。支持高吞吐是很多云應(yīng)用的需求,例如阿里巴巴每年“雙十一”的巨量交易、12306網(wǎng)站高峰時的巨量訪問,以及其它各種各樣面向大規(guī)模社交圈數(shù)據(jù)的跨地域分布式存儲系統(tǒng)等,都對高吞吐具有很大的需求。
在高吞吐的前提下還要實現(xiàn)“快”響應(yīng),也就是在提供高吞吐的同時顯著降低請求的響應(yīng)時間,提升用戶體驗與服務(wù)質(zhì)量。這方面的需求在現(xiàn)實中也有很多,據(jù)Amazon統(tǒng)計,每降低100毫秒延遲可以換來1%銷售額的提高;Akamai的研究指出:網(wǎng)頁加載延遲1秒將導(dǎo)致平均7%客戶流失、減少11%網(wǎng)頁訪問量和16%客戶滿意度;增強/虛擬現(xiàn)實(AR/VR)需要在1毫秒內(nèi)完成場景的構(gòu)建,等等。
基于云的大量應(yīng)用形態(tài)能否獲得成功或提供高的使用質(zhì)量,實現(xiàn)快響應(yīng)就是其中的關(guān)鍵。要實現(xiàn)快響應(yīng),云架構(gòu)和軟件棧的低延遲設(shè)計就尤為重要。云計算應(yīng)用的延遲主要包括兩個方面:一是網(wǎng)絡(luò)帶來的延遲,二是云中心帶來的延遲。按當(dāng)前統(tǒng)計來看,二者大約各占50%。
應(yīng)對網(wǎng)絡(luò)帶來的延遲涉及到帶寬的提升,也需要數(shù)據(jù)中心合理的分布,以便用戶可以盡可能訪問就近的數(shù)據(jù)中心;應(yīng)對云中心帶來的延遲則需要對基于分層的云計算軟件棧進行垂直整合,當(dāng)前云軟件棧主要面對高吞吐設(shè)計,在低延遲尤其是尾部延遲方面有明顯不足,因此技術(shù)上還有很大發(fā)展空間。
更“強壯”則體現(xiàn)在更好的可靠和可用性保障。云計算的規(guī)模和復(fù)雜度的快速增長要求更為全面的質(zhì)量保證:
首先,數(shù)據(jù)中心規(guī)模不斷增長,規(guī)模部署成為事實,高度集成的云計算環(huán)境故障越來越多,故障帶來的損失也越來越大;
其次,虛擬化構(gòu)成的彈性資源池快速增長且組織復(fù)雜,增加了管理的復(fù)雜度;
最后,越來越多的機構(gòu)計劃采用云計算平臺,持續(xù)發(fā)展的業(yè)務(wù)種類導(dǎo)致了需求多樣性。
在這種情況下,如何實現(xiàn)高可靠和高可用的云計算系統(tǒng)成為一個重大挑戰(zhàn),當(dāng)前已有各種技術(shù)研發(fā)和嘗試,諸如采用非易失性內(nèi)存來提升內(nèi)存計算中數(shù)據(jù)的可靠性和可用性、使用分布式UPS替代傳統(tǒng)集中式UPS以保證電源供給、在系統(tǒng)級支持虛擬機/容器的狀態(tài)同步和動態(tài)遷移,以及在應(yīng)用層次上的數(shù)據(jù)并行計算和圖并行計算系統(tǒng)和機制等。
互聯(lián)網(wǎng)已經(jīng)逐步演化成一個全球泛在的計算平臺,其開放、動態(tài)和難控的特性對軟件技術(shù)提出了一系列重大挑戰(zhàn)。我國學(xué)者從軟件角度探討互聯(lián)網(wǎng)計算,提出了一種互聯(lián)網(wǎng)軟件新范型——網(wǎng)構(gòu)軟件(Internetware)。近幾年,北大軟件團隊基于網(wǎng)構(gòu)軟件模式已經(jīng)在混合云管理、數(shù)據(jù)互操作平臺和基于云的大數(shù)據(jù)處理方面開展了一些前沿性的研究工作。