方 舟,裴旭斌,裘煒浩
(國網(wǎng)浙江省電力公司信息通信分公司,杭州 310007)
分布式文件系統(tǒng)在營銷檔案系統(tǒng)中的應(yīng)用
方 舟,裴旭斌,裘煒浩
(國網(wǎng)浙江省電力公司信息通信分公司,杭州 310007)
目前,浙江省電力公司在全省范圍內(nèi)使用營銷檔案系統(tǒng),檔案數(shù)據(jù)的快速增長,對電子檔案文件等非結(jié)構(gòu)化數(shù)據(jù)的存儲有了更高的要求。通過對分布式文件系統(tǒng)的特性進行研究,并以MooseFS分布式文件系統(tǒng)在營銷檔案系統(tǒng)的實際應(yīng)用為例,驗證了分布式文件系統(tǒng)相比于傳統(tǒng)集中存儲方式在負載均衡和在線擴容等方面的優(yōu)勢。分布式文件系統(tǒng)的應(yīng)用為營銷檔案系統(tǒng)海量數(shù)據(jù)的存儲提供了一種可行的解決方案。
分布式文件系統(tǒng);營銷檔案系統(tǒng);MooseFS;負載均衡;在線擴容
為了適應(yīng)國網(wǎng)公司“大營銷”體系建設(shè)的要求,浙江電力公司建設(shè)了一套全省統(tǒng)一集中管理的標準化客戶檔案管理系統(tǒng),實現(xiàn)了營銷業(yè)務(wù)所涉及的基礎(chǔ)檔案信息與紙質(zhì)文檔的統(tǒng)一維護和管理。
由于營銷檔案系統(tǒng)為全省統(tǒng)一部署應(yīng)用,對存儲容量需求很大。目前系統(tǒng)內(nèi)涉及高低壓用戶就有2 700多萬戶,涉及各類電子文檔的數(shù)量達上億份。在項目上線初期,營銷檔案系統(tǒng)采用NetApp集中存儲設(shè)備,客戶端通過企業(yè)內(nèi)網(wǎng)進行訪問,但這存在以下問題:僅一臺存儲節(jié)點服務(wù)器,沒有自動負載均衡機制,存在單點訪問隱患,即使有備份,在切換期間系統(tǒng)也無法工作;系統(tǒng)用戶覆蓋全省,文件數(shù)量巨大,且電子檔案多為200 kB~1 MB的小文件,使得讀寫性能問題尤為突出;雖然企業(yè)內(nèi)有大量更換下的存儲設(shè)備可以利舊使用,但采用集中存儲方式無法有效利用這些閑散設(shè)備,造成資源浪費,而且無法及時滿足業(yè)務(wù)需求。
鑒于傳統(tǒng)存儲方式帶來的種種問題,公司決定采用分布式文件系統(tǒng)實現(xiàn)客戶檔案等非結(jié)構(gòu)化數(shù)據(jù)的分布式存儲。分布式存儲是指通過集群應(yīng)用、網(wǎng)格技術(shù)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲設(shè)備通過應(yīng)用軟件系統(tǒng)集合起來協(xié)同工作,在網(wǎng)絡(luò)上建立一個單一的、層次化的文件系統(tǒng),對外提供數(shù)據(jù)存儲和訪問等功能。常見的分布式文件系統(tǒng)有HDFS,MooseFS,Lustre等,具有以下特點[1-3]:
(1)基于C/S模式,文件數(shù)據(jù)分塊,存儲在不同的物理設(shè)備上,文件讀寫并行處理,可大大提高多客戶端讀寫效率。
(2)可用性提高,采用冗余存儲,在部分存儲介質(zhì)損壞的情況下保證服務(wù)依然可用。
(3)實現(xiàn)敏捷擴容,在不影響原服務(wù)的情況下實現(xiàn)在線擴容,且存儲資源無差別化,可以混合使用不同類型的存儲介質(zhì),沒有RAID機制中的木桶短板現(xiàn)象,可對已有設(shè)備進行利舊使用。
1.1 分布式文件系統(tǒng)比較
基于對分布式文件系統(tǒng)的研究和分析,結(jié)合營銷檔案管理的實際需求,最終采用MooseFS(以下簡稱MFS)作為營銷檔案系統(tǒng)中非結(jié)構(gòu)化檔案的存儲方式。與HDFS相比,MFS的最大特點是兼容POSIX。MFS分布式文件系統(tǒng)支持FUSE,客戶端通過FUSE內(nèi)核接口管理遠程服務(wù)器上的數(shù)據(jù)如同管理本地文件系統(tǒng)一樣,無需專門開發(fā)訪問接口,而HDFS需要專門的API來訪問。另外,Lustre一般用于存儲I/O密集型數(shù)據(jù),用于高性能計算,并不適合營銷業(yè)務(wù)場景,而且對硬件要求比較高[4,5]。
采用MFS的不足之處是元數(shù)據(jù)服務(wù)器會占用更多的內(nèi)存,而且讀寫速度相對不高。在實際使用中,檔案系統(tǒng)主要用于上傳和下載文檔數(shù)據(jù),對讀寫的延遲要求并不高。在部署中注意使用內(nèi)存較大的服務(wù)器作為元數(shù)據(jù)服務(wù)器[4,5]。
表1 幾種分布式文件系統(tǒng)的比較
1.2 MFS概述
MFS是由 Gemius SA開發(fā)的開源分布式網(wǎng)絡(luò)文件系統(tǒng)。使用MFS可以把數(shù)據(jù)分散存儲在多臺服務(wù)器上,但對于用戶來講,如同訪問用戶一個本地目錄一樣。MFS和其他類Unix文件系統(tǒng)一樣,具有標準的文件操作[6],具體包括:
(1)級層結(jié)構(gòu),即目錄樹結(jié)構(gòu)。
(2)存儲 POSIX文件屬性,如權(quán)限、最后訪問時間、最后修改時間等。
(3)支持特殊文件,如塊和字符設(shè)備、管道、套接字等。
(4)支持基于IP地址或者密碼的訪問限制。
1.3 MFS特性
與傳統(tǒng)的文件系統(tǒng)相比,MFS具有以下主要特性[6,7]:
(1)高可靠性:MFS采用多重拷貝機制,數(shù)據(jù)能夠在數(shù)據(jù)服務(wù)器之間進行復(fù)制。只要存在一個副本完好可用,那么該數(shù)據(jù)就可用,并根據(jù)設(shè)置的副本數(shù)自動復(fù)制,相比RAID 1+0冗余級別更高。
(2)可擴展性:可以在線擴容,即動態(tài)添加存儲結(jié)點而不影響系統(tǒng)的正常使用,體系架構(gòu)有很強的可伸縮性。
(3)高可控性:提供文件系統(tǒng)級的回收站機制,以及類似于Java的垃圾回收機制。
(4)可追溯性:支持快照功能,能夠根據(jù)文件的不同操作(讀取/寫入)生成相應(yīng)的文件快照。
(5)高讀寫性能:提供高效的隨機讀寫能力,尤其是海量小文件的隨機讀寫效率,并提供負載均衡。
1.4 MFS系統(tǒng)結(jié)構(gòu)
MFS分布式文件系統(tǒng)按功能不同分為4種類型節(jié)點:Master(管理服務(wù)器)、Metalogger(元數(shù)據(jù)日志服務(wù)器)、Chunk Server(數(shù)據(jù)存儲服務(wù)器)和Client(客戶機),系統(tǒng)架構(gòu)如圖1所示。
圖1 MFS系統(tǒng)架構(gòu)
Master負責管理各個數(shù)據(jù)存儲服務(wù)器,控制文件讀寫、回收空間、恢復(fù)和多節(jié)點間的數(shù)據(jù)拷貝等。Metalogger負責元數(shù)據(jù)的日志交換,定時從Master中下載元數(shù)據(jù)文件作為備份。在現(xiàn)有Master故障時,Metalogger就提升為Master,接替其進行工作。Chunk Server則監(jiān)聽Master的調(diào)度,提供存儲空間并且相互之間同步數(shù)據(jù)。Client作為應(yīng)用服務(wù)器掛載MFS分布式文件系統(tǒng)后,通過Master與Chunk Server進行通信,實現(xiàn)對文件的訪問,任何一臺兼容POSIX操作系統(tǒng)的服務(wù)器都能作為Client掛載MFS分布式文件系統(tǒng)。
2.1 構(gòu)建MFS環(huán)境
營銷檔案系統(tǒng)的MFS共采用10臺PC服務(wù)器,其中8臺PC作為Chunk Server,1臺PC作為Master,1臺PC作為Metalogger。各臺PC配置見表2。
MFS中有一項關(guān)鍵參數(shù)goal,表示某個目錄級別或文件級別的副本數(shù)目。goal值設(shè)定為大于1時,MFS可以提供冗余備份。當一個數(shù)據(jù)文件保存為多個副本時,整個系統(tǒng)在有單臺數(shù)據(jù)服務(wù)器故障時仍可提供正常服務(wù)。一般可用副本數(shù)的設(shè)置應(yīng)超過預(yù)期無法訪問服務(wù)器的數(shù)量[8]。
營銷檔案系統(tǒng)MFS環(huán)境中g(shù)oal值設(shè)置為3。當一個數(shù)據(jù)服務(wù)器出現(xiàn)故障無法訪問時,仍會有另外2份備份可對外提供數(shù)據(jù)讀寫服務(wù)。一旦出現(xiàn)文件當前副本數(shù)目小于goal值情況時,數(shù)據(jù)服務(wù)器會將該數(shù)據(jù)同步到其他服務(wù)器,直至確保每一個數(shù)據(jù)文件在MFS都有3份副本存在。
部署在MFS內(nèi)的PC服務(wù)器總?cè)萘考s60 TB,設(shè)定的goal值為3,則實際可用容量為約20 TB。
2.2 服務(wù)器容量負載均衡
營銷檔案系統(tǒng)的MFS原先只部署了7臺容量為8TB的PC數(shù)據(jù)存儲服務(wù)器,通過一段時間的使用,發(fā)現(xiàn)各臺Chunk Server的硬盤使用率已高達98%以上,后進行在線擴容,增加1臺新的PC數(shù)據(jù)存儲服務(wù)器(mfs236)。圖2對MFS的負載平衡特性進行了直觀展示。
圖2 MFS監(jiān)控網(wǎng)站Server情況一覽
表2 MFS部署PC配置情況
圖2(a)顯示了Chunk Server的硬盤容量等信息??梢钥闯?,新增Chunk Server(mfs236)硬盤占用率最低,且原有的Chunk Server硬盤使用率下降到95%以下。
圖2(b)顯示經(jīng)過1周后,通過負載均衡以及內(nèi)部的文件重構(gòu)和遷移,各臺Chunk Server容量已趨于一致。
圖3(a)是讀操作監(jiān)控表,可以發(fā)現(xiàn)各臺Chunk Server在各個時間段都有連續(xù)讀操作,而非僅在工作時段(8∶00—17∶00),這是由于MFS內(nèi)部進行文件重構(gòu),需讀取早期Chunk Server中的數(shù)據(jù),遷入新增的負載較小的第8臺Chunk Server。圖3(b)顯示經(jīng)過1周后,由于各臺Chunk Server容量已趨于一致,讀操作也趨于相同。
圖3 數(shù)臺Chunk Server的讀操作
從圖4中可以看出,每天工作時間段(8∶00—17∶00)各臺Chunk Server都有比較集中的寫操作,而新增的Chunk Server有連續(xù)大量寫操作,表明MFS內(nèi)部正在進行文件重構(gòu)。圖4(b)顯示經(jīng)過1周后,由于各臺Chunk Server容量已趨于一致,寫操作也趨于相同。
通過上述各圖對比,可以驗證MFS將原占有率高的Chunk Server上的數(shù)據(jù)遷移至負載較小的第8臺新增Chunk Server,實現(xiàn)了MFS的負載均衡。
2.3 使用MFS的優(yōu)勢
(1)技術(shù)先進。使用MFS后,營銷檔案系統(tǒng)能實現(xiàn)在線擴容和自動負載均衡。
(2)降低成本。原設(shè)計架構(gòu)中擬采用NetApp的存儲解決方案,需要1臺容量為13 TB的設(shè)備,價格約80萬元。而采用MFS部署后,目前8臺PC數(shù)據(jù)存儲服務(wù)器組(總?cè)萘?0 TB,實際可用容量20 TB)總價值約20萬元,大大節(jié)省了企業(yè)成本。
(3)擴展性強。由于原架構(gòu)擴展性有限,擴容只能通過購置新設(shè)備實現(xiàn)。而采用MFS部署后,可以通過新加入利舊設(shè)備或者在原有服務(wù)器上增加磁盤來滿足,實現(xiàn)敏捷部署,可以快速響應(yīng)業(yè)務(wù)需求,提高企業(yè)效率。
圖4 數(shù)臺Chunk Server的寫操作
本文通過MFS分布式文件系統(tǒng)在電力營銷檔案系統(tǒng)中的應(yīng)用,驗證了分布式文件系統(tǒng)在負載均衡和在線擴容等方面的優(yōu)勢。通過運用分布式文件系統(tǒng),可以降低企業(yè)的設(shè)備成本和管理成本,提高企業(yè)效率,為企業(yè)數(shù)據(jù)中心的海量數(shù)據(jù)存儲問題提供了可行的解決方案。
[1]錢宏蕊.云存儲技術(shù)發(fā)展及應(yīng)用[J].電信工程技術(shù)與標準化.2012(4)∶15-20.
[2]馮丹.網(wǎng)絡(luò)存儲關(guān)鍵技術(shù)的研究及進展[J].移動通信,2009,33(11)∶25-39.
[3]V CHANG,R J WALTERS,G WILLS.Cloud storage in a private cloud deployment∶lessons for data intensive research[C].The Second International Conference on Cloud Computing and Service Sciences,2012.
[4]SCHMUCK FRANK,ROGER HASKIN.GPFS∶A shareddisk file system for large computing clusters[C]//Proceedings of Conference on File and Storage Technologies.2002∶231-244.
[5]Architecture and requirements∶MooseFS Network File System[OL].http∶//www.moosefs.org/2013-01-23
[6]MooseFS[OL].http∶//en.wikipedia.org/wiki/MooseFS. MooseFS[OL].http∶//www.moosefs.org/2012.
[7]MooseFS User Guide[OL].http∶//www.moosefs.org/referenceguide.html#using-moosefs
(本文編輯:方明霞)
Application of Distributed File System in Marketing File System
FANG Zhou,PEI Xubin,QIU Weihao
(Information and Telecommunication Branch of State Grid Zhejiang(Provincial)Electric Power Company,Hangzhou 310007,China)
The marketing file system of Zhejiang(Provincial)Electric Power Company now is fully applied in the whole province.The fast growth of file data brings stricter requirements on storage of electronic files and other nonstructural data.By investigating features of distributed file system and taking the application of MooseFS distributed file system in marketing file system as an example,it is verified that the distributed file system is superior to the concentrated storage in terms of load balance,online capacity expansion and so on. The application of distributed file system provides a feasible solution to massive data storage of marketing file system.
distributed file system;marketing file system;MooseFS;load balance;online capacity expansion
TP333
B
1007-1881(2015)10-0044-04
2015-08-05
方 舟(1984),男,工程師,從事信息系統(tǒng)運行維護工作。