楊麗華,鄂晶晶,馮 鋒
(1. 呼倫貝爾學院計算機學院,內(nèi)蒙古 呼倫貝爾 021000;2. 寧夏大學信息工程學院,寧夏 銀川 750021)
Internet技術的快速發(fā)展下,各個類型的數(shù)據(jù)和信息均呈爆炸式增加,任務數(shù)據(jù)不斷增加。因此,如何有效保存數(shù)據(jù)成為網(wǎng)絡發(fā)展過程中的重要問題?,F(xiàn)階段,大部分網(wǎng)絡均采用的存儲策略為全部數(shù)據(jù)單獨存儲[1,2],將其作為一個項目展開相關的管理工作。云存儲具有傳統(tǒng)存儲技術不可代替的優(yōu)勢,分別為安全性高以及通用性強等,同時通過云存儲還可以有效減少各個系統(tǒng)的運行成本,提升企業(yè)的運行效率。
和傳統(tǒng)的存儲計算相比,云存儲占據(jù)明顯優(yōu)勢。國內(nèi)相關專家也針對該方面的內(nèi)容展開了大量研究,例如李根[3]主要通過網(wǎng)絡處理技術以及電子信息技術完成數(shù)據(jù)存儲,通過云計算技術的分析,為后期進一步促進計算機云計算數(shù)據(jù)儲存技術的提升奠定基礎。周由勝等人[4]通過橢圓曲線組建基于密文策略的屬性基加密完成訪問控制,引入?yún)^(qū)塊鏈技術完成數(shù)據(jù)安全存儲以及刪除。謝鵬等人[5]將關系型數(shù)據(jù)庫存儲模式轉(zhuǎn)換為HBase存儲模式,以此為依據(jù)構建基于空間矢量數(shù)據(jù)的HBase存儲模型,通過模型完成數(shù)據(jù)存儲工作。
雖然上述方法均已經(jīng)取得了較好的研究成果,但是,云計算任務之間的差異性是完成數(shù)據(jù)存儲的關鍵因素,因此,為進一步實現(xiàn)數(shù)據(jù)的節(jié)能化存儲,在以上幾種算法的基礎上,本研究提出一種差異性云計算任務數(shù)據(jù)節(jié)能式存儲算法。經(jīng)實驗測試結果表明,所提算法能夠全面提升存儲容量以及系統(tǒng)利用率,同時還能夠有效縮短平均響應時間。
通過局部特征分析方法,可以得到差異性云計算下任務數(shù)據(jù)節(jié)能式存儲中各個類型冗余數(shù)據(jù)的主要特征,將全部特征作為后期分類處理的重要依據(jù)。由于網(wǎng)絡在使用過程中會有一定程度的延遲,所以,以下通過最優(yōu)分類超平面對差異性云計算任務數(shù)據(jù)中的冗余數(shù)據(jù)分類處理[6,7],將冗余數(shù)據(jù)分類問題轉(zhuǎn)換為最優(yōu)平面求解問題R(t),具體的計算式為
(1)
式中,βi,j代表判別函數(shù);αi,j代表分類閾值;(x,y)代表網(wǎng)絡節(jié)點的坐標位置;i和j分別代表不同的節(jié)點。
其中,最優(yōu)超平面求解問題必須滿足式(2)中的約束條件
(2)
式中,p代表常數(shù)。
如果差異性云計算任務數(shù)據(jù)節(jié)能式存儲中冗余數(shù)據(jù)特征沒有滿足實際需求,需要對其轉(zhuǎn)換處理。主要借助最優(yōu)分類超平面求解,設定內(nèi)積為N(x,y),則對應的轉(zhuǎn)換結果為
(3)
最優(yōu)分類函數(shù)可以表示為式(4)的形式
(4)
式中,H(x,y)代表最優(yōu)分類函數(shù);m代表類別屬性。
根據(jù)式(4)可以獲取冗余數(shù)據(jù)片段,最優(yōu)分類平面算法主要是針對各個類型的冗余數(shù)據(jù)片段劃分。優(yōu)先分析不同冗余數(shù)據(jù)的屬性,以數(shù)據(jù)為依據(jù)將其轉(zhuǎn)換為二分類,同時對其詳細求解,最終將提取的冗余數(shù)據(jù)刪除。由于云計算下任務數(shù)據(jù)的冗余刪除具有一定的難度,同時冗余數(shù)據(jù)的特征值十分多,需要采用一對一的分類方式完成冗余數(shù)據(jù)的刪除操作[8,9]。
通過基于遺傳算法的冗余數(shù)據(jù)分配算法展開冗余數(shù)據(jù)的分類處理,詳細的操作流程如圖1所示:
1)根據(jù)實際需求,需要優(yōu)先設定冗余數(shù)據(jù)的進化參數(shù)。
2)采用二進制中的串結構數(shù)據(jù)分別描述不同類型的冗余數(shù)據(jù)片段。
3)通過選育方式對全部群體初始化處理,同時提取通信代價最小的前n個個體,進而構建初始種群,確保群體內(nèi)個體的優(yōu)秀水準。
4)計算群體內(nèi)不同個體的通信代價,通信代價對應的導數(shù)即為各個個體的適應度取值。
5)通過冗余數(shù)據(jù)分類算法將最優(yōu)存儲數(shù)據(jù)和數(shù)據(jù)選擇兩者綜合處理,完成最優(yōu)個體選擇操作。
6)對全部個體交叉處理。
7)對全部個體變異處理。
8)判斷是否滿足停止準則,假設滿足,則直接輸出差異性云計算任務數(shù)據(jù)節(jié)能式存儲中冗余數(shù)據(jù)分類結果;反之,則跳轉(zhuǎn)至步驟(1)。
根據(jù)差異性云計算任務數(shù)據(jù)節(jié)能式存儲中的冗余數(shù)據(jù)分類結果,將無利用價值的任務數(shù)據(jù)刪除,最終完成冗余數(shù)據(jù)刪除處理。
空間數(shù)據(jù)模型是完成任務數(shù)據(jù)節(jié)能式存儲的重要基礎[10,11],也就是構建數(shù)據(jù)庫的核心。針對任務數(shù)據(jù)的特點,需要設定不同的分塊方式,具體如下所示:
1)固定字節(jié)長度分塊方式
長度的設定是通過相關先驗知識確定,和任務數(shù)據(jù)的存儲內(nèi)容并沒有存在實際關聯(lián),具有操作簡單以及計算速度快等優(yōu)勢。其中,固定長度分塊方式更加適用于柵格數(shù)據(jù)集以及對象數(shù)據(jù)集。通過式(5)計算不同數(shù)據(jù)塊對應的序號
(5)
上式中,Block(kid)代表數(shù)據(jù)塊序號;offset代表文件頭的字節(jié)總數(shù);blocksize代表字節(jié)長度。
(2)數(shù)據(jù)差異性分塊
通過從上到下以及從左到右的順序?qū)θ蝿諗?shù)據(jù)劃分處理。同時采用差異性排序的方式對各個數(shù)據(jù)塊編碼處理。其中,各個數(shù)據(jù)塊的編號LBlock(kid)可以通過(6)展開計算:
(6)
上式中,gridwidth和grideigth分別代表數(shù)據(jù)存儲差異性分塊的寬度以及高度;width代表數(shù)據(jù)存儲原始寬度。
(3)數(shù)據(jù)特征分塊
分析高分數(shù)據(jù)特征,引入面向?qū)ο笏枷氤橄蟮臄?shù)據(jù)管理方式,通過不同的任務數(shù)據(jù)類型選擇對應的數(shù)據(jù)切分模型,分析數(shù)據(jù)存儲特點,以此為依據(jù),對任務數(shù)據(jù)存儲節(jié)點分配處理。
以下將任務數(shù)據(jù)作為研究對象,結合時空理論,設定對應的數(shù)據(jù)對象,如式(7)所示:
Objectrs={ObjectRawImage,ObjectImage,ObjectVector}
(7)
上式中,Objectrs代表數(shù)據(jù)對象;ObjectRawImage代表初始任務數(shù)據(jù);ObjectImage代表產(chǎn)品數(shù)據(jù)對象;ObjectVector代表矢量數(shù)據(jù)。
在云計算平臺下,通過數(shù)據(jù)存儲技術可以全面提升資源的利用率,同時還能夠簡化數(shù)據(jù)動態(tài)遷移過程。為了建立虛擬服務器,首先需要虛擬化存儲節(jié)點,對任務數(shù)據(jù)完成均衡分配。在虛擬服務器的內(nèi)部,主要通過直接尋址的方式管理任務數(shù)據(jù)。其中任務數(shù)據(jù)和初級任務數(shù)據(jù)的存儲只需要通過選擇合適的球面網(wǎng)格劃分標準即可。當對原始任務數(shù)據(jù)展開切分處理,數(shù)據(jù)自身則不實行任何操作。
產(chǎn)品數(shù)據(jù)和任務產(chǎn)品數(shù)據(jù)兩者疊加應用,具有優(yōu)勢互補性能。所以可以通過標準金字塔模型組織完成不同類型數(shù)據(jù)的結構存儲。
在差異性云計算環(huán)境下,主要通過比較簡單的哈希取模法將任務數(shù)據(jù)分配到不同的存儲節(jié)點,將數(shù)據(jù)的切片行列號相加處理,然后和存儲空間總數(shù)展開取模計算,確定任務數(shù)據(jù)的存儲位置。
對于云計算環(huán)境下的服務器虛擬化處理,可以將全部節(jié)點映射為多個虛擬節(jié)點。其中,虛擬節(jié)點和物理節(jié)點屬于多對一關系,將存儲系統(tǒng)的一致性哈希環(huán)形存儲空間劃分為多個等份,同時提取任務數(shù)據(jù)特征,經(jīng)過計算獲取一致性哈希函數(shù),如式(8)所示:
J=hash(ObjectRawImage)
(8)
式中,J代表一致性哈希函數(shù);hash代表存儲節(jié)點數(shù)量。
在采用一致性哈希算法后,需要從根本解決任務數(shù)據(jù)節(jié)能式存儲問題。當系統(tǒng)內(nèi)加入全新節(jié)點后,需要將原始兩個節(jié)點之間的哈??臻g分裂處理,進而加入全新的節(jié)點,這樣可以確保在存儲器出現(xiàn)異常時,不會出現(xiàn)數(shù)據(jù)大規(guī)模遷移的情況,只需要維護出現(xiàn)變動的任務數(shù)據(jù)即可。
設定共有n臺服務器,根據(jù)設定參數(shù),獲取參數(shù)和服務器最大參數(shù)兩者之間的比值Cur(n),如式(9)所示
(9)
式中,Cur(n)代表參數(shù);Cumax代表服務器最大參數(shù)。
通過式(9)可以準確分析集群服務器性能的強弱,引入加權平均法將全部任務數(shù)據(jù)整合處理,獲取對應服務器的總體性能值Sr(n),如式(10)所示
(10)
式中,Mcr(n)代表第n臺服務器的利用率。
通過集群服務器統(tǒng)計的實時性能,可以獲取服務器的實際負載權重閾值,如式(11)所示
(11)
式中,ω(i,j)代表實際負載權重閾值。
通過分析任務數(shù)據(jù)的不同特征,結合云計算相關特點構建任務數(shù)據(jù)節(jié)能式存儲模型,詳細的操作流程如圖1所示。
圖1 任務數(shù)據(jù)節(jié)能式存儲模型構建流程圖
1)在數(shù)據(jù)中心分別接收不同類型的任務數(shù)據(jù),通過任務類型將數(shù)據(jù)分類處理,同時統(tǒng)一全部數(shù)據(jù)的時空基準[12,13]。
2)提取差異性云計算任務數(shù)據(jù)的主要特征,將其作為服務器存儲的分散因子,經(jīng)過相關操作得到對應的空間特征。
3)通過哈希一致性算法將服務器設定為存儲核心,通過動態(tài)分配策略將全部任務數(shù)據(jù)均勻分配到哈希環(huán)形空間內(nèi),同時根據(jù)提取的特征完成存儲服務器均勻分布處理[14,15]。
4)通過任務數(shù)據(jù)庫完成數(shù)據(jù)的采集以及管理等相關工作,結合數(shù)據(jù)庫組建不同任務數(shù)據(jù)之間的映射關系。
5)以任務數(shù)據(jù)之間的映射關系為依據(jù),構建差異性云計算任務數(shù)據(jù)節(jié)能式存儲模型,如式(12)所示
(12)
式中,Cubot(x,y)代表差異性云計算任務數(shù)據(jù)節(jié)能式存儲模型。
將全部經(jīng)過冗余數(shù)據(jù)刪除的任務數(shù)據(jù)輸入到差異性云計算任務數(shù)據(jù)節(jié)能式存儲模型模型,最終實現(xiàn)任務數(shù)據(jù)節(jié)能式存儲。
為了驗證所提差異性云計算任務數(shù)據(jù)節(jié)能式存儲算法的有效性,需要展開實驗測試。對比方法為文獻[3]設計的基于計算機云計算的數(shù)據(jù)存儲算法和文獻[4]設計的基于區(qū)塊鏈的數(shù)據(jù)安全存儲算法。在設定客戶端數(shù)量下,分析三種不同算法的平均響應時間,詳細的實驗測試結果如圖2所示。
圖2 客戶端數(shù)量影響下不同算法平均響應時間測試
通過分析圖2中的實驗數(shù)據(jù)可知,在客戶端數(shù)量已知的情況下,各個算法的平均響應時間也發(fā)生了比較明顯的變化。雖然所提算法的平均響應時間也呈直線上升趨勢,但是變化幅度不大且響應時間更短。
在以上實驗分析的基礎上,分析用戶請求數(shù)量不斷增加情況下各個算法的平均響應時間變化情況,詳細的實驗測試結果如圖3所示。
圖3 用戶請求數(shù)量影響下不同算法平均響應時間測試
由圖3中的實驗數(shù)據(jù)可知,各個算法的平均響應時間均會受到用戶請求數(shù)量的影響。但是在三種算法中,所提算法所受到的影響相對較小一些,同時平均響應時間也更低一些。
綜合分析不同節(jié)點數(shù)量下各個算法的系統(tǒng)利用率情況,詳細的實驗測試結果如表1所示。
表1 不同數(shù)據(jù)節(jié)點下不同算法的系統(tǒng)利用率測試
由表1中的實驗數(shù)據(jù)可知,各個算法的系統(tǒng)利用率會不同程度受到數(shù)據(jù)節(jié)點數(shù)量的影響。但是相比另外兩種算法,所提算法的系統(tǒng)利用率明顯更高一些,進一步驗證了所提算法的優(yōu)越性。
為了分析不同算法的存儲性能,實驗將存儲容量作為測試指標,詳細的實驗測試結果如圖4所示。
圖4 不同算法的最大存儲容量測試
分析圖4中的實驗數(shù)據(jù)可知,由于所提算法在差異性云計算任務數(shù)據(jù)節(jié)能式存儲前期實行了冗余任務數(shù)據(jù)刪除操作,將全部無利用價值的冗余數(shù)據(jù)刪除,全面降低了數(shù)據(jù)存儲量,同時優(yōu)化了存儲容量,促使所提方法可以更好完成數(shù)據(jù)存儲,具有較大的存儲容量。
為測試不同數(shù)據(jù)存儲算法的節(jié)能效果,采用數(shù)據(jù)存儲后網(wǎng)絡剩余能量與初始能量的比值作為測試指標,網(wǎng)絡剩余能量越高,即該比值越高,則說明數(shù)據(jù)存儲算法的節(jié)能效果越優(yōu)。具體測試結果如圖5所示。
圖5 不同算法應用下網(wǎng)絡剩余能量對比測試
根據(jù)圖5可知,隨著云計算任務數(shù)據(jù)的存儲事件數(shù)量的增多,不同云計算任務數(shù)據(jù)存儲算法應用下網(wǎng)絡剩余能量與初始總能量的比值出現(xiàn)降低,相比之下,研究算法的網(wǎng)絡剩余能量更高,當云計算任務數(shù)據(jù)的存儲事件數(shù)量達2000個時,網(wǎng)絡剩余能量與初始總能量的比值仍可達0.4,由此可知研究算法具有更理想的節(jié)能效果。
面對海量任務數(shù)據(jù),快速準確完成數(shù)據(jù)存儲是研究的關鍵。為此,提出一種差異性云計算任務數(shù)據(jù)節(jié)能式存儲算法。經(jīng)過大量仿真對比和分析可知,所提算法可以有效減少平均響應時間,提升系統(tǒng)利用率以及存儲容量,獲取更加滿意的存儲效果。
雖然現(xiàn)階段所提算法取得了比較滿意的研究成果,但是仍然存在不足,后續(xù)將針對以下幾方面的內(nèi)容展開研究:
1)擴大研究范圍,針對復雜數(shù)據(jù)展開更加深入的研究。
2)現(xiàn)階段研究沒有考慮存儲開銷問題,后續(xù)將針對該方面內(nèi)容展開研究和分析。