邵杰 胡波 楊麗娟
摘 要:隨著移動互聯(lián)網(wǎng)的快速發(fā)展,以及電信行業(yè)自身業(yè)務(wù)的不斷增長,企業(yè)數(shù)據(jù)存量已達(dá)到PB級,海量數(shù)據(jù)模式對存儲系統(tǒng)的性能及可靠性提出了更高層次的要求。當(dāng)存儲數(shù)據(jù)增加到一定規(guī)模時,會導(dǎo)致系統(tǒng)中某一個或多個存儲設(shè)備性能降低、I/O響應(yīng)時間較長、無法滿足海量數(shù)據(jù)的存儲需求。提供一種基于海量數(shù)據(jù)的數(shù)據(jù)分配方法、裝置的方案,能夠有效解決現(xiàn)有技術(shù)中無法根據(jù)數(shù)據(jù)的重要程度及當(dāng)前存儲設(shè)備的性能進行自動分級存儲等問題,從而降低存儲設(shè)備I/O響應(yīng)時間,提升設(shè)備存儲利用率。
關(guān)鍵詞:異構(gòu)數(shù)據(jù) 分級存儲 海量數(shù)據(jù)存儲 業(yè)務(wù)存儲優(yōu)先級
中圖分類號:TP311.13 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-3973(2013)007-078-02
1 引言
隨著移動互聯(lián)網(wǎng)的快速發(fā)展,智能終端的普及,以及物聯(lián)網(wǎng)、云計算等新興產(chǎn)業(yè)的興起,海量數(shù)據(jù)成為當(dāng)前最顯著的特征。預(yù)測數(shù)據(jù)顯示,到2015年,每秒鐘將有100萬分鐘的視頻內(nèi)容跨網(wǎng)絡(luò)傳輸;從2010年到2015年,全球移動數(shù)據(jù)流量將增長26倍。面對海量數(shù)據(jù)來襲,目前業(yè)界仍采用根據(jù)數(shù)據(jù)業(yè)務(wù)情況事先規(guī)劃存儲的方式,即為分屬于不同業(yè)務(wù)的數(shù)據(jù)事先分配不同的存儲設(shè)備,數(shù)據(jù)生成后直接按照事先分配的存儲設(shè)備進行存儲。
傳統(tǒng)方式進行海量數(shù)據(jù)的存儲時,一般需要單獨部署數(shù)據(jù)主控服務(wù)器來進行(所述數(shù)據(jù)主控服務(wù)器中預(yù)先存儲了事先規(guī)劃的數(shù)據(jù)存儲規(guī)則),當(dāng)系統(tǒng)中的數(shù)據(jù)增加到一定規(guī)模,導(dǎo)致系統(tǒng)中某一個或多個存儲設(shè)備中存儲了大量的數(shù)據(jù)從而導(dǎo)致相應(yīng)的存儲設(shè)備性能降低、I/O讀寫時間延長,無法滿足數(shù)據(jù)存儲需求時,需要由系統(tǒng)規(guī)劃人員根據(jù)當(dāng)前業(yè)務(wù)數(shù)據(jù)及存儲設(shè)備的實際情況以人工方式對各存儲設(shè)備的參數(shù)、性能、容量等進行調(diào)整或者由系統(tǒng)規(guī)劃人員根據(jù)自身經(jīng)驗以及系統(tǒng)當(dāng)前實際情況,重新為該系統(tǒng)制定相應(yīng)的數(shù)據(jù)存儲規(guī)則。
本文基于海量數(shù)據(jù)的數(shù)據(jù)分配方法、裝置及系統(tǒng),根據(jù)確定的該待存儲數(shù)據(jù)的數(shù)據(jù)優(yōu)先級,確定具備與該待存儲數(shù)據(jù)的數(shù)據(jù)優(yōu)先級相匹配的設(shè)備性能優(yōu)先級的在線存儲設(shè)備,這種方案將有效解決現(xiàn)有技術(shù)中存在無法根據(jù)數(shù)據(jù)重要性以及存儲設(shè)備性能進行自動劃分和存儲等問題。
2 方案設(shè)計
本方案是基于海量數(shù)據(jù)自動計算裝載和分配的方法和裝置。裝置包含:存儲設(shè)備控制模塊、設(shè)備元數(shù)據(jù)管理模塊、數(shù)據(jù)計算裝載服務(wù)模塊、數(shù)據(jù)元數(shù)據(jù)管理模塊、數(shù)據(jù)分配控制模塊。其特征是:
(1)存儲設(shè)備控制模塊對存儲系統(tǒng)中的存儲設(shè)備進行集群管理,計算設(shè)備性能由設(shè)備元數(shù)據(jù)管理模塊管理設(shè)備元數(shù)據(jù)。
(2)數(shù)據(jù)進入裝置后,數(shù)據(jù)計算裝載服務(wù)模塊對數(shù)據(jù)進行處理,計算數(shù)據(jù)優(yōu)先級保存在數(shù)據(jù)元數(shù)據(jù)管理模塊,數(shù)據(jù)分配控制模塊根據(jù)數(shù)據(jù)分配原則,優(yōu)先級權(quán)重高的數(shù)據(jù)在性能高的設(shè)備上進行存儲。
(3)數(shù)據(jù)計算裝載服務(wù)模塊與存儲設(shè)備控制模塊定時對數(shù)據(jù)元數(shù)據(jù)與設(shè)備元數(shù)據(jù)重新進行加權(quán)計算,數(shù)據(jù)分配控制模塊根據(jù)計算結(jié)果動態(tài)對數(shù)據(jù)重新進行分配,對于低于數(shù)據(jù)權(quán)重閾值的數(shù)據(jù)進行離線存儲。
本裝置海量數(shù)據(jù)裝載和分配過程,包括如下步驟:
(1)存儲設(shè)備控制模塊對存儲系統(tǒng)中的存儲設(shè)備進行集群管理。存儲設(shè)備包括文件服務(wù)器存儲、數(shù)據(jù)庫服務(wù)器存儲、內(nèi)存數(shù)據(jù)庫存儲等設(shè)備,存儲設(shè)備控制模塊包括存儲設(shè)備群集配置數(shù)據(jù)庫,當(dāng)有新存儲設(shè)備加入群集時,存儲設(shè)備控制模塊注冊新存儲設(shè)備配置信息并更新群集配置數(shù)據(jù)庫,新存儲設(shè)備會在存儲設(shè)備控制模塊獲得并保持群集配置數(shù)據(jù)庫的副本,當(dāng)存儲設(shè)備離線時,存儲設(shè)備控制模塊注銷存儲設(shè)備配置信息并更新配置數(shù)據(jù)庫并通知所有在線存儲設(shè)備,在線存儲設(shè)備獲取通知從存儲設(shè)備控制模塊獲得并保持最新的群集配置數(shù)據(jù)庫副本。
(2)存儲設(shè)備控制模塊對接入的存儲設(shè)備的性能進行加權(quán)計算,加權(quán)的指標(biāo)為設(shè)備存儲空間、CPU、內(nèi)存大小等,加權(quán)計算后的結(jié)果保存到設(shè)備元數(shù)據(jù)管理模塊。假設(shè)事先設(shè)定的存儲設(shè)備的可用容量這一性能加權(quán)指標(biāo)的權(quán)重系數(shù)為0.6,存儲設(shè)備的處理器速度這一性能加權(quán)指標(biāo)的權(quán)重系數(shù)為0.3,存儲設(shè)備的內(nèi)存大小這一性能加權(quán)指標(biāo)的權(quán)重系數(shù)為0.1,對該在線存儲設(shè)備的各性能加權(quán)指標(biāo)進行加權(quán)運算,得到該在線存儲設(shè)備的性能加權(quán)值Q;具體地,所得到的該在線存儲設(shè)備的性能加權(quán)值Q可以表示為:Q=0.6A+0.3B+0.1C。在得到該在線存儲設(shè)備的性能加權(quán)值之后,可以根據(jù)該在線存儲設(shè)備的性能加權(quán)值確定該在線存儲設(shè)備的設(shè)備性能優(yōu)先級。例如:若所得到的該在線存儲設(shè)備的性能加權(quán)值Q大于設(shè)定的第一閾值,則認(rèn)為該在線存儲設(shè)備的設(shè)備性能優(yōu)先級為高,若所得到的該在線存儲設(shè)備的性能加權(quán)值Q大于設(shè)定的第二閾值且小于設(shè)定的第一閾值,則可以認(rèn)為該在線存儲設(shè)備的設(shè)備性能優(yōu)先級為中,若所得到的該在線存儲設(shè)備的性能加權(quán)值Q小于設(shè)定的第二閾值,則可以認(rèn)為該在線存儲設(shè)備的設(shè)備性能優(yōu)先級為低,其中,所述第一閾值大于第二閾值,且所述第一閾值以及所述第二閾值的數(shù)值可以根據(jù)實際情況進行調(diào)整。
(3)設(shè)備元數(shù)據(jù)管理模塊管理設(shè)備元數(shù)據(jù),設(shè)備元數(shù)據(jù)存儲以下信息:設(shè)備Mac地址,設(shè)備名稱、加權(quán)設(shè)備性能結(jié)果。設(shè)備元數(shù)據(jù)管理模塊維持和存儲設(shè)備控制模塊心跳通訊,根據(jù)群集配置數(shù)據(jù)庫完成設(shè)備元數(shù)據(jù)注冊、更新、注銷管理。此元數(shù)據(jù)核心為多維稀疏Map(Map由key和value組成,Map的索引是行關(guān)鍵字、列關(guān)鍵字和時間戳),設(shè)備元數(shù)據(jù)以設(shè)備Mac地址為行關(guān)鍵字,以設(shè)備名稱和性能結(jié)果為列名,加權(quán)計算的時間戳作為標(biāo)識,設(shè)備元數(shù)據(jù)管理模塊計算設(shè)備時間段內(nèi)平均性能。
(4)數(shù)據(jù)進入裝置后,數(shù)據(jù)計算裝載服務(wù)模塊對數(shù)據(jù)進行加權(quán)計算,加權(quán)指標(biāo)包括數(shù)據(jù)重要度、數(shù)據(jù)訪問量、數(shù)據(jù)大小等,加權(quán)計算后由數(shù)據(jù)元數(shù)據(jù)管理模塊處理。
(5)數(shù)據(jù)元數(shù)據(jù)管理模塊管理數(shù)據(jù)加權(quán)元數(shù)據(jù),數(shù)據(jù)加權(quán)元數(shù)據(jù)存儲以下信息:塊信息關(guān)鍵字、塊名稱、加權(quán)計算結(jié)果。數(shù)據(jù)元數(shù)據(jù)管理模塊維持和數(shù)據(jù)計算裝載服務(wù)模塊心跳通訊,完成數(shù)據(jù)加權(quán)元數(shù)據(jù)注冊、更新、注銷管理。此元數(shù)據(jù)核心為多維稀疏Map(Map由key和value組成,Map的索引是行關(guān)鍵字、列關(guān)鍵字和時間戳),數(shù)據(jù)加權(quán)元數(shù)據(jù)以數(shù)據(jù)塊信息關(guān)鍵字為行關(guān)鍵字,以塊名稱和加權(quán)結(jié)果為列名,加權(quán)計算的時間戳作為標(biāo)識。
(6)數(shù)據(jù)分配控制模塊從數(shù)據(jù)元數(shù)據(jù)管理模塊和設(shè)備元數(shù)據(jù)管理模塊取得數(shù)據(jù)加權(quán)元數(shù)據(jù)及設(shè)備元數(shù)據(jù),根據(jù)數(shù)據(jù)加權(quán)計算結(jié)果進行分配,權(quán)重高的數(shù)據(jù)保存到性能高的設(shè)備之上,次之保存到性能次之的設(shè)備,依次將數(shù)據(jù)分配保存。
(7)數(shù)據(jù)計算裝載服務(wù)模塊定時從數(shù)據(jù)元數(shù)據(jù)管理模塊取得數(shù)據(jù)加權(quán)元數(shù)據(jù),對數(shù)據(jù)加權(quán)元數(shù)據(jù)重新進行加權(quán)計算,計算后由數(shù)據(jù)元數(shù)據(jù)管理模塊根據(jù)權(quán)重結(jié)果更新數(shù)據(jù)加權(quán)元數(shù)據(jù)Map。
(8)存儲設(shè)備控制模塊定時從設(shè)備元數(shù)據(jù)管理模塊取得設(shè)備元數(shù)據(jù),對存儲設(shè)備重新進行性能加權(quán)計算,計算后有設(shè)備元數(shù)據(jù)管理模塊根據(jù)權(quán)重結(jié)果更新設(shè)備元數(shù)據(jù)Map。
(9)數(shù)據(jù)分配控制模塊定時從數(shù)據(jù)元數(shù)據(jù)管理模塊和設(shè)備元數(shù)據(jù)管理模塊取得數(shù)據(jù)元數(shù)據(jù)及設(shè)備元數(shù)據(jù),根據(jù)數(shù)據(jù)權(quán)重和設(shè)備性能權(quán)重重新進行數(shù)據(jù)分配,權(quán)重高的數(shù)據(jù)更新到性能高的設(shè)備,對于低于預(yù)先設(shè)置的數(shù)據(jù)權(quán)重閾值的數(shù)據(jù)進行離線存儲。
3 結(jié)論
綜上所述,存儲設(shè)備控制模塊對存儲系統(tǒng)中的存儲設(shè)備進行集群管理,計算設(shè)備性能由設(shè)備元數(shù)據(jù)管理模塊管理設(shè)備元數(shù)據(jù),報表數(shù)據(jù)進入裝置后,數(shù)據(jù)計算裝載服務(wù)模塊對數(shù)據(jù)進行處理,計算數(shù)據(jù)優(yōu)先級保存在報表元數(shù)據(jù)管理模塊,數(shù)據(jù)分配控制模塊根據(jù)數(shù)據(jù)分配原則,優(yōu)先級權(quán)重高的報表數(shù)據(jù)在性能高的設(shè)備上進行存儲。數(shù)據(jù)計算裝載服務(wù)模塊與存儲設(shè)備控制模塊定時對報表元數(shù)據(jù)與設(shè)備元數(shù)據(jù)重新進行加權(quán)計算,數(shù)據(jù)分配控制模塊根據(jù)計算結(jié)果動態(tài)對數(shù)據(jù)重新進行分配,對于低于數(shù)據(jù)權(quán)重閾值的報表數(shù)據(jù)進行離線存儲。對比原有存儲技術(shù)原理,可以看出本方案的優(yōu)勢在于能夠根據(jù)存儲設(shè)備實際情況進行自動計算裝載和分配,充分發(fā)揮到存儲設(shè)備的最佳性能。
參考文獻(xiàn):
[1] 李華植.海量數(shù)據(jù)庫解決方案.北京:電子工業(yè)出版社,2010.
[2] 呂帥,劉光明.海量信息分級存儲數(shù)據(jù)遷移策略研究[J].計算機工程與科學(xué),2009(01).