如何設(shè)計企業(yè)云存儲架構(gòu)
在企業(yè)內(nèi)部服務(wù)平臺中,首先需要實現(xiàn)云存儲功能,以提供各部門用戶數(shù)據(jù)的存儲功能,方便用戶獲取各自需要的數(shù)據(jù),包括GPS、視頻、語音等模擬和數(shù)字信息等數(shù)據(jù)。其次需要接入消息與通訊系統(tǒng),如350兆集群呼叫,手機、移動終端、 固話,及Mail,MSN、QQ、微信等即時通訊(IM Instant Messenger),以實現(xiàn)動態(tài)消息推送和位置服務(wù)。第三是實現(xiàn)業(yè)務(wù)功能開發(fā)與運行,如在線播放云存儲中的視頻監(jiān)控圖像、照片及相關(guān)資料,以及各業(yè)務(wù)子系統(tǒng)的運行,為一線用戶和領(lǐng)導(dǎo)提供分析和指揮決策依據(jù)。為此需要相應(yīng)的基礎(chǔ)軟硬件資源,如服務(wù)器、存儲和網(wǎng)絡(luò)設(shè)備、操作系統(tǒng)和數(shù)據(jù)庫等商用軟件。企業(yè)云架構(gòu)示意見圖1。云存儲、通訊及消息、業(yè)務(wù)運行系統(tǒng)和軟硬件基礎(chǔ)資源這四個基本要素構(gòu)成了一個面向終端用戶的操作系統(tǒng)平臺,或稱為企業(yè)云,其能夠通過各種瀏覽器或手機App及PC機隨時訪問,滿足用戶在任意時刻、任意地點查看信息的需求。
作為企業(yè)云的核心是存儲和計算,其它都構(gòu)建在存儲和計算之上的基礎(chǔ)服務(wù)和用戶運用。企業(yè)云主要涉及數(shù)據(jù)存儲架構(gòu)和用戶訪問優(yōu)化等兩方面的技術(shù),下面分別予以簡述。
云存儲架構(gòu)設(shè)計
云存儲主要是為了存儲數(shù)據(jù),方便用戶訪問,同時也是為了解決信息共享問題。在云存儲建立之前,各業(yè)務(wù)部門均是自建專用系統(tǒng),網(wǎng)絡(luò)雖然相通,但由于數(shù)據(jù)分散存儲在各自系統(tǒng)中,導(dǎo)致信息在業(yè)務(wù)協(xié)同時關(guān)聯(lián)、互查和引用不流暢。以前各系統(tǒng)間的數(shù)據(jù)整合和共享主要靠交換接口標(biāo)準(zhǔn)化等SOA方式來實現(xiàn)[4],對于非結(jié)構(gòu)化數(shù)據(jù)幾乎無法實現(xiàn),且改造各子系統(tǒng)的工作量巨大和繁瑣。
采用云存儲技術(shù)就可以克服上述問題,本文采用HDFS(Hadoop Distributed File System)分布式文件系統(tǒng)的存儲方式,原各業(yè)務(wù)信息管理系統(tǒng)的數(shù)據(jù)通過Sqoop工具導(dǎo)入,HDFS實現(xiàn)數(shù)據(jù)層面的共享。HDFS包括主控服務(wù)器(同時配置備用主控服務(wù)器以便在故障時接管服務(wù)),多個數(shù)據(jù)服務(wù)器(存儲節(jié)點),前端接入終端服務(wù)消息平臺及各業(yè)務(wù)子系統(tǒng)數(shù)據(jù)庫服務(wù)器。
圖2 分布式文件系統(tǒng)示意圖
主控服務(wù)器Master負(fù)責(zé)維護整個文件系統(tǒng)的命名空間與路由,以提供用戶使用。該分布式系統(tǒng)架構(gòu)***的缺點是主控服務(wù)器為單點結(jié)構(gòu),一旦出現(xiàn)故障將造成全系統(tǒng)癱瘓,故在實際應(yīng)用中采用HA、UCARP等容災(zāi)備份,以便在故障時接管服務(wù)。主控服務(wù)器的命名空間結(jié)構(gòu)采用目錄樹結(jié)構(gòu),建立元數(shù)據(jù)到數(shù)據(jù)服務(wù)器的映射關(guān)系,文件之間的關(guān)系等。為了提高檢索效率,可以采取元數(shù)據(jù)內(nèi)存化管理方式。主控服務(wù)器通過心跳線方式輪詢數(shù)據(jù)服務(wù)器(DS),當(dāng)發(fā)現(xiàn)有DS宕機時,對一些副本數(shù)不足的文件(塊)執(zhí)行復(fù)制計劃,也可根據(jù)DS數(shù)量增減需要執(zhí)行副本遷移任務(wù)。
數(shù)據(jù)服務(wù)器主要解決海量數(shù)據(jù)的低成本存儲和快速檢索,提高數(shù)據(jù)存儲的安全性問題。其解決方案是將大塊數(shù)據(jù)劃分為小數(shù)據(jù)塊,然后均勻分布到多臺數(shù)據(jù)服務(wù)器上,每個數(shù)據(jù)服務(wù)器存儲的文件數(shù)量就少了,對于大文件數(shù)據(jù)的處理方法是將大文件劃分成多個相對較小的片段存儲在多個數(shù)據(jù)服務(wù)器上,把單個數(shù)據(jù)服務(wù)器上存儲的文件數(shù)降到單機能解決的規(guī)模,以此降低存儲設(shè)備成本和提高效率,并通過多副本復(fù)制來提高數(shù)據(jù)安全性。
終端服務(wù)平臺
企業(yè)協(xié)同作業(yè)的終端服務(wù)平臺又稱為“永遠(yuǎn)在線推送平臺”(AOI Always Online Infrastructure),該平臺是以協(xié)同作業(yè)應(yīng)用為導(dǎo)向,以指揮中心的“推送”技術(shù)為基礎(chǔ),為一線人員提供統(tǒng)一的消息推送服務(wù),實現(xiàn)了將消息和內(nèi)容實時推送到終端的全新體驗。
永遠(yuǎn)在線推送平臺(AOI)包括終端中間件和在線服務(wù)器,終端中間件提供各類移動和固定終端的接入以及各終端間的通信路由功能;在線服務(wù)器提供統(tǒng)一的永遠(yuǎn)在線連接安全認(rèn)證、消息緩存服務(wù)、在線業(yè)務(wù)處理子系統(tǒng)。終端服務(wù)消息平臺示意圖如下:
其中,SIP(Session Initiation Protocol)網(wǎng)主要實現(xiàn)會話功能,這些會話可以是Internet多媒體會議、IP電話或多媒體分發(fā),會話的參與者可以通過組播(multicast)、網(wǎng)狀單播(unicast)或兩者的混合體進行通信。
XMPP(The Extensible Messaging and Presence Protocol)網(wǎng)主要用于服務(wù)類實時通訊,即時消息(IM)及在線現(xiàn)場探測[2]。XMPP的核心是XML流傳輸協(xié)議,借助于XML易于解析和閱讀的特性,使得XMPP的協(xié)議能夠允許網(wǎng)絡(luò)用戶簡便和流暢地向其他用戶發(fā)送信息。
終端服務(wù)消息平臺采用軟交換技術(shù)(SS Software Switching)吸取了IP、ATM、IN、TDM等技術(shù)的優(yōu)點,采用開放的分層體系結(jié)構(gòu),不但實現(xiàn)了各種通訊協(xié)議的兼容,更重要的是實現(xiàn)了業(yè)務(wù)系統(tǒng)的融合,為終端用戶提供了統(tǒng)一的消息和內(nèi)容服務(wù)接口。