朱彥霞 范伊琳 吳玉彬 華南 羅劉敏
摘 要:本文介紹了目前成熟分布式架構(gòu),在分析醫(yī)療機(jī)構(gòu)、高校等特殊實(shí)際應(yīng)用需求的基礎(chǔ)上,汲取主流分布式框架的優(yōu)點(diǎn),提出分布式存儲(chǔ)框架的優(yōu)化設(shè)計(jì)思路,搭建了一種融合分布式存儲(chǔ)框架,系統(tǒng)的實(shí)現(xiàn)將對(duì)特殊行業(yè)內(nèi)部分布式存儲(chǔ)的部署具有推廣意義。
關(guān)鍵詞:存儲(chǔ)技術(shù);分布式文件系統(tǒng);架構(gòu)設(shè)計(jì);性能優(yōu)化
中圖分類(lèi)號(hào):TP399 ? ? 文獻(xiàn)標(biāo)識(shí)碼:A ? ? 文章編號(hào):1003-5168(2021)36-0022-03
An Architecture Design Integrating Distributed Storage
ZHU Yanxia1 ? ?FAN Yilin2 ? ?WU Yubin1 ? ?HUA Nan3 ? ?LUO Liumin4
(1.Henan General Hospital, Zhengzhou Henan 450002;2.Shang International Engineering Co., Ltd., ?Beijing ?100069;3. China Radio and Television Henan Network Co., Ltd., Zhengzhou Henan 450000;4. Luoyang Polytechnic, Luoyang Henan 471000)
Abstract:In this paper,the current mature distributed architecture is less,based on the analysis of the special practical application requirements of medical institutions,universities,etc.,and the advantages of mainstream distributed frameworks are analyzed to analyze the optimization design ideas of distributed storage frameworks,and a fusion distributed storage is proposed. Framework,the implementation of the system will have promotional significance for the deployment of internal distributed storage in special industries.
Keywords:storage technology; distributed file system; architecture design; performance optimization
中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心在京發(fā)布的《中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展情況統(tǒng)計(jì)報(bào)告》顯示,截至2021年6月,我國(guó)網(wǎng)民規(guī)模已達(dá)10.11億,互聯(lián)網(wǎng)的普及程度已超71.6%;清華大學(xué)《2020—2021年元宇宙發(fā)展研究報(bào)告》中指出,我們已經(jīng)進(jìn)入5G、大數(shù)據(jù)、人工智能、區(qū)塊鏈等技術(shù)超融合模式,逐漸走向“數(shù)字創(chuàng)造、數(shù)字資產(chǎn)、數(shù)字市場(chǎng)、數(shù)字貨幣、數(shù)字消費(fèi)”的全數(shù)字化新時(shí)代。隨之帶來(lái)的是數(shù)據(jù)量的幾何級(jí)迅速增長(zhǎng),“信息爆炸”的大數(shù)據(jù)時(shí)代已經(jīng)到來(lái)。
大數(shù)據(jù)時(shí)代,人們的關(guān)注焦點(diǎn)主要在大數(shù)據(jù)存儲(chǔ)和大數(shù)據(jù)分析兩個(gè)方面,然而大數(shù)據(jù)存儲(chǔ)是大數(shù)據(jù)分析的基礎(chǔ),受到了業(yè)內(nèi)學(xué)者的廣泛關(guān)注與研究。目前,大數(shù)據(jù)存儲(chǔ)主要面臨三個(gè)方面的問(wèn)題:一是數(shù)據(jù)的增長(zhǎng)速度已經(jīng)遠(yuǎn)遠(yuǎn)超過(guò)存儲(chǔ)介質(zhì)創(chuàng)新發(fā)展速度,單純的硬件升級(jí)所消耗的成本巨大;二是數(shù)據(jù)資源閑置、硬件存儲(chǔ)的利用率低下,無(wú)形中導(dǎo)致了存儲(chǔ)成本的消耗增加;三是數(shù)據(jù)的備份還原的效率低下,導(dǎo)致異常情況下的數(shù)據(jù)保護(hù)、數(shù)據(jù)遷移存在安全隱患。分布式大數(shù)據(jù)存儲(chǔ)往往利用網(wǎng)絡(luò)采取數(shù)據(jù)分發(fā)策略,以提高數(shù)據(jù)的分布式存儲(chǔ)、響應(yīng)及轉(zhuǎn)發(fā)速度;通過(guò)數(shù)據(jù)及副本的分節(jié)點(diǎn)存儲(chǔ)提高數(shù)據(jù)的安全性。
目前,較成熟的分布式存儲(chǔ)系統(tǒng)在大數(shù)據(jù)存儲(chǔ)方面帶來(lái)卓越功績(jī)的同時(shí),仍然面臨一些挑戰(zhàn):一是高性能與高成本并存,高性能存儲(chǔ)與部署及維護(hù)的高成本相對(duì)應(yīng);二是低成本與低適應(yīng)度并存,低建設(shè)成本的分布式系統(tǒng)往往在系統(tǒng)的可移植性、拓展性方面能力有所欠缺;三是系統(tǒng)架構(gòu)規(guī)范化程度過(guò)高,對(duì)于特殊行業(yè)的普適性較差,在價(jià)格、維護(hù)、升級(jí)等方面有著亟待改善的空間。本文在分析目前成熟分布式文件系統(tǒng)的基礎(chǔ)上,進(jìn)行優(yōu)勢(shì)融合,設(shè)計(jì)了一個(gè)CDS(Converged Distributed Storage)構(gòu)架,在參考現(xiàn)有開(kāi)源軟件邏輯的基礎(chǔ)上,實(shí)現(xiàn)分節(jié)點(diǎn)數(shù)據(jù)的存儲(chǔ)、傳輸與備份;在提高數(shù)據(jù)存儲(chǔ)優(yōu)化的基礎(chǔ)上,提高系統(tǒng)資源利用率,增強(qiáng)系統(tǒng)備份還原的安全性,增強(qiáng)在單位內(nèi)部局域網(wǎng)實(shí)現(xiàn)專業(yè)、特殊需求領(lǐng)域的適用性。
1 分布式存儲(chǔ)研究現(xiàn)狀
數(shù)字化時(shí)代推動(dòng)了數(shù)據(jù)的爆發(fā)式增長(zhǎng),而數(shù)據(jù)的快速增長(zhǎng)速度又促進(jìn)了分布式存儲(chǔ)技術(shù)領(lǐng)域的蓬勃發(fā)展與國(guó)內(nèi)外學(xué)者的廣泛研究。分布式存儲(chǔ)的技術(shù)主要涉及物理層、網(wǎng)絡(luò)層、應(yīng)用層的研究,近幾年的研究熱點(diǎn)多圍繞提高分布式系統(tǒng)的計(jì)算力、拓展性、可靠性、自治性以及分布式存儲(chǔ)應(yīng)用等方面展開(kāi)。馬仁杰等[1]將區(qū)塊鏈技術(shù)與分布式存儲(chǔ)技術(shù)應(yīng)用于檔案信息管理中,以提高檔案信息管理資源服務(wù)的自動(dòng)化效率;劉蘇英[2]將分布式存儲(chǔ)技術(shù)應(yīng)用在電信通信大數(shù)據(jù)庫(kù)存儲(chǔ)中,通過(guò)基于細(xì)粒度均衡算法,實(shí)現(xiàn)存儲(chǔ)的負(fù)載均衡;孟慶玉[3]、遲松特[4]、朱良杰等[5]對(duì)云計(jì)算環(huán)境下的分布式存儲(chǔ)關(guān)鍵技術(shù)進(jìn)行了細(xì)致研究,并對(duì)云分布式存儲(chǔ)的發(fā)展前景進(jìn)行了展望;張曉等[6]對(duì)近年來(lái)Ceph分布式存儲(chǔ)和優(yōu)化的技術(shù)進(jìn)行了綜合性研究與分析;戴威[7]在分析資源存儲(chǔ)特征的基礎(chǔ)上,提出了一種跨HDFS集群的分布式存儲(chǔ)方法;董聰[8]在對(duì)HDFS系統(tǒng)的寫(xiě)入與傳輸過(guò)程量化分析的基礎(chǔ)上,提出了一種異步寫(xiě)入方式,以優(yōu)化HDFS的寫(xiě)入性能;Wu Chenhan充分結(jié)合了SSDs的高I/O吞吐特性以及HDDs的大容量特性,提出了一種分層混合分布式文件存儲(chǔ)技術(shù),可在一定程度上提高數(shù)據(jù)的實(shí)時(shí)訪問(wèn)性能。以上研究都為分布式存儲(chǔ)的改進(jìn)提供了參考借鑒。
2 存儲(chǔ)技術(shù)研究
2.1 傳統(tǒng)存儲(chǔ)技術(shù)
2.1.1 NAS。NAS(Network Attached Storage)以數(shù)據(jù)為中心,服務(wù)器與存儲(chǔ)設(shè)備分離,通過(guò)局域網(wǎng)連接各平臺(tái),平臺(tái)間通過(guò)NFS或CIFS文件系統(tǒng)訪問(wèn)協(xié)議訪問(wèn)服務(wù)器,實(shí)現(xiàn)數(shù)據(jù)的集中統(tǒng)一管理,確保服務(wù)器獲取更多計(jì)算資源、減輕負(fù)載。NAS擴(kuò)展性好,但文件傳輸過(guò)程中網(wǎng)絡(luò)開(kāi)銷(xiāo)較大,數(shù)據(jù)訪問(wèn)速度極大受限。
2.1.2 SAN。SAN(Storage Area Network)采用專用網(wǎng)絡(luò)實(shí)現(xiàn)服務(wù)器和存儲(chǔ)設(shè)備之間的連接,根據(jù)傳輸過(guò)程協(xié)議不同,分為FC-SAN和IP-SAN。FC-SAN采用光纖通道技術(shù),實(shí)現(xiàn)數(shù)據(jù)塊的高速傳輸,但部署成本較高;IP-SAN使用IP通道連接服務(wù)器與存儲(chǔ)設(shè)備,較FC-SAN部署成本低,但數(shù)據(jù)傳輸過(guò)程有時(shí)會(huì)受到IP網(wǎng)絡(luò)干擾,而產(chǎn)生“丟包”現(xiàn)象。
2.2 分布式主流框架
分布式存儲(chǔ)技術(shù)的實(shí)現(xiàn)以分布式存儲(chǔ)框架為基礎(chǔ)。目前,較為成熟的分布式存儲(chǔ)框架主要包括HDFS、FastDFS、Swift、Ceph等。
2.2.1 HDFS。HDFS屬于分布式文件存儲(chǔ),由谷歌于2003年推出的基于Hadoop框架的分布式計(jì)算的開(kāi)源框架。HDFS作為Hadoop的三大核心組件之一,通常與Hive、Hbase共同使用,但存在系統(tǒng)搭建部署煩瑣、運(yùn)維難度大、開(kāi)發(fā)應(yīng)用成本較高等問(wèn)題。HDFS的優(yōu)勢(shì)在于對(duì)大數(shù)據(jù)的處理、高容錯(cuò)性、高可靠性,但對(duì)小文件的存儲(chǔ)、讀取適應(yīng)性較差。
2.2.2 FastDFS。FastDFS是一個(gè)開(kāi)源的輕量級(jí)分布式文件存儲(chǔ),用于解決大數(shù)據(jù)量存儲(chǔ)和負(fù)載均衡等問(wèn)題,并需要通過(guò)專有API進(jìn)行訪問(wèn)。FastDFS具有很強(qiáng)的擴(kuò)展性,軟RAID使系統(tǒng)的并發(fā)處理能力與數(shù)據(jù)容錯(cuò)恢復(fù)能力增強(qiáng),但不支持?jǐn)帱c(diǎn)續(xù)傳,對(duì)大文件傳輸存在隱患。
2.2.3 Swift。Swift是由Rackspace公司開(kāi)發(fā)的分布式對(duì)象存儲(chǔ)服務(wù),采用對(duì)稱的、面向資源的分布式架構(gòu)設(shè)計(jì)。通過(guò)計(jì)算,將對(duì)象均勻分布在虛擬空間節(jié)點(diǎn)上,系統(tǒng)拓展性較好,可保持極高的數(shù)據(jù)持久性,但對(duì)原生對(duì)象的存儲(chǔ)不支持實(shí)時(shí)文件操作,較多地應(yīng)用于大規(guī)模公有云的生產(chǎn)環(huán)境中。
2.2.4 Ceph。Ceph是開(kāi)源分布存儲(chǔ)平臺(tái),創(chuàng)新CRUSH算法,實(shí)現(xiàn)數(shù)據(jù)的尋址,數(shù)據(jù)分布均衡、并行度高,可實(shí)現(xiàn)對(duì)塊、對(duì)象、文件的分布式存儲(chǔ),但對(duì)部署團(tuán)隊(duì)能力要求較高。
3 融合分布式存儲(chǔ)構(gòu)架(CDS構(gòu)架)
3.1 特殊領(lǐng)域應(yīng)用需求分析
分布式技術(shù)已廣泛應(yīng)用于諸多領(lǐng)域,但對(duì)醫(yī)療機(jī)構(gòu)、高校等特殊領(lǐng)域的實(shí)際需求存在一定的不適用性,醫(yī)療機(jī)構(gòu)、高校的分布式存儲(chǔ)要求往往存在以下特點(diǎn)。
①系統(tǒng)內(nèi)部數(shù)據(jù)的安全級(jí)別比較高,但對(duì)硬件配置要求往往不高。因此,多采用內(nèi)網(wǎng)或區(qū)域性專網(wǎng)化部署,盡量減少對(duì)硬件頻繁性升級(jí)改造。②內(nèi)部數(shù)據(jù)傳輸量的時(shí)間分布性較為明顯,可滿足中小型單位日常使用的服務(wù)能力,具有較強(qiáng)的負(fù)載均衡能力。③硬件專業(yè)化人員相對(duì)匱乏,要求盡可能地降低維護(hù)的難度以及維護(hù)成本。④對(duì)數(shù)據(jù)保密和數(shù)據(jù)保護(hù)要求較高,需要分級(jí)、分權(quán)限進(jìn)行用戶驗(yàn)證以及管理,并對(duì)敏感數(shù)據(jù)進(jìn)行加密。因此,對(duì)分布式架構(gòu)中軟件加密需求要求比較高。⑤要求存儲(chǔ)系統(tǒng)的高兼容性以及系統(tǒng)高拓展性,對(duì)開(kāi)發(fā)者友好,可穩(wěn)定進(jìn)行系統(tǒng)升級(jí)改造。
3.2 CDS架構(gòu)優(yōu)化思路
基于上述分析,需要在以下幾方面進(jìn)行優(yōu)化提升。
3.2.1 去中心化設(shè)計(jì)。克服傳統(tǒng)中心化分布式存儲(chǔ)對(duì)Tracker Server、Storage Server和Client的角色的細(xì)分,同時(shí)增加Route Server、ACL Server、Index Server等服務(wù)模塊,通過(guò)服務(wù)來(lái)優(yōu)化網(wǎng)絡(luò)的路由、權(quán)限驗(yàn)證和文件搜索等功能;通過(guò)冗余備份,提高系統(tǒng)故障恢復(fù)的效率及安全性。
3.2.2 自動(dòng)巡檢機(jī)制。各個(gè)節(jié)點(diǎn)要定期自動(dòng)檢查,實(shí)現(xiàn)數(shù)據(jù)的同步、備份、存儲(chǔ)權(quán)重的更改,實(shí)現(xiàn)基礎(chǔ)冗余數(shù)據(jù)的保護(hù),所有的數(shù)據(jù)保持一定比例的冗余備份,避免某個(gè)節(jié)點(diǎn)崩潰后數(shù)據(jù)切片無(wú)法恢復(fù)。
3.2.3 系統(tǒng)程序獨(dú)立封裝。系統(tǒng)采用獨(dú)立應(yīng)用程序并可自動(dòng)升級(jí),以便于部署和安裝,降低對(duì)終端的軟硬件環(huán)境要求。獨(dú)立應(yīng)用程序僅在第一次啟動(dòng)配置,日常無(wú)須安裝用戶的干預(yù),若節(jié)點(diǎn)硬件更換或者數(shù)據(jù)復(fù)制后,運(yùn)維人員可以選擇恢復(fù)或重新配置某個(gè)節(jié)點(diǎn),以降低運(yùn)維難度與成本。
3.2.4 支持網(wǎng)絡(luò)路由優(yōu)化和硬件優(yōu)化。通過(guò)日常業(yè)務(wù)處理提升高性能硬件運(yùn)行概率,以此提高系統(tǒng)整體性能;管理員可以在任何節(jié)點(diǎn)根據(jù)權(quán)限管理對(duì)網(wǎng)絡(luò)路由進(jìn)行調(diào)優(yōu),并根據(jù)不同客戶端的硬件情況和用途進(jìn)行權(quán)重設(shè)置。
3.2.5 數(shù)據(jù)權(quán)限管理。分布式域的創(chuàng)建者可以根據(jù)角色設(shè)置對(duì)應(yīng)權(quán)限,用戶根據(jù)角色賦權(quán)。
3.2.6 數(shù)據(jù)安全等級(jí)管理??梢詷?biāo)注數(shù)據(jù)的加密等級(jí),實(shí)現(xiàn)數(shù)據(jù)的加密方式與創(chuàng)建者的高度關(guān)聯(lián)性;對(duì)于可分享的數(shù)據(jù)支持明文存儲(chǔ);第三方調(diào)取時(shí)采用二次加密方式,防止傳輸過(guò)程中的數(shù)據(jù)篡改或竊取。
3.2.7 支持版本回溯。本系統(tǒng)進(jìn)行版本控制,確保重要文檔歷史版本可追溯還原。
3.2.8 分域權(quán)限管理。任何客戶端在加入分布域后,都可以實(shí)現(xiàn)自動(dòng)維護(hù),減少人員維護(hù)。域管理員可以隨時(shí)調(diào)配軟硬資源。
3.3 CDS架構(gòu)設(shè)計(jì)
CDS的總體架構(gòu)圖如圖1所示。CDS架構(gòu)設(shè)計(jì)整體上采用一種跨平臺(tái)的語(yǔ)言,可以編譯為獨(dú)立的執(zhí)行程序,支持X86處理器和ARM處理器的運(yùn)行,同時(shí)確保以下關(guān)鍵環(huán)節(jié)。①盡量采用開(kāi)源穩(wěn)定的組件,減少對(duì)第三方軟件的依賴。②使用NoSQL數(shù)據(jù)庫(kù)作為計(jì)算緩存,嵌入式數(shù)據(jù)庫(kù)作為持久化存儲(chǔ)。③對(duì)于核心數(shù)據(jù)要采用證書(shū)式不對(duì)稱加密保護(hù),而保密要求低的文件主要采用對(duì)稱加密。④基于FastDFS的設(shè)計(jì)思路,融入HDFS部分功能的同時(shí),引入去中心化的設(shè)計(jì)思想。⑤采用多線程技術(shù),每種服務(wù)負(fù)責(zé)一個(gè)線程通信;采用HTTP協(xié)議最大化兼容網(wǎng)絡(luò)安全通信設(shè)備。⑥使用本地內(nèi)存緩存策略,在保護(hù)數(shù)據(jù)的安全性的前提下,不強(qiáng)制數(shù)據(jù)的實(shí)時(shí)同步,通過(guò)統(tǒng)計(jì)請(qǐng)求數(shù)據(jù)的策略,實(shí)現(xiàn)數(shù)據(jù)的自動(dòng)同步優(yōu)化。⑦數(shù)據(jù)要使用切片存儲(chǔ),便于網(wǎng)絡(luò)傳輸優(yōu)化;冷數(shù)據(jù)或碎片數(shù)據(jù)可重新打包進(jìn)行存儲(chǔ),降低宿主操作系統(tǒng)的分區(qū)表管理壓力。
4 結(jié)語(yǔ)
由于開(kāi)源性及對(duì)第三方軟件依賴的減少,基于CDS的分布式存儲(chǔ)設(shè)計(jì)可提升系統(tǒng)的可維護(hù)性、功能開(kāi)發(fā)的拓展性;同時(shí),輕量級(jí)的設(shè)計(jì)減少部署及維護(hù)的成本,對(duì)特殊行業(yè)局域網(wǎng)內(nèi)的分布式存儲(chǔ)具有一定的推廣意義。
參考文獻(xiàn):
[1] 馬仁杰,沙洲,羅吉鵬.論區(qū)塊鏈思維下我國(guó)檔案信息服務(wù)模式的優(yōu)化路徑[J].檔案學(xué)研究,2021(4):94-99.
[2] 劉蘇英.分布式文件存儲(chǔ)系統(tǒng)在電子通信大數(shù)據(jù)存儲(chǔ)中的應(yīng)用[J].九江學(xué)院學(xué)報(bào)(自然科學(xué)版),2021(2):78-80.
[3] 孟慶玉.基于云計(jì)算的分布式存儲(chǔ)技術(shù)研究[J].信息系統(tǒng)工程,2018(10):43.
[4] 遲松特.云計(jì)算環(huán)境下的分布存儲(chǔ)關(guān)鍵技術(shù)[J].中國(guó)管理信息化,2021(16):167-168.
[5] 朱良杰,沈佳杰,周揚(yáng)帆,等.云際存儲(chǔ)系統(tǒng)性能優(yōu)化研究現(xiàn)狀與展望[J].計(jì)算機(jī)工程與科學(xué),2021(5):761-772.
[6] 張曉,張思蒙,石佳,等.Ceph分布式存儲(chǔ)系統(tǒng)性能優(yōu)化技術(shù)研究綜述[J].計(jì)算機(jī)科學(xué),2021(2):1-12.
[7] 戴威.一種跨HDFS集群的文件資源分布式高效存儲(chǔ)方法[J].電子設(shè)計(jì)工程,2019(21):14-17,22.
[8] 董聰,張曉,程文迪,等.基于新型存儲(chǔ)器件的分布式文件系統(tǒng)性能優(yōu)化[J].計(jì)算機(jī)應(yīng)用,2020(12):3594-3603.