黃 永 生
(合肥職業(yè)技術學院 現(xiàn)代教育技術中心,安徽 巢湖 238000)
隨著互聯(lián)網(wǎng)技術和計算機技術的發(fā)展,各種應用業(yè)務不斷產生新的數(shù)據(jù)信息,造成數(shù)據(jù)信息量呈現(xiàn)幾何式增長。這些數(shù)據(jù)信息是企業(yè)各種業(yè)務運行的基礎,對于企業(yè)發(fā)展至關重要,因此企業(yè)每年都會投入大量的資金對數(shù)據(jù)信息進行存儲和管理[1]。然而,數(shù)據(jù)的增長是無限的,單靠企業(yè)的本地存儲遠遠無法滿足需要,造成企業(yè)的數(shù)據(jù)信息存儲壓力增大,且隨著時間推移,應用業(yè)務產生新的數(shù)據(jù)信息經常出現(xiàn)不可儲存或者已經存儲的數(shù)據(jù)不可訪問的問題。在此背景下,分布式存儲方式出現(xiàn),即將數(shù)據(jù)存儲到由許多獨立、廉價的機器組成的存儲介質當中,如磁盤、磁帶、光盤、固態(tài)盤等[2]。然而,分布式存儲存在一個大的問題,即數(shù)據(jù)信息不能均衡地存儲在設備上,造成了局部或部分存儲設備存儲量過大,而有的存儲設備存儲量過小,導致存儲設備空間利用率較低,增加了數(shù)據(jù)存儲成本、降低了數(shù)據(jù)存儲效率。
面對上述問題,很多專家和學者都進行了研究和分析[3-5]。如,余蕓等人提出基于一致性Hash的電力企業(yè)MDS集群高質量元數(shù)據(jù)管理模型[4],通過一致性Hash算法設計元數(shù)據(jù)框架,構建一致性Hash集群數(shù)據(jù)管理模型,備份結點策略保留MDS失效數(shù)據(jù)信息,利用數(shù)據(jù)延遲處理方式促使集群變化數(shù)據(jù)遷移量減少,能夠有效實現(xiàn)數(shù)據(jù)進行分布均勻;龍賽琴等人提出一種基于CloudSim的分級云存儲仿真模型[5],通過云存儲集群進行數(shù)據(jù)存儲分級設計,利用數(shù)據(jù)I/O業(yè)務處理方法進行稠密數(shù)據(jù)特征優(yōu)化,選擇適合的行存儲或列存儲格式;D.M.Banks等人研究了一種固態(tài)存儲裝置,以此來應對越來越多的數(shù)據(jù)存儲問題,緩解了企業(yè)數(shù)據(jù)存儲壓力。
以上方法均有效解決了企業(yè)數(shù)據(jù)存儲壓力,但是未考慮存儲成本及數(shù)據(jù)的利用率。為此,本研究結合前人研究經驗,在分級思想的引導下,結合大數(shù)據(jù)分析技術,實現(xiàn)大數(shù)據(jù)負載平衡存儲的目的。該研究首先對分級存儲方式及其對應的存儲設備進行分析,然后對數(shù)據(jù)信息價值進行評估,最后根據(jù)評估結果將數(shù)據(jù)信息遷移到不同的存儲設備中,實現(xiàn)數(shù)據(jù)存儲。通過本研究以期為數(shù)據(jù)存儲提供參考和借鑒,解決企業(yè)數(shù)據(jù)存儲壓力。
隨著數(shù)據(jù)量的增多,企業(yè)面臨的數(shù)據(jù)存儲壓力越來越大,因此對數(shù)據(jù)存儲提出了更高的要求。面對這種情況,企業(yè)一開始選擇擴大存儲空間來解決,但是業(yè)務數(shù)據(jù)每時每刻都在產生,因此擴大存儲空間僅能暫時解決問題,而要長遠解決問題,只能選擇將數(shù)據(jù)存儲到異地存儲設備中[3]。在此背景下,本文研究一種分級存儲方法,將海量數(shù)據(jù)均衡地分布存儲到不同等級的異地設備中。數(shù)據(jù)分級存儲方法邏輯結構如圖1所示。
圖1 數(shù)據(jù)分級存儲方法邏輯結構
分級存儲,顧名思義,就是將數(shù)據(jù)分為不同的等級,分別轉移到對應的不同設備中[4]。海量的數(shù)據(jù)中并不是所有的數(shù)據(jù)都是重要的,因此對應的存儲方式和存儲設備也是不同的。在本文當中,數(shù)據(jù)存儲可以劃分4個等級方式,即一到四級(圖2)。
圖2 分級存儲劃分
一級存儲方式:負責存儲企業(yè)業(yè)務應用運行中新產生的數(shù)據(jù)以及一段時間內被訪問最多的數(shù)據(jù);
二級存儲方式:負責存儲兩種類型的數(shù)據(jù),即共享型和文件型;
三級存儲方式:負責存儲用戶訪問頻率較低的數(shù)據(jù);
四級存儲方式:負責存儲從未被用戶訪問過的數(shù)據(jù),只用于數(shù)據(jù)備份[5]。
在圖2中,各個等級存儲方式中所用到的各級存儲設備特點見表1。
表1 各級存儲設備特點對比
數(shù)據(jù)分級的關鍵在于確定數(shù)據(jù)價值。根據(jù)數(shù)據(jù)價值才能確定其對應的存儲方式和存儲設備。在這里采用一種基模糊綜合評價方法進行數(shù)據(jù)機制評估[6]。模糊綜合評價法是指利用隸屬度理論對難以通過具體數(shù)據(jù)描述的評價對象進行量化,具體過程如下。
步驟1:確定數(shù)據(jù)價值評估指標。在這里主要包括訪問頻率、數(shù)據(jù)完整性、數(shù)據(jù)規(guī)模、數(shù)據(jù)時效性等[7]。
步驟2:確定數(shù)據(jù)價值評語集,見表2。
表2 評語集
步驟3:計算評價指標的權重向量,在這里采用熵權法進行。熵權法是一種根據(jù)指標攜帶信息量的多少來確定指標權重的一種方法,攜帶的信息量越大,指標權重就越大[8]。
step1:將數(shù)據(jù)價值評估指標進行標準化處理,標準化處理方法主要有3種
1)Min-Max標準化
(1)
2)正規(guī)化方法
(2)
3)log函數(shù)轉換法
(3)
其中,x′為規(guī)范化后的大數(shù)據(jù),x為原始數(shù)據(jù),max為大數(shù)據(jù)集中最大值,min為大數(shù)據(jù)集中的最小值,a為對應特征均值,b為標準差;
step2:計算第j項數(shù)據(jù)的信息熵;
step3:計算第j項數(shù)據(jù)的信息熵冗余度;
step4:計算第j項數(shù)據(jù)的權重。
步驟4:進行單因素模糊評價,確立模糊關系矩陣R。
步驟5:根據(jù)隸屬度矩陣,構建評價矩陣。
步驟6:利用合適的合成算子將評價矩陣與模糊關系矩陣合成,得到各被評價數(shù)據(jù)的模糊綜合評價結果向量。
步驟7:將綜合評價結果轉換為綜合分值,并進行從大到小排序,挑選出最優(yōu)者。
步驟8:對比表2評語集,得到數(shù)據(jù)價值的評語。
基于上述數(shù)據(jù)價值評估結果,進行數(shù)據(jù)分級存儲,這也是本文研究的重點。數(shù)據(jù)分級存儲是指根據(jù)數(shù)據(jù)價值存儲到不同等級的存儲設備當中。目前數(shù)據(jù)分級存儲方法主要有兩種,即固定閾值法和高低水位法[9]。
1)固定閾值法
固定閾值法關鍵在于將用戶對數(shù)據(jù)的訪問頻率作為分級存儲的衡量指標[10]。該方法有兩種遷移存儲方向,即由高級存儲向低級存儲或者由低級存儲向高級存儲,其具體過程如圖3所示。
圖3 固定閾值法基本流程
2)高低水位法
高低水位法就是利用水往低處流的原理來進行數(shù)據(jù)分級遷移與存儲。在該種算法中,數(shù)據(jù)占據(jù)存儲空間的最高值作為數(shù)據(jù)遷移存儲的開始,然后以數(shù)據(jù)訪問頻率作為數(shù)據(jù)分級遷移標準,并且以數(shù)據(jù)占據(jù)存儲空間的最低值作為數(shù)據(jù)停止遷移的條件[11]。該方法具體流程如下。
步驟1:設置參數(shù),包括數(shù)據(jù)存儲空間占有率最大值M、數(shù)據(jù)存儲空間占有率最小值N、數(shù)據(jù)訪問頻率F、數(shù)據(jù)存儲空間尺寸S、數(shù)據(jù)實際占有存儲空間率X、遷移存儲的數(shù)據(jù)隊列長度Y,最長隊列數(shù)Z[12];
步驟2:根據(jù)數(shù)據(jù)存儲空間占有率最大值M和最小值N、數(shù)據(jù)存儲空間尺寸S,計算最長隊列數(shù)Z,計算公式為Z=(M-N)·S
步驟4:對所有帶存儲數(shù)據(jù)的訪問頻率按照從小到大的順序排列;
步驟5:然后按排序表進行分級,分別選擇一級、二級、三級和四級存儲設備;
步驟6:以數(shù)據(jù)的訪問頻率最小值開始,逐一加入到遷移存儲隊列中;
步驟7:判斷遷移存儲的數(shù)據(jù)隊列長度Y是否大于等于最長隊列數(shù)Z?若大于,則數(shù)據(jù)遷移存儲完成,否則,將隊列中的數(shù)據(jù)逐一遷移存儲到對應的等級的存儲設備中;
步驟8:重復上述步驟2到步驟7,直至所有數(shù)據(jù)遍歷完成;
步驟9:數(shù)據(jù)分級存儲完成。
3)負載平衡法
上述兩種數(shù)據(jù)分級存儲方法各有不足,前者單純將數(shù)據(jù)訪問頻率作為分級存儲的評定標準,分級精度不足,而后者通過更適用處理數(shù)據(jù)量較小的情況,一旦數(shù)據(jù)量過大會過多占用服務器資源[13]。為此,針對上述情況,本次將數(shù)據(jù)價值評估結果作為分級閾值,并結合上述兩種方法進行數(shù)據(jù)分級存儲。
具體過程如下。
步驟1:確定常量,包括數(shù)據(jù)存儲空間占有率最大值M、數(shù)據(jù)存儲空間占有率最小值N、數(shù)據(jù)價值數(shù)值F1、數(shù)據(jù)存儲空間尺寸S、數(shù)據(jù)實際占有存儲空間率X、遷移存儲的數(shù)據(jù)隊列長度Y,最長隊列數(shù)Z;
步驟2:根據(jù)數(shù)據(jù)存儲空間占有率最大值M和最小值N、數(shù)據(jù)存儲空間尺寸S,計算最長隊列數(shù)Z;
步驟3:當?shù)谝淮纬霈F(xiàn)數(shù)據(jù)實際占有存儲空間率X大于數(shù)據(jù)存儲空間占有率最大值M時,利用高低水位法對數(shù)據(jù)進行初次遷移,并將這次遷移數(shù)據(jù)中價值數(shù)值作為數(shù)據(jù)下一次遷移的閾值,記為F2[14];
步驟4:當?shù)诙纬霈F(xiàn)數(shù)據(jù)實際占有存儲空間率X大于數(shù)據(jù)存儲空間占有率最大值M時,將F1 步驟5:判斷遷移存儲的數(shù)據(jù)隊列長度Y是否大于等于最長隊列數(shù)Z。當大于時,根據(jù)F1值將遷移隊列中的數(shù)據(jù)進行排序,從F1數(shù)值最大開始移出遷移隊列,否則,遷移隊列完成; 步驟6:如果F1 步驟7:將隊列中的數(shù)據(jù)逐一遷移存儲到對應的等級的存儲設備中; 步驟8:記錄最后一個遷移隊列中數(shù)據(jù)的最小價值數(shù)值F3與F2的平均值,作為下次遷移的閾值F4; 步驟9:重復上述過程,直至所有數(shù)據(jù)遍歷完成; 步驟10:數(shù)據(jù)分級存儲完成。 為測試所研究的基于大數(shù)據(jù)分析的負載平衡數(shù)據(jù)分級存儲方法,以與一般存儲方法進行對比,仿真實驗平臺為MATLAB。 本次仿真實驗環(huán)境見表3。 表3 仿真實驗環(huán)境 基于大數(shù)據(jù)分析的負載平衡數(shù)據(jù)分級存儲方法拓撲結構如圖4所示。 圖4 分級存儲方法拓撲結構 根據(jù)存儲方式等級,實驗中需要四種等級的存儲設備,即FC-SAN設備、DAS設備、NAS設備、本機磁盤,具體選型如下。 1)FC-SAN設備。海數(shù)存16盤位視頻監(jiān)控FC-SAN存儲設備HSC-I16,單臺可提供1 000 MB/S的讀寫帶寬,容量可擴展至1 PB以上的裸存儲容量,滿足從區(qū)域分布式到次級中心到主控中心的多級監(jiān)控系統(tǒng)的數(shù)據(jù)讀寫性能和存儲容量需求。 2)DAS設備:Drobo(德寶)5C DAS。Drobo5C擁有5個磁盤槽,可支持64 TB數(shù)據(jù)存儲,并且提供了斷電保護功能,避免磁盤驅動器因斷電消失而意外損毀的狀況。擁有先進的自我保護功能,通過建立第二組備援空間專門備份啟動扇區(qū)以及其內容,能保護操作系統(tǒng)、應用軟件等數(shù)據(jù)。 3)NAS設備:鐵威馬F4-220。內置雙硬盤插槽,最大支持10 TB存儲空間。外接存儲(個人云伴侶或磁盤陣列等)可輕松擴展至128 TB空間,海量存儲,取之無盡。 4)本機磁盤。WD西部數(shù)據(jù)固態(tài)硬盤1T。無可移動部件,能防止硬盤意外碰撞或掉落時發(fā)生數(shù)據(jù)丟失。其MTTF(平均無故障時間)達175萬h,持久率高達500 TBW(寫入的兆字節(jié)數(shù)),使用壽命更長,哪怕在高負荷的工作環(huán)境下,也能輕松應對。 仿真實驗中所用到的數(shù)據(jù)包價值分布情況見表4。 表4 數(shù)據(jù)價值分布表 從表5可以看出,將表4中不同價值的數(shù)據(jù)分別分級存儲到不同等級的存儲設備中,準確性均在90%以上,證明了所研究存儲方法性能的優(yōu)點。 表5 數(shù)據(jù)分級準確性 數(shù)據(jù)存儲的目的是方便用戶,更快、更準確地查詢數(shù)據(jù)。因此,為了與一般存儲方法進行對比,用戶輸入同一指令到不同的存儲系統(tǒng)當中,進行數(shù)據(jù)查詢,并統(tǒng)計數(shù)據(jù)查詢響應時間和準確性,結果見表6。 表6 數(shù)據(jù)查詢響應時間和準確性 從表6可以看出,按所研究存儲方法存儲后,數(shù)據(jù)查詢響應時間更短,查詢準確性更高,證明了該種存儲方法能夠更好地服務用戶,幫助用戶更高效地完成數(shù)據(jù)查詢工作。 3 結 論 文章研究一種基于大數(shù)據(jù)分析的負載平衡數(shù)據(jù)分級存儲方法,該方法利用大數(shù)據(jù)分析對負載數(shù)據(jù)進行分級,將數(shù)據(jù)存儲到的不同設備當中,以緩解企業(yè)存儲壓力,同時也提高數(shù)據(jù)查詢效率。經測試,數(shù)據(jù)查詢準確性可達95.8%,本文方法有效提升了數(shù)據(jù)準確性。數(shù)據(jù)查詢響應時間僅為1.15 s,提升了負載平衡數(shù)據(jù)分級存儲響應效率。本研究中,檢驗存儲方法所用數(shù)據(jù)數(shù)量較少,需要擴大試驗數(shù)據(jù),進一步檢驗分級存儲方法。2 仿真實驗分析
2.1 仿真實驗環(huán)境
2.2 分級存儲方法拓撲結構
2.3 存儲設備
2.4 數(shù)據(jù)價值分布
2.5 數(shù)據(jù)分級準確性
2.6 數(shù)據(jù)查詢響應時間和準確性對比分析