袁 暉,朱小琴,張吉娜,王國霞
(1.國網(wǎng)甘肅省電力公司電力科學(xué)研究院,甘肅蘭州 730070;2.北京科技大學(xué)自動化學(xué)院,北京 100083)
在全球各行各業(yè)的信息化推動下,我國的電力企業(yè)開始對云計算進行研究和實踐,從2010 年開始走出了第一步——資源池的研究和建設(shè)[1-3],存儲池作為資源池的重要組成部分,也經(jīng)過了多次升級,研究者們研究并實現(xiàn)了針對電力企業(yè)自身特點的分布式存儲池。
電力企業(yè)作為國家的能源供給企業(yè),關(guān)系著國計民生,同時也具有規(guī)模龐大、業(yè)務(wù)復(fù)雜的特點,其信息化系統(tǒng)管理的數(shù)據(jù)是企業(yè)的重資產(chǎn),重要且龐雜,主要體現(xiàn)在以下幾個方面。首先,數(shù)據(jù)的種類多,主要有運營監(jiān)測分析業(yè)務(wù)所用到的業(yè)務(wù)基礎(chǔ)數(shù)據(jù)和支撐數(shù)據(jù)的非業(yè)務(wù)數(shù)據(jù),其中業(yè)務(wù)數(shù)據(jù)包括業(yè)務(wù)明細數(shù)據(jù)、指標數(shù)據(jù)和分析數(shù)據(jù),非業(yè)務(wù)數(shù)據(jù)包括監(jiān)測規(guī)則數(shù)據(jù)、事件數(shù)據(jù)、問題數(shù)據(jù)等。不同類型的數(shù)據(jù)對可靠性、處理能力的要求、存儲資源的配置要求等都不相同。其次,電力企業(yè)的數(shù)據(jù)不僅對企業(yè),乃至對整個國家都有著重要的影響,數(shù)據(jù)的可靠性是必須保證的。傳統(tǒng)的網(wǎng)絡(luò)存儲系統(tǒng)采用集中的存儲服務(wù)器存放數(shù)據(jù),存儲服務(wù)器成為系統(tǒng)性能的瓶頸,也是可靠性和安全性的焦點,不能滿足大規(guī)模存儲應(yīng)用的需要。隨著企業(yè)規(guī)模的擴大和業(yè)務(wù)的拓展,數(shù)據(jù)量的增加會帶來存儲量的增加,存儲系統(tǒng)的可擴展性也至關(guān)重要。電力企業(yè)的數(shù)據(jù)會隨著用電周期產(chǎn)生很大的波動,要求存儲系統(tǒng)的負載能力也要是動態(tài)變化的。同時,電力企業(yè)的信息化建設(shè)已經(jīng)進行了很長時間,具有良好的硬件基礎(chǔ),但硬件設(shè)備異構(gòu)化嚴重,那么跨數(shù)據(jù)中心的數(shù)據(jù)交換又是如何實現(xiàn)存儲平臺管理的一致性也是必須考慮的問題。
針對電力企業(yè)在存儲方面的需求,文中對分布式存儲池進行了研究和探索,給出了分級分類的分布式云存儲系統(tǒng)。針對不同數(shù)據(jù)對可靠性、處理能力的需求,提出分級存儲系統(tǒng),即存放業(yè)務(wù)數(shù)據(jù)的一級存儲和存放非業(yè)務(wù)數(shù)據(jù)的二級存儲。同時,在不同級別的存儲系統(tǒng)中,根據(jù)數(shù)據(jù)處理性能和可靠性要求的不同分為兩類:高IO 處理能力的分布式存儲集群和普通IO 處理能力的分布式存儲集群。該分布式云存儲系統(tǒng)不但提高了系統(tǒng)的可靠性、存取效率、擴展性,還可以實現(xiàn)數(shù)據(jù)訪問的一致性。
電力企業(yè)數(shù)據(jù)復(fù)雜,數(shù)據(jù)類型不同,從公司業(yè)務(wù)角度看,數(shù)據(jù)分為業(yè)務(wù)基礎(chǔ)數(shù)據(jù)和支撐功能數(shù)據(jù),其中業(yè)務(wù)基礎(chǔ)數(shù)據(jù)為實現(xiàn)對公司各類核心數(shù)據(jù)資源和經(jīng)營管理活動的全面監(jiān)測、運營分析,系統(tǒng)需要管理公司全業(yè)務(wù)范圍的業(yè)務(wù)明細數(shù)據(jù)、指標數(shù)據(jù)和分析數(shù)據(jù);支撐功能數(shù)據(jù)是支撐系統(tǒng)應(yīng)用功能的支撐數(shù)據(jù),包括監(jiān)測規(guī)則數(shù)據(jù)、事件數(shù)據(jù)、問題數(shù)據(jù)等。不同類型的數(shù)據(jù)對存儲系統(tǒng)的性能要求不同,而且電力企業(yè)中信息化的硬件基礎(chǔ)異構(gòu)化現(xiàn)象嚴重,不同性能的硬件需要合理分配。綜合上述原因,電力企業(yè)的存儲池采用了二級二類分布式云存儲系統(tǒng)總架構(gòu)。
一級存儲主要存放支撐業(yè)務(wù)應(yīng)用所需要的業(yè)務(wù)數(shù)據(jù),以滿足各類物理機池或小型機虛擬池對存儲的需求。由于主機規(guī)模較大、并發(fā)數(shù)高、數(shù)據(jù)類型復(fù)雜,因此通常采用高端集中式存儲;同時,針對業(yè)務(wù)數(shù)據(jù)對處理性能和可靠性要求的不同,把一級存儲分為一級高性能存儲和一級中性能存儲。
二級存儲主要存放非業(yè)務(wù)數(shù)據(jù),比如X86 虛擬化池虛擬映像等,一般由中端存儲和分布式存儲組成;同時也分為二級高性能存儲和二級中性能存儲。文中將二類存儲對應(yīng)設(shè)計為大容量的分布式存儲設(shè)計和高性能的分布式存儲設(shè)計,其中,大容量分布式存儲主要適用于二級存儲低IO 的情況,而高性能分布式存儲則適用于一級存儲高IO、一級存儲低IO 和二級存儲高IO 的情況。分布式云存儲系統(tǒng)的總架構(gòu)如圖1 所示。
圖1 二級二類分布式云存儲系統(tǒng)總架構(gòu)
分布式存儲系統(tǒng),就是將數(shù)據(jù)分散存儲在多臺獨立的設(shè)備上,以提高系統(tǒng)的可靠性[4-5],也是分布式云存儲系統(tǒng)設(shè)計的主要目標之一。傳統(tǒng)的網(wǎng)絡(luò)存儲系統(tǒng)采用集中的存儲服務(wù)器,存儲服務(wù)器成為系統(tǒng)性能的瓶頸,也是可靠性和安全性的焦點,不能滿足大規(guī)模存儲應(yīng)用的需要。
分布式存儲系統(tǒng)設(shè)計的主要目標之一是可擴展性(可存儲幾百PB的數(shù)據(jù)),需從多方面考慮[7-8]:整體存儲容量、系統(tǒng)的吞吐量以及各個客戶端、目錄和文件的性能。分布式云存儲系統(tǒng)采用可擴展的系統(tǒng)結(jié)構(gòu),利用多臺存儲服務(wù)器分擔存儲負荷,利用位置服務(wù)器定位存儲信息,它不但提高了系統(tǒng)的可靠性、可用性和存取效率,而且易于擴展。
分布式云存儲系統(tǒng)設(shè)計的另一目標是提高系統(tǒng)性能[9-12],即可適用于各種高性能的工作負載。工作負載設(shè)計的目標是幾千臺主機在同一時刻對同一個文件進行幾百萬次并發(fā)讀寫,或者同時在某個目錄下創(chuàng)建文件,這種只有在超級計算機集群進行科學(xué)運算時才出現(xiàn)的場景[10-11],將會在未來普遍出現(xiàn)。更重要的是,分布式文件系統(tǒng)的負載能力是動態(tài)的,即隨著時間的推移,實際應(yīng)用中數(shù)據(jù)和元數(shù)據(jù)組織結(jié)構(gòu)不斷改進,分布式文件系統(tǒng)的負載能力將會有很大的提高。
分布式存儲的設(shè)計要保證能支持跨地域的數(shù)據(jù)中心與數(shù)據(jù)中心之間的分布式存儲平臺的管理一致性[6],還要根據(jù)不同物理資源的特性和實際性能設(shè)計相應(yīng)的資源池,以滿足不同用戶和應(yīng)用的需要,如高IOPS 資源池、大容量資源池等。同時還要兼容對整個分布式存儲的監(jiān)控、管理和調(diào)度,以確保在大規(guī)模的分布式存儲使用場景下,有標準化的管理流程、自動化的任務(wù)分配和資源調(diào)度。分布式云存儲系統(tǒng)的功能邏輯架構(gòu)如圖2 所示。
圖2 分布式云存儲系統(tǒng)的功能邏輯架構(gòu)
在分布式云存儲系統(tǒng)部署的過程中,首先要考慮網(wǎng)絡(luò)的情況,如網(wǎng)絡(luò)帶寬、硬件資源和網(wǎng)絡(luò)連接情況,以及分布式存儲的性能問題。在分布式存儲運行過程中,為了確保數(shù)據(jù)的有效性,需要做到多冗余的數(shù)據(jù)備份,這就要求數(shù)據(jù)在多個節(jié)點備份過程中有單獨的網(wǎng)絡(luò),以隔離其他應(yīng)用。同時,用戶數(shù)據(jù)訪問的網(wǎng)絡(luò)也要獨立開,以確保分布式存儲的性能。在分布式存儲設(shè)計和實現(xiàn)的過程中,要考慮多個資源池不同層級的數(shù)據(jù)請求和交互,同樣也要在網(wǎng)絡(luò)的層面進行隔離。分布式云存儲系統(tǒng)的網(wǎng)絡(luò)架構(gòu)如圖3所示。
分布式存儲系統(tǒng)的架構(gòu)設(shè)計基本要點有3 個主要部分:
1)客戶端:提供類POSIX 文件系統(tǒng)接口的能力;
2)對象存儲設(shè)備(OSD)集群:存儲所有數(shù)據(jù)和元數(shù)據(jù);
圖3 分布式云存儲系統(tǒng)的網(wǎng)絡(luò)架構(gòu)
3)元數(shù)據(jù)服務(wù)器(MDS)集群:管理命名空間(文件名稱和目錄),保證數(shù)據(jù)的安全性和一致性。
分布式存儲系統(tǒng)通過元數(shù)據(jù)管理和數(shù)據(jù)管理兩個管理類型的設(shè)計來保證高性能、高可靠性和高可用性的同時,還能保證可擴展性,即將數(shù)據(jù)和元數(shù)據(jù)分開存儲、動態(tài)分布元數(shù)據(jù)管理以及可靠的自動分布式對象存儲。
1)元數(shù)據(jù)管理:使用元數(shù)據(jù)集群管理元數(shù)據(jù)請求,元數(shù)據(jù)都集中存放在分布式對象存儲上,元數(shù)據(jù)服務(wù)器只用于處理元數(shù)據(jù)請求已經(jīng)緩存的部分元數(shù)據(jù)信息;Meta Data Cluster 集群上緩存的元數(shù)據(jù)信息使用動態(tài)子樹分割管理。當寫操作跨越對象邊界時,客戶端獲取相關(guān)對象的排它鎖,然后立即提交寫操作,釋放鎖,通過申請鎖和異步刷新數(shù)據(jù),對象鎖可以掩飾大量寫的延遲來保證數(shù)據(jù)的一致性。
2)數(shù)據(jù)管理:數(shù)據(jù)布局的使用設(shè)計應(yīng)參考CRUSH 算法的設(shè)計管理,將數(shù)據(jù)的管理從邏輯和物理上分為若干個層次結(jié)構(gòu)。
在設(shè)計系統(tǒng)的高可用性時,應(yīng)當考慮元數(shù)據(jù)服務(wù)器的負載均衡:
1)分布式存儲可以將大量讀訪問的目錄復(fù)制到多個節(jié)點上分散負載[13];
2)分布式存儲可以判斷當某個目錄特別大或是有很重的寫負載時,它的部分目錄將被遷移到其他節(jié)點上,客戶端訪問非熱點元數(shù)據(jù)時可以將請求直接定位到相應(yīng)的元數(shù)據(jù)服務(wù)器上;當訪問的是熱點數(shù)據(jù)時,客戶端將被告知元數(shù)據(jù)在其他元數(shù)據(jù)服務(wù)器上或是在多個服務(wù)器上。每個對象存儲的響應(yīng)會更新客戶端緩存的權(quán)限,同時更新與處理條目相關(guān)的節(jié)點以及它的上級節(jié)點。
通過元數(shù)據(jù)服務(wù)的負載均衡機制,可以擴展對象存儲的節(jié)點以實現(xiàn)對大容量的非結(jié)構(gòu)數(shù)據(jù)的存儲,并提高數(shù)據(jù)的訪問速度。
分布式存儲的設(shè)計和架構(gòu)設(shè)計應(yīng)考慮到對整個企業(yè)的終端用戶應(yīng)用的支持,企業(yè)級用戶的特點是異構(gòu)平臺的多樣性,如本地磁盤、外掛磁盤、固態(tài)盤等的使用、終端應(yīng)用的多樣性(如操作系統(tǒng)、文件訪問的客戶端、數(shù)據(jù)庫系統(tǒng)等),還有對不同數(shù)據(jù)類型的操作,如結(jié)構(gòu)性數(shù)據(jù)和非結(jié)構(gòu)性數(shù)據(jù)?;诜植际酱鎯υO(shè)計的邏輯架構(gòu)如圖4 所示。
圖4 分布式存儲系統(tǒng)邏輯架構(gòu)圖
終端用戶在使用分布式存儲資源時,可以按照預(yù)先劃分的等級和標準作為服務(wù)等級的使用條件,這樣既可以對一些高級別的應(yīng)用(如數(shù)據(jù)庫服務(wù))提供更好的服務(wù)有效性支持,同時還可以根據(jù)不同的數(shù)據(jù)類型預(yù)先定義的服務(wù)等級來劃分。
分布式存儲服務(wù)等級劃分標準主要有以下幾個方面:
1)數(shù)據(jù)持久性:根據(jù)分布式存儲的特點可以提高數(shù)據(jù)冗余的備份次數(shù)以保證數(shù)據(jù)的持久性??梢栽谖锢項l件允許的情況下,根據(jù)自身的需要定制管理節(jié)點的個數(shù)以保證服務(wù)的有效性。數(shù)據(jù)持久性按服務(wù)周期統(tǒng)計,一個服務(wù)周期為一個自然月,如不滿一個月,則不計算為一個服務(wù)周期。最高級別的服務(wù)有效性不低于99.99%;中級別的服務(wù)有效性可以是99.9%。
2)數(shù)據(jù)可銷毀性:在用戶主動刪除數(shù)據(jù)或用戶服務(wù)期滿后需要銷毀數(shù)據(jù)時,分布式存儲系統(tǒng)可以結(jié)合上層的云服務(wù)平臺自動清除對應(yīng)物理服務(wù)器上的磁盤和內(nèi)存數(shù)據(jù),使得數(shù)據(jù)無法恢復(fù)。
3)數(shù)據(jù)可遷移性[14]:存儲的對象是用戶文件,文件類型維持原有格式不變。用戶使用上層云平臺服務(wù)時,可隨時訪問、下載其文件,并根據(jù)需要自行保存或遷出。
4)數(shù)據(jù)私密性:用戶在使用分布式存儲的服務(wù)時,系統(tǒng)可對用戶的安全信息加密,從分布式存儲平臺訪問接口上進行權(quán)限控制和隔離,保障用戶數(shù)據(jù)的私密性。
5)數(shù)據(jù)可審查性:依據(jù)企業(yè)的內(nèi)部要求和安全規(guī)定,在審計或取證調(diào)查時,分布式存儲可提供用戶所使用服務(wù)的相關(guān)信息,包括關(guān)鍵組件的運行日志和用戶操作記錄等信息。
6)節(jié)點可擴展性:在重平衡結(jié)束后,新的OSD 沒有負載峰值,進而保證了分布式存儲的整體擴展能力。
7)故障恢復(fù)能力:提供對整套系統(tǒng)的監(jiān)控能力,根據(jù)分布式存儲的設(shè)計要求對底層的物理硬件容量和硬件報警進行監(jiān)控,進行分布式對象的節(jié)點監(jiān)控和上層的MDS 數(shù)據(jù)元的服務(wù)監(jiān)控,還對客戶端連接進行監(jiān)控。系統(tǒng)出現(xiàn)的任何非正常狀態(tài)都可以被監(jiān)控到,同時可以連接到知識庫進行分析處理并反饋給管理員。
8)IOPS的定制性:不同的應(yīng)用和用戶要求存儲的數(shù)據(jù)類型會有不同,不同的應(yīng)用要求不同的IOPS服務(wù)。
進行存儲池實現(xiàn)時,做出了一級存儲高IO、一級存儲低IO、二級存儲高IO 和二級存儲低IO 的基本規(guī)劃。分布式存儲系統(tǒng)總結(jié)為兩大類:一類是大容量的分布式存儲設(shè)計,一類是高性能的分布式存儲設(shè)計。其中大容量分布式存儲主要適用于二級存儲低IO 的情況,而高性能分布式存儲則適用于一級存儲高IO、一級存儲低IO 和二級存儲高IO 的情況。
根據(jù)目前的經(jīng)驗,數(shù)據(jù)存儲的集群規(guī)模為700臺物理機器,存儲的文件數(shù)接近5 000 萬,塊數(shù)也接近5 000 萬,容量占用85%,使用的內(nèi)存從監(jiān)控頁面顯示已經(jīng)占用近30 GB 的物理內(nèi)存。從發(fā)展趨勢來看,當集群繼續(xù)擴大到5 000 臺時,文件數(shù)接近3.5億,塊數(shù)接近3.5 億,內(nèi)存要接近210 GB,這樣的擴展已經(jīng)給傳統(tǒng)的非結(jié)構(gòu)性文件存儲帶來了巨大的瓶頸。隨著節(jié)點的增加會帶來巨大的性能問題,無論是數(shù)據(jù)查詢還是數(shù)據(jù)寫入,需要大量的內(nèi)存資源來支撐如此大量的數(shù)據(jù)吞吐量,分布式存儲的出現(xiàn)可以解決傳統(tǒng)領(lǐng)域的性能瓶頸。
分布式存儲的解決方案可以將數(shù)據(jù)分散部署到多個節(jié)點上,使得數(shù)據(jù)的存取可以線性擴展。同時,分布式存儲可以通過對元數(shù)據(jù)進行分布式管理以提高對整個系統(tǒng)的擴展能力。元數(shù)據(jù)管理可以有兩種方式:
1)廢棄文件系統(tǒng)概念:分布式存儲系統(tǒng)不提供傳統(tǒng)的文件目錄數(shù)的概念,也不提供傳統(tǒng)的文件目錄樹的命名空間。
2)擴展技術(shù)的提升:基于傳統(tǒng)的文件系統(tǒng),提供文件系統(tǒng)目錄樹,以提升擴展技術(shù)。
為了實現(xiàn)對大容量非結(jié)構(gòu)數(shù)據(jù)的存儲,分布式存儲的設(shè)計支持廢棄文件系統(tǒng),并通過擴展技術(shù)的提升來提高大數(shù)據(jù)量的存儲。
該存儲池實現(xiàn)采用如下的軟硬件:
1)一個存儲交付單元和一個機柜;
2)3 臺24 口萬兆交換機;
3)12 臺2U 數(shù)據(jù)服務(wù)器,每臺1*6core,32 GB 內(nèi)存,12*4 TB 硬盤,雙萬兆網(wǎng)卡;
4)3 臺2U 控制服務(wù)器,每臺2*6core,32 GB 內(nèi)存,12*4 TB 硬盤,雙萬兆網(wǎng)卡;
5)每臺服務(wù)器可選配2 塊120 GB SSD 硬盤。
分布式存儲的設(shè)計充分考慮到存儲容量的擴展、IO 性能和可靠性,這也是分布式存儲設(shè)計的目的[15]。在設(shè)計之初希望整個系統(tǒng)能夠給存儲日益增長的企業(yè)知識系統(tǒng)提供存儲支持,確定以下的目標:
1)系統(tǒng)能夠動態(tài)伸縮,能夠運行在大量低廉單機上,支持TB 級數(shù)據(jù)存儲。
2)系統(tǒng)能夠?qū)崿F(xiàn)數(shù)據(jù)的高效訪問,并且存儲介質(zhì)不會產(chǎn)生文件碎片而影響IO 性能。
3)對每個文件產(chǎn)生多個副本解決災(zāi)容問題。
4)保證系統(tǒng)的可靠性和負載的均衡,能夠自如地處理并發(fā)訪問。
為了能實現(xiàn)以上高IO 分布式存儲的要求,系統(tǒng)設(shè)計必須要消除集中式網(wǎng)關(guān),使客戶能夠直接與分布式存儲的對象管理守護進程進行互動。守護進程創(chuàng)建對象的副本在其他系統(tǒng)管理的節(jié)點上,以確保數(shù)據(jù)的安全性和高可用性。分布式系統(tǒng)的設(shè)計還采用集群監(jiān)視器、獨特的算法設(shè)計和存儲容量的設(shè)計以確保高可用性。
高IO 分布式存儲算法設(shè)計的目的是消除集中數(shù)據(jù)的訪問,并保證數(shù)據(jù)訪問的高IO 和服務(wù)有效性,如應(yīng)用客戶端和系統(tǒng)的分布式對象守護進程都要使用此算法來高效地對數(shù)據(jù)容器的信息需求進行計算,而不必依賴于一個查找表。該算法與舊的方法相比,提供更好的數(shù)據(jù)管理機制,可以清晰地將工作分配到集群中的所有客戶端和分布式對象守護進程,以提高IO 訪問效率。該算法還可使用智能的數(shù)據(jù)復(fù)制,以確保彈性,這樣可以更適合超大規(guī)模存儲。高性能分布式存儲支撐架構(gòu)如圖5 所示。
圖5 高性能分布式存儲支撐架構(gòu)
在高性能分布式存儲實現(xiàn)時,采用分布式文件系統(tǒng)和對象存儲作為承載介質(zhì),在一個標準的交付單元中,可包含如下硬件配置:
1)一個交付單元一個機柜;
2)3 臺24 口Infiniband 交換機;
3)12 臺2U 數(shù)據(jù)服務(wù)器,每臺1*6core,32 GB 內(nèi)存,6*300 GB SAS 硬盤,SSD*6*120 GB,雙Infiniband網(wǎng)卡;
4)3 臺2U 控制服務(wù)器,每臺2*6core,32 GB 內(nèi)存,6*300 GB SAS 硬盤,SSD*6*120 GB,雙Infiniband網(wǎng)卡;
5)對于極端性能需求的場景,可采用全閃存硬盤替代SAS 硬盤。
在圖5 所示的高性能分布式存儲支撐架構(gòu)中,各部分的功能和配置如下:
1)監(jiān)控終端:內(nèi)置監(jiān)控管理程序,實時顯示數(shù)據(jù)庫、計算節(jié)點、存儲節(jié)點的性能指標和工作狀態(tài)。
2)計算節(jié)點:X86 服務(wù)器,運行Oracle 11g R2,支持單實例和RAC 架構(gòu),提供數(shù)據(jù)運算服務(wù)。經(jīng)過驗證的OS 及版本為Linux (RHEL 5.*,6.3) CentOS(RHEL 5.*,6.3)。
3)數(shù)據(jù)存儲管理(DbLink):基于Infiniband(或者其他互連協(xié)議)的低延遲、高帶寬互聯(lián)技術(shù),用于將存儲節(jié)點的Flash 和磁盤資源輸出到計算節(jié)點,供數(shù)據(jù)庫使用。
4)存儲節(jié)點:X86 服務(wù)器,配置Flash 卡和SAS 磁盤,提供數(shù)據(jù)存儲服務(wù),支持的輸出方式為Infiniband 40/56 Gb,F(xiàn)C 4/8 Gb,F(xiàn)CoE 10 Gb。
5)高可用性監(jiān)視器設(shè)計:分布式存儲的客戶端讀取或?qū)懭霐?shù)據(jù)之前,必須聯(lián)系一個分布式存儲的監(jiān)控組件來獲得最新的集群映射副本。在一個集群中的監(jiān)視器,某一個監(jiān)視器延遲等故障可以導(dǎo)致一個或多個監(jiān)視器落后于當前集群狀態(tài)。因此,分布式存儲系統(tǒng)的各監(jiān)控集群狀態(tài)的實例可以保證數(shù)據(jù)的容錯性。集群監(jiān)視器的應(yīng)用不僅可以改變傳統(tǒng)單點監(jiān)視器的單點故障,還可以通過分布式的節(jié)點運算能力來提高對整個系統(tǒng)的數(shù)據(jù)一致性,最終保證高IO 數(shù)據(jù)的頻繁訪問。
6)存儲容量設(shè)計:分布式文件系統(tǒng)可以提供PB級的擴展。新的存儲無論是基于本磁盤,還是外掛存儲或是固態(tài)盤,都可以快速加入到分布式存儲系統(tǒng)管理平臺。分布式存儲系統(tǒng)會有固定的文件存儲格式,當新的磁盤加入管理環(huán)境后,首先進行文件格式的統(tǒng)一,這樣即可實現(xiàn)容量的擴展并根據(jù)預(yù)定義的規(guī)則存儲相應(yīng)的數(shù)據(jù)。
7)數(shù)據(jù)一致性設(shè)計:作為保持數(shù)據(jù)的一致性和清理的一部分,分布式存儲的對象存儲也可以清除配置組內(nèi)的對象。也就是說,系統(tǒng)的對象同其他存儲布置組中的對象及副本進行比較(通常每天執(zhí)行)。對象存儲還可以通過比較對象中的數(shù)據(jù)比特位進行更深層次的清理以發(fā)現(xiàn)平時清理中不會被發(fā)現(xiàn)的磁盤上的壞扇區(qū)。
8)數(shù)據(jù)的快速智能復(fù)制設(shè)計:為了實現(xiàn)高IO讀寫,分布式存儲系統(tǒng)提供一套數(shù)據(jù)快速智能的復(fù)制機制。當應(yīng)用通過客戶端訪問系統(tǒng)時,系統(tǒng)的對象存儲守護進程使用新的算法判斷是否存儲對象副本。
9)IO 性能評估:分布式文件系統(tǒng)的設(shè)計充分考慮到磁盤的IO 讀寫性能,由于分布式文件系統(tǒng)采用的都是分布式讀寫,所以,可以多線程同時對文件進行操作以提高讀寫速度,同時增加了新的條帶化設(shè)計以提高對磁盤的讀寫。
10)可靠性評估:對象存儲進程在別的分布式文件系統(tǒng)節(jié)點上創(chuàng)建對象的副本來保證數(shù)據(jù)安全和高可用。同樣,可以使用集群實現(xiàn)監(jiān)視器的高可用。對于分布式文件系統(tǒng)的設(shè)計,所有的節(jié)點都不是單點,如果任何的節(jié)點出現(xiàn)問題都會由另外的節(jié)點接管所有的服務(wù)。
文中在電力企業(yè)云計算研究探索的基礎(chǔ)上,對電力云中的分布式云存儲系統(tǒng)進行了研究和探索,建立了二級二類的分布式云存儲系統(tǒng),該系統(tǒng)把企業(yè)運營監(jiān)測分析業(yè)務(wù)所用到的業(yè)務(wù)基礎(chǔ)數(shù)據(jù)作為一級存儲,運營監(jiān)測信息的支撐數(shù)據(jù)等非業(yè)務(wù)數(shù)據(jù)作為二級存儲。每一級存儲數(shù)據(jù)對數(shù)據(jù)處理性能要求不同,所以每一級存儲分為高IO 存儲和低IO 存儲,從而形成了二級二類分布式云存儲系統(tǒng)。該分布式云存儲系統(tǒng)不但提高了數(shù)據(jù)的高可靠性、高存取效率、高擴展性,還可以實現(xiàn)數(shù)據(jù)訪問的一致性。