【摘要】? ? 隨著計算機技術(shù)的飛速發(fā)展,近年來云計算技術(shù)的應(yīng)用也越來越廣泛,而分布式存儲技術(shù)屬于云計算環(huán)境下常用的核心技術(shù),為進一步提高云計算環(huán)境下分布式存儲水平,本文研究了云計算環(huán)境下的分布式存儲關(guān)鍵技術(shù),介紹了分布式存儲過程中人們常用的數(shù)據(jù)中心網(wǎng)絡(luò)結(jié)構(gòu),重點對基于復(fù)制的容錯技術(shù)與基于糾刪碼的容錯技術(shù)進行了分析,通過這些分析有助于人們進一步了解云計算環(huán)境下的分布式存儲技術(shù),進而更好的推廣應(yīng)用該技術(shù)。
【關(guān)鍵詞】? ? 云計算? ? 數(shù)據(jù)中心? ? 分布存儲? ? 容錯技術(shù)
引言:
最近興起的典型技術(shù)中,云計算屬于高速發(fā)展的信息技術(shù)之一,促進了社會的進步,推動了科學(xué)的發(fā)展,廣泛應(yīng)用于各行各業(yè)。數(shù)據(jù)中心是云計算的基礎(chǔ)部分,是業(yè)務(wù)操作的提供方,也是決定盈利份額的重要環(huán)節(jié)。存儲技術(shù)是云計算中比較關(guān)鍵的地方,可以管理有序、組織高效地實現(xiàn)安全的存儲中心數(shù)據(jù),幫助用戶存儲數(shù)據(jù)。消耗了運營設(shè)備多少能量以及構(gòu)建穩(wěn)定的中心數(shù)據(jù)網(wǎng)絡(luò)等問題,要與研究存儲數(shù)據(jù)的技術(shù)同步進行。
一、網(wǎng)絡(luò)數(shù)據(jù)中心
云計算的數(shù)據(jù)中心可以幫助用戶選擇不同的功能進行服務(wù),由路由轉(zhuǎn)發(fā)的節(jié)點類型決定。主要包含三種網(wǎng)絡(luò)結(jié)構(gòu):混合結(jié)構(gòu)以及服務(wù)器或交換機為中心的結(jié)構(gòu)類型,以下將逐一具體介紹。
(一)中心是交換機的結(jié)構(gòu)
網(wǎng)絡(luò)構(gòu)建的核心是交換機,連接所有的服務(wù)器,還可以轉(zhuǎn)發(fā)數(shù)據(jù)。可細分為樹型結(jié)構(gòu)的傳統(tǒng)型以及改進型。中心是交換機的屬于樹型結(jié)構(gòu)的傳統(tǒng)型,包含三層:核心和聚合以及邊緣。主要缺點有:
1.交換機不能合理利用資源:可靠系統(tǒng)的前提是具備1:1的交換機比例,所以資源具備極低的利用率。
2.帶寬不足:樹形結(jié)構(gòu)的傳統(tǒng)型轉(zhuǎn)發(fā)數(shù)據(jù)時,一定要由路由器上層決定,才能實現(xiàn)用戶對服務(wù)器的訪問,所以帶寬不足,導(dǎo)致上層鏈路無法滿足較大吞吐量的路由器,別的服務(wù)器更不能順利接收到分配的任務(wù)。
3.靈活性不高:結(jié)構(gòu)緊密聯(lián)系實際IP節(jié)點的使用,且需預(yù)留適量的資源在第二層域,因此無法較好的利用資源。而樹型結(jié)構(gòu)的改進型可細分為VL2和fat tree胖樹型,彌補了傳統(tǒng)型的不足之處。
(二)中心是服務(wù)器的結(jié)構(gòu)
無需路由器或交換機等設(shè)備,各個服務(wù)器的連接是通過安裝不同網(wǎng)卡實現(xiàn)的。 CamCubeo結(jié)構(gòu)是此類結(jié)構(gòu)中最典型的,服務(wù)器之間先進行相互連接,然后在節(jié)點處的三維方向再進行兩兩相連,結(jié)構(gòu)以此呈現(xiàn)環(huán)狀CAN形式,達到一致的邏輯拓撲與物理拓撲。
結(jié)構(gòu)簡單的CamCube具備的優(yōu)點是:存在較高的鏈路冗余,底層網(wǎng)絡(luò)可以和服務(wù)器直接交互,避免了單點瓶現(xiàn)象的發(fā)生;缺點是:存在很長的路由路徑。研究人員經(jīng)過實驗,研發(fā)了拓撲結(jié)構(gòu),原理與De-Bruijintu圖類似,可以減少網(wǎng)絡(luò)路由的相關(guān)費用。
(三)混合結(jié)構(gòu)
混合結(jié)構(gòu)包括了服務(wù)器以及交換機的兩種結(jié)構(gòu):服務(wù)器的連接必須經(jīng)過交換機,轉(zhuǎn)發(fā)數(shù)據(jù)包要依靠服務(wù)器的各個節(jié)點來完成,功能最全,適應(yīng)性最好。BCube和DCell都是典型的混合結(jié)構(gòu)。
設(shè)計結(jié)構(gòu)DCell,要綜合容錯系統(tǒng)和帶寬網(wǎng)絡(luò)這兩個因素,可以細分為遞歸定義結(jié)構(gòu)以及分層結(jié)構(gòu),低層網(wǎng)絡(luò)都屬于上層網(wǎng)絡(luò)。DCell擴展網(wǎng)絡(luò)的順序是自上而下。DCell無需像樹型結(jié)構(gòu)那樣查詢路由表只能服務(wù)器,聚合帶寬經(jīng)過冗余鏈路后達到更優(yōu)狀態(tài)。
而結(jié)構(gòu)BCube的網(wǎng)絡(luò)數(shù)據(jù)中心與超立方體類似,模塊的組成形式與集裝箱相近,在同樣的環(huán)境里大量構(gòu)建了連接網(wǎng)絡(luò)的設(shè)備和服務(wù)器等。
綜合分析三種結(jié)構(gòu):中心的交換機的結(jié)構(gòu)具備的優(yōu)點是服務(wù)器只負責(zé)處理和存儲數(shù)據(jù)的工作,所以負載不用承載過大。而中心是交換機的結(jié)構(gòu)具備的優(yōu)點是:有較好的擴展性?;旌辖Y(jié)構(gòu)的轉(zhuǎn)發(fā)設(shè)備具備了服務(wù)器與交換機的兩種功能,其網(wǎng)絡(luò)結(jié)構(gòu)比較靈活自由,可以達到不同場景的應(yīng)用需求,構(gòu)建成本在同樣性能的前提下更低。
二、關(guān)鍵技術(shù)之?dāng)?shù)據(jù)容錯
數(shù)據(jù)容錯屬于存儲研究分布式領(lǐng)域里比較關(guān)鍵的一項技術(shù)。數(shù)據(jù)容錯較好的系統(tǒng)具備更高的可靠性,可以變相促進訪問系統(tǒng)的頻率,其冗余數(shù)據(jù)可以在部分數(shù)據(jù)突然無效時進行正常服務(wù)和訪來。數(shù)據(jù)容錯的主要技術(shù)模式就是靠冗余數(shù)據(jù)盡可能增加來實現(xiàn),有諸多的優(yōu)點:成本不高卻能更好的利用系統(tǒng)資源;缺點是:大量消耗和占用了存儲資源?;诩m刪碼的容錯技術(shù)與基于復(fù)制的容錯技術(shù)都是當(dāng)前數(shù)據(jù)容錯應(yīng)用最普遍的兩項技術(shù)。
(一)容錯技術(shù)之基于糾刪碼
當(dāng)數(shù)據(jù)容錯技術(shù)主要核心是糾刪碼時,第一步就是分割數(shù)據(jù)為不同的數(shù)據(jù)塊,且每一個數(shù)據(jù)塊的大小都一樣,第二步是編碼數(shù)據(jù)塊,主要方法是采用編碼技術(shù),然后編碼塊獲得編碼。編碼塊直接可以獲取相應(yīng)的數(shù)據(jù),解碼后即可了解原始數(shù)據(jù)。
數(shù)據(jù)編碼的不同方法有:low-density parity-check code低密度奇偶校驗碼以及parity-checkcode奇偶校驗碼和parity array code奇偶陣列碼還有Reed-Solomon碼等。
另外,修復(fù)容錯數(shù)據(jù)這一步也很關(guān)鍵。當(dāng)節(jié)點在系統(tǒng)中無效時,容錯數(shù)據(jù)修復(fù)技術(shù)可以將冗余數(shù)據(jù)快速重構(gòu)。冗余塊以及數(shù)據(jù)塊的度數(shù)高低決定了容錯修復(fù)花費的高低,修復(fù)成本隨度數(shù)的增高而增加??梢圆捎脙?yōu)化網(wǎng)絡(luò)編碼以及限制度數(shù)等方式去減少修復(fù)糾刪碼的成本,主要步驟是:第一種是采用優(yōu)化度數(shù)限制的方式時,編碼數(shù)據(jù)塊的過程要同步對糾刪碼數(shù)據(jù)塊采取限制冗余塊和數(shù)量的度數(shù),達到減少修復(fù)糾刪碼成本的目的。
比如WEAV-ER碼,一個節(jié)點可以同時存儲冗余塊和數(shù)據(jù)塊,冗余塊是通過操作數(shù)據(jù)庫得到的,最后進行計算的過程對冗余塊和數(shù)據(jù)塊限制度數(shù),就可以減少修復(fù)的成本。不過此方式有一個弊端,無法較好的利用存儲空間,因為系統(tǒng)需要較高的讀取性能,所以需要較大的存儲空間來實現(xiàn),在一定程度上增加了存儲方面的開銷成本。所以,根據(jù)函數(shù)概率密度來計算冗余塊與數(shù)據(jù)塊和度數(shù)的方法,雖然可以實現(xiàn)部分優(yōu)化效果,但成功的譯碼次數(shù)不高,遇到分布式大規(guī)模存儲時無法較好的完成。
另外一種是優(yōu)化網(wǎng)絡(luò)編碼的方式,主要技術(shù)是依據(jù)網(wǎng)絡(luò)編碼來完成,技術(shù)相對成熟,在通信領(lǐng)域較為常用。信息量的大量傳輸,依靠編碼轉(zhuǎn)發(fā)的數(shù)據(jù)包來實現(xiàn),可以整體增加網(wǎng)絡(luò)傳輸?shù)男阅?。這種優(yōu)化方法最典型的就是糾刪碼,也叫再生碼,無需對冗余塊及數(shù)據(jù)塊限制度數(shù),只需利用固定的編碼系數(shù)即可得到相應(yīng)的矩陣。修復(fù)數(shù)據(jù)時,只需要將數(shù)據(jù)塊從存儲節(jié)點展開融合,就可以得到相應(yīng)的數(shù)據(jù)修復(fù),不僅大大降低了帶寬成本,還減少了數(shù)據(jù)量的傳輸。
(二)容錯技術(shù)之基于復(fù)制
研究者在這個技術(shù)領(lǐng)域一般研究兩個方面,即數(shù)據(jù)復(fù)制策略和數(shù)據(jù)組織結(jié)構(gòu)。主要方法是:第一種是數(shù)據(jù)組織結(jié)構(gòu)。主要研究管理更多副本和組織更多數(shù)據(jù)的方法,目前研究的數(shù)據(jù)組織結(jié)構(gòu)主要分為兩種:研究組織結(jié)構(gòu)P2P以及服務(wù)器是基于元數(shù)據(jù)。
研究組織結(jié)構(gòu)P2P的核心是利用P2P本身的組織方式,管理并組織不同的節(jié)點,使節(jié)點之間處于平等的狀態(tài),不再另外區(qū)分存客戶端以及服務(wù)器;存儲數(shù)據(jù)的過程,主要的存儲方式是哈希表分布式模式,當(dāng)用戶對數(shù)據(jù)進行訪問時,要查詢服務(wù)器上的數(shù)據(jù),找到正確的哈希值以后,才能找到對應(yīng)的數(shù)據(jù)存儲位置,最后才能順利獲取數(shù)據(jù)。當(dāng)前管理元數(shù)據(jù)的P2P結(jié)構(gòu)最常采用Dynamo,Cassandra系統(tǒng)。這種結(jié)構(gòu)的優(yōu)點有:系統(tǒng)不會因為節(jié)點失效而不可靠,因為無需另外配置相應(yīng)的中央服務(wù)器;缺點是:會有存儲不均衡的副本位置現(xiàn)象的發(fā)生,因為不具備全局信息導(dǎo)致的。存儲數(shù)據(jù)的組織結(jié)構(gòu)是利用服務(wù)器元數(shù)據(jù)時,核心部位就是元數(shù)據(jù)服務(wù)器,元數(shù)據(jù)服務(wù)器可以存儲副本的映射關(guān)系以及版本和位置等相關(guān)信息屬性,可以統(tǒng)一管理諸多的數(shù)據(jù)。用戶要進行數(shù)據(jù)訪問時,必須先確定數(shù)據(jù)位置,主要方法是利用元數(shù)據(jù)服務(wù)器來確定信息,確定位置后才能根據(jù)相關(guān)服務(wù)器得到用戶所需的數(shù)據(jù)。
另一種方法是數(shù)據(jù)復(fù)制,主要方式是依據(jù)存儲資源和實時的網(wǎng)絡(luò)狀況以及當(dāng)前的應(yīng)用需求來確定。主要研究兩各方面的策略內(nèi)容:副本放置以及數(shù)據(jù)復(fù)制策略。數(shù)據(jù)復(fù)制策略可以分為動態(tài)和靜態(tài),主要用于創(chuàng)建副本的數(shù)量及時機。其中,靜態(tài)策略的意思是,初始目的為了創(chuàng)建數(shù)據(jù)定量的副本,并在相應(yīng)的節(jié)點存儲這些副本。此策略具備的優(yōu)點是簡單,缺點是較差的靈活性,無法隨環(huán)境變化同步進行有效的調(diào)整。
另外,動態(tài)策略的意思是,用戶需求以及實時的存儲狀態(tài),來決定副本刪除或動態(tài)增加的動作,可以達到均衡的節(jié)點負載以及更加合理有效的利用資源。增加系統(tǒng)的容錯力度是放置策略的最終意義。當(dāng)用戶無意間丟失了某個數(shù)據(jù)的副本后,數(shù)據(jù)的恢復(fù)方式可以通過其他副本的訪問工作來實現(xiàn)。缺點是:創(chuàng)建的副本會大量占用帶寬空間和速度,要大量的時間來完成,所以要綜合不同的因素才能選擇放置策略。
目前的放置策略主要有兩種:隨機放置以及順序放置這兩個策略類型。
其中,順序放置策略的方法是,節(jié)點存儲所需創(chuàng)建的副本數(shù)據(jù)時,必須采用特定的順序才可以。主要優(yōu)點是:系統(tǒng)具備較高的可靠性,存儲數(shù)據(jù)不會因隨機失效而丟失或中斷,這種策略一般在哈希表分布式結(jié)構(gòu)和反集群結(jié)構(gòu)這兩種模式中被廣泛采用。
另外隨機放置策略指的是,節(jié)點存儲大量的數(shù)據(jù)時,存放數(shù)據(jù)的副本是被不同的節(jié)點隨機而選擇得,在需要大量數(shù)據(jù)進行放置的環(huán)境中,最常用道德就是這種策略。主要優(yōu)點是:系統(tǒng)更具備可靠性,不僅可以減少關(guān)聯(lián)失效產(chǎn)生的后果,系統(tǒng)還能獲得均衡的節(jié)點負載。
三、結(jié)束語
當(dāng)今社會,每個公司和單位在進行數(shù)據(jù)存儲時,最常選擇的平臺就是云計算技術(shù),隨著這項技術(shù)的成熟和發(fā)展,云計算技術(shù)在大數(shù)據(jù)模式下,也被廣泛應(yīng)用于不同的領(lǐng)域及行業(yè)。本文針對云計算環(huán)境,研究了關(guān)鍵的分布式存儲方法,仔細分析研究了這項技術(shù)的主要成果,針對不同的缺點制定相應(yīng)的方案和措施,經(jīng)試驗,可以對同行業(yè)的研究人員提供一定的幫助與參考作用。分布式存儲雖然在當(dāng)前的云計算環(huán)境下獲得了很多成果,但是大量增加的數(shù)據(jù)量,依然需要我們解決并研究隨之而來的諸多問題,所以分布式存儲技術(shù)的挑戰(zhàn)依然不容小覷。
作者單位:孫斐然? ? 蘇州市吳江區(qū)融媒體中心
參? 考? 文? 獻
[1]郭雁玲.云計算核心技術(shù)的優(yōu)勢及其在廣電系統(tǒng)中的應(yīng)用研究[J].現(xiàn)代電視技術(shù). 2019(09):32-34.
[2]游康澤.云計算環(huán)境下的分布存儲應(yīng)用及安全機制[J].電腦與信息技術(shù). 2017(02):10-12.