陳廣清
(廣東電網有限責任公司梅州供電局,廣東梅州 514021)
基于分布式的網絡存儲和數據保護系統
陳廣清
(廣東電網有限責任公司梅州供電局,廣東梅州 514021)
持續增長的數據存儲需求帶動了存儲技術的快速發展,分布式存儲技術應運而生。所研究的基于分布式的網絡存儲系統和數據保護系統對于電力系統有重要的實際意義。針對梅州供電局現存的存儲設備問題及實際情況,開展分布式存儲技術及數據保護系統的研究,以改進存儲系統管理,降低成本。
分布式;網絡存儲;數據保護系統
分布式存儲技術應具備以下特點:高性能、可靠性、可擴展性、透明性及自治性。分布式存儲系統的設計必須考慮采用高效的文件Cache機制,減小帶寬延遲,為用戶提供高性能存儲服務,稱為“高性能”;系統應該采用有效的容錯機制,當出現網絡不穩定或者某些節點狀態處于不在線狀態情況時,用戶仍然能夠獲得所需要的數據副本,稱為“可靠性”[1-2];分布式存儲系統之所以能夠支持超大容量數據存儲,是由于它能夠通過增加節點的方式擴大存儲容量,稱為“可擴展性”;分布式存儲系統使用起來的感覺應該和本地用戶沒有區別,稱為分布式存儲系統的“透明性”[3];系統包含大量的節點和存儲對象,人工維護難度很大,因此系統必須具有自維護、自恢復的功能,稱為“自治性”。
Network Attached Storage(NAS)是目前極具發展前途的一種存儲技術,安裝簡單、易于管理,并且具備高擴展性等優點,適用于局域網使用,但成本較高;Storage Area Network(SAN)是指由光纖通道FC(Fiber Channel)連接的存儲設備網絡,具有高帶寬、低延遲、低誤碼率等優點,但是成本較高,因此不適用于本文的研究方案;Internet是一個Overlay網絡[4],其本質上是通過Internet互聯各種底層網絡構成IP層,底層網絡包括以太網、令牌環網絡等。
P2P(Peer-to-Peer)計算也稱為對等計算,是指兩個節點進行資源共享,盡可能減少中心控制,其中節點稱為Peer。與P2P模式相對應的是CS模式,相對于P2P而言,C/S模式中客戶端是一個啞設備,所有計算和處理均在服務器端完成,而P2P中的節點處于對等位置,并不區分是客戶端節點還是服務端節點。
P2P網絡是指節點處于對等位置,并不區分服務器節點和客戶端節點,通過P2P模式進行連接形成網絡,例如Chord和Tapstry都是P2P網絡。P2P網絡可以用于構造基于Internet的分布式存儲系統。
目前處于發展階段中的P2P海量數據存儲系統主要有OceanStore系統,Past系統和CFS系統[5]。國內有“燕星”系統,OceanStore系統是基于Tapstry算法發展形成的存儲系統;Past系統是基于Pastry算法發展形成的存儲系統;而CFS系統是在Chord路由算法基礎之上建立起來的文件存儲系統。
1.1 P2P分布式存儲機制
得益于Internet迅速發展,P2P模型得到了快速發展,基于P2P存儲技術的分布式存儲系統不僅具備高可靠性,同時具備高可擴展性,因此受到了廣泛關注。
1.2 數據保護系統
網絡存儲系統對可用性和持久性有很高的要求,也就是存儲系統的可靠性。計算機軟硬件故障、病毒黑客攻擊、人為操作故障或資源不足引起計劃性停機都有可能導致數據丟失。
數據保護系統可靠性指標主要有三項:穩定性、安全性和可用性。穩定性(Stability)是指作為存儲系統必須有能力為用戶持續、24小時不間斷服務的能力。
安全性(Security)是指系統中數據在運行中保持安全可靠,數據應該保證完整并可靠地進行存儲,一旦出現故障,不能影響數據的可用性和一致性,保證數據的安全有效。
可用性(Availability)表示存儲系統能夠提供正常服務的時間百分比,在可用時間段內,能夠確保存儲系統的正常、穩定工作。
本文通過采用P2P技術,將梅州供電局的零散計算機通過Internet連接起來,通過整合資源,形成一套可靠性高、穩定性好、低成本的分布式存儲系統。
按照系統功能進行分類,P2P系統可以分為應用層、會話層、數據層、路由層和物理層,如圖1所示。

圖1 P2P系統體系結構
應用層的作用是使用戶沒有遠程操作的感覺,和本地存儲一樣對存儲系統進行操作,提供了一個面向用戶的對外接口。
會話層主要是實現節點管理機制,檢查是否每個節點在線,是否能夠獲取節點中的數據等。
數據層主要負責副本數據動態管理,并且要注意避免“搭便車”及“公共悲劇”等常見的現象,影響數據的可靠性及可用性。
路由層通過路由機制和拓撲算法,負責提高搜索的高效性,減小獲取副本數據的時間延遲。
物理層也就是每個節點(計算機)及計算機節點之間的網絡硬件連接,是整個P2P分布式存儲機制的最底層,也是硬件基礎設施。
2.1 P2P存儲系統分類
根據結構關系可以將P2P系統細分為四種拓撲形式:中心化拓撲,半分布式拓撲,全分布式非結構化拓撲,全分布式結構化拓撲四種類型。其中,中心化拓撲P2P存儲系統結構盡管其可維護性最好、發現算法效率最高,但是考慮到其可靠性差、可擴展性差,不予采用;半分布式拓撲P2P存儲系統結構的可靠性、可擴展性、可維護性及算法效率均處于一般水平,本文不予采用;全分布式非結構化拓撲結構由于其可擴展性差,不適合應用于電力系統;全分布式結構化拓撲結構不僅可靠性高、可擴展性好,而且便于維護,并且具有較高的搜索效率,因此本文采用全分布式結構化拓撲結構的P2P存儲系統模型。
2.2 選擇副本放置策略
一份完整的數據可以通過分割成不同副本的形式存儲在不同的網絡節點中;當某個節點需要獲取數據時,可以將所需副本從其他節點獲取并完成數據恢復。副本在節點中存儲的方式稱為副本放置策略。
副本放置策略通常有兩種,順序放置策略和隨機放置策略。順序放置算法是指按照一定順序選擇當前節點及與當前節點相鄰的K-1個節點,將副本進行順序存儲;隨機放置策略是指隨機選擇K個節點對副本進行存儲,并建立索引表便于掌握數據副本的存放位置。兩種副本放置策略各自有優缺點,隨機放置策略的優點是數據恢復效率較高,但缺點是需要建立索引表,并需要維護索引表的正確性及一致性;順序放置策略的缺點是恢復數據效率較低,但優點是可靠性高,不需要建立和維護索引表,設計簡便。考慮到電力系統對可靠性要求較高,因此本文的設計采用順序放置的副本放置策略。
2.3 分布式網絡存儲系統訪問模型
圖2給出了分布式存儲訪問模型,客戶機通過Internet與Internet存儲訪問服務器連接和交互,Internet存儲訪問服務器則通過局域網與分布式存儲系統中的每一個節點計算機進行連接和交互,Internet負責接收與處理來自用戶的存儲訪問服務請求。

圖2 分布式存儲訪問模型
分布式存儲訪問模型使用戶實現遠程分布式存儲系統進行操作具備了可能性。
由于分布式存儲系統中的節點可能因故障或下線等原因導致離開網絡系統,為了保障數據的安全性和可靠性,設計分布式存儲系統最大的挑戰是怎樣在不可靠節點集合中實現可靠的存儲服務。
3.1 數據丟失原因
導致系統數據的丟失或破壞的原因主要有計算機軟硬件故障、病毒黑客攻擊、人為操作故障、資源不足引起計劃性停機等。導致數據丟失的原因主要有硬件或系統故障、人為操作錯誤、軟件問題和故障、計算機病毒和自然災難,其中硬件或系統故障占56%,人為操作錯誤占26%。
3.2 數據冗余策略
數據冗余策略是指同樣的數據文件擁有多個備份,并將不同的備份存儲在多個不同的節點上,當某個節點因故障或不在線等原因導致其數據文件不可使用時,可以通過其他節點上的備份完成數據重構。
糾刪碼冗余策略和復制冗余策略是當前廣泛使用的兩種冗余策略。復制冗余策略相對于糾刪碼冗余策略比較簡單,只需將副本復制多個備份存儲到系統的多個節點中,當部分節點發生故障或不在線時,只要有一個節點的副本可用,該副本文件就可以被獲取到,從而完成數據重構。由于以上特點,復制冗余策略的可靠性比較高,存儲方法也比較簡單,其可靠性與副本備份數量成正比,只要通過增加副本數據就可以提高可靠性。
糾刪碼編解碼原理如圖3所示。糾刪碼冗余策略相比復制冗余策略更加復雜,糾刪碼冗余策略上是將文件分割成為n份,并將n份副本編碼生成m個編碼塊,m個節點上分別存儲一個編碼塊,且m大于n,通過糾刪碼冗余策略可以在m個編碼塊中任意挑選n個編碼塊,成功完成原始數據重構。
復制與糾刪碼兩種冗余策略各自有不同的有點,糾刪碼所需的存儲和網絡開銷較小[6],可擴展性更好[7],但是比較復雜;復制策略實現過程簡單,可靠性高,研究表明某些特殊情況下,如系統節點可用性極端低下,糾刪碼冗余策略的運行效率反而比復制冗余策略低下[8],因此本文選用簡便的復制策略。

圖3 糾刪碼編解碼原理圖
3.3 數據保護的相關技術研究
在分布式存儲系統中,由于維修、定期維護等原因,總會遇到需要進行數據遷移的情況。生活中經常會用到數據遷移,例如將目標文件從計算機拷貝到U盤,就完成了一次數據遷移的過程。所謂數據遷移就是將目標數據從一個存儲介質移動到另一個存儲介質的過程。當前數據遷移的方式主要有在線遷移和離線遷移。在線遷移是指不中斷正常業務的情況下同時進行數據遷移,但是數據遷移操作可能會增加系統開銷,對正常業務造成干擾,甚至造成業務停頓;離線遷移是指在業務停止的時候以離線的方式集中執行,但是對于本文研究的電力系統這種需要不間斷服務的業務不適用。針對本文研究的電力系統,可以采取在線遷移手段。
重復數據越多意味著系統需要消耗更大的存儲空間和管理成本。因此刪除重復數據可以減小存儲需求。當數據重復度較高時,重復數據刪除的工作效果就體現得更為明顯。
本文針對電力系統可靠性要求高的特點,同時考慮到節點的可用性與存儲額外開銷都無法精確描述,選擇復制冗余策略進行數據保護;在副本放置策略選擇過程中,選擇設計簡便、可靠性高的順序放置策略;引入數據分布管理、數據遷移技術及重復數據刪除技術等數據保護技術,針對電力系統需要不中斷正常業務的情況下進行數據遷移,優先選擇在線遷移技術。本文研究成果對分布式網絡存儲系統的設計和實現具有一定指導意義。
[1]MukeshSinghal and Niranjan G-shi?varatri.Advanced Concepts in Oper?ating System,Distributed,Data?base,and Multiprocessor Operat?ing Systems[M].McGraw-Hid,INC,1994.
[2]Andrew S.Tanenbaum.現代操作系統[M].北京:機械工業出版社,1999.
[3]陳曉宇,蘇中義.具有副本透明性的分布式文件系統模型的討論[J].華東交通大學學報,2000,17(1)51-55.
[4]D.G.Andersen,H.Balakrishnan,M.Kaashoek,et al. Resilient overlay networks[C].In Proc.18th ACM SO?SP,Banff,Canada,October 2001.
[5]Frank Dabek,M.FransKaashoek,David Karger,et al. Wide-area Cooperative Storage with CFS[C].In SO?SP,Oct.2001.
[6]H.Weatherspoon,J.Kubiatowicz.Erasure coding vs.rep?lication:A quantitative comparison[C].Proceeding of IPTPS’02,Cambridge,Massachusetts,March 2002.
[7]A.G.Dimakis,P.G.Godfrey,M.J.Wainwright,et al.Net?work coding for peer-to-peer storage[C].Proceeding of INFOCOM,Anchorage,Alaska,May 2007.
[8]A.Dandoush, S.Alouf,P.Nain.Simulation analysis of download and recovery processes in p2p storage systems[R].Research Report RR-6858,INRIA,2009.
Research of Network Storage and Data Protection System Based on Distributed Technology
CHEN Guang-qing
(Meizhou Power Supply Bureau,Meizhou514021,China)
Storage technology develops rapidly with the growth of data storage demand,distributed storage technology comes to being. Research of Network storage and data protection system based on distributed technology in this paper has important practical significance for the research of power system.According to the current storage equipment and the actual situation of Meizhou power supply bureau,distributed storage technology and data protection system are researched in order to improve the storage system management and reduce the cost.
distributed;network storage;data protection system
TM73
:A
:1009-9492(2014)12-0155-04
10.3969/j.issn.1009-9492.2014.12.039
陳廣清,男,1981年生,廣東梅州人,碩士,工程師。研究領域:信息安全、云計算、云平臺。
(編輯:向 飛)
2014-11-14