靠度函數(shù)RE4(t)同樣逐漸趨近于1,結(jié)合式(17)可推斷,增加計(jì)算節(jié)點(diǎn)和存儲節(jié)點(diǎn)的數(shù)量,整個(gè)可靠度R(t)將會逐漸增大,系統(tǒng)可靠性越來越高。對式(16)中系統(tǒng)壽命分布函數(shù)X求定積分,即可得系統(tǒng)平均無故障時(shí)間MTTF。因此,系統(tǒng)將計(jì)算任務(wù)分散到各個(gè)節(jié)點(diǎn)的策略是可靠的,同時(shí)可使平均無故障時(shí)間MTTF趨近于理想值。
4 存儲結(jié)構(gòu)設(shè)計(jì)與算法實(shí)現(xiàn)
4.1存儲結(jié)構(gòu)設(shè)計(jì)
存儲結(jié)構(gòu)設(shè)計(jì)包含兩個(gè)方面的內(nèi)容:一是設(shè)計(jì)元數(shù)據(jù)管理區(qū)數(shù)據(jù)結(jié)構(gòu);二是設(shè)計(jì)BLOB數(shù)據(jù)存儲區(qū)數(shù)據(jù)結(jié)構(gòu),其核心內(nèi)容是設(shè)計(jì)用于存儲BLOB數(shù)據(jù)及其元數(shù)據(jù)的二維表。其中:MA統(tǒng)一管理所有的BLOB數(shù)據(jù)序號Guid,而M1,M2等服務(wù)器則分散且不重復(fù)地存儲詳細(xì)元數(shù)據(jù)信息。主元數(shù)據(jù)管理單元MA中所包含的元組如表1所示,詳細(xì)元數(shù)據(jù)元組如表2所示。BLOB存儲節(jié)點(diǎn)中數(shù)據(jù)結(jié)構(gòu)相對簡單,其中包含一個(gè)image類型的字段,用于存儲BLOB數(shù)據(jù)流。
表1~2中,Guid須設(shè)置為主鍵索引;表2中的MIMEType用于記錄BLOB數(shù)據(jù)的媒體類型,如AVI視頻的資源類型描述符為video/x-msvideo,在下載該BLOB數(shù)據(jù)時(shí),便于為該資源匹配相應(yīng)文件類型以完成數(shù)據(jù)還原。
表1 主元數(shù)據(jù)管理單元MA的基本元組
表2 詳細(xì)元數(shù)據(jù)存儲節(jié)點(diǎn)的基本元組
4.2分布式存儲算法實(shí)現(xiàn)
非結(jié)構(gòu)化數(shù)據(jù)存取算法涉及兩個(gè)重要方面:其一,BLOB數(shù)據(jù)在RDBMS下的插入、刪除、更新和讀取操作方式有別于文件系統(tǒng);其二,多用戶并發(fā)式訪問頻度高,負(fù)載均衡、容錯(cuò)性及魯棒性需重點(diǎn)考慮。各數(shù)據(jù)操作的處理流程如圖3所示,而圖6以單用戶提交非結(jié)構(gòu)化數(shù)據(jù)為例,具體說明了BLOB數(shù)據(jù)流及元數(shù)據(jù)流的處理過程,其他數(shù)據(jù)操作算法可參照圖6,此處不再一一敘述。
5 仿真實(shí)驗(yàn)
5.1仿真實(shí)驗(yàn)硬軟件環(huán)境
為對分布式非結(jié)構(gòu)化數(shù)據(jù)存儲的可靠性和穩(wěn)定性進(jìn)行評估,存儲系統(tǒng)的硬件及軟件仿真環(huán)境如下。硬件環(huán)境存儲服務(wù)硬件部署于園區(qū)IP骨干網(wǎng),BLOB存儲節(jié)點(diǎn)及Metadata存儲節(jié)點(diǎn)均采用2.4GHz的Intel至強(qiáng)處理器,4GB內(nèi)存,2TB存儲容量的Adaptec RAID5硬盤陣列,1Gbps背板帶寬,桌面帶寬100Mbps。
軟件環(huán)境各服務(wù)器均安裝Windows Server 2008操作系統(tǒng),并在系統(tǒng)中配置IIS7.0組件和.NET Framework V3.5,數(shù)據(jù)庫系統(tǒng)采用SQL Server 2000(SP4),此外,運(yùn)行于BLOB存儲節(jié)點(diǎn)上Web應(yīng)用程序提供非結(jié)構(gòu)化數(shù)據(jù)存取接口,運(yùn)行于Metadata存儲節(jié)點(diǎn)上的應(yīng)用程序提供元數(shù)據(jù)管理接口,仿真軟件選用HP LOAd Runner 11.0。
圖6 用戶提交非結(jié)構(gòu)化數(shù)據(jù)算法流程
5.2單用戶上傳/下載BLOB數(shù)據(jù)性能分析
測試場景單用戶向系統(tǒng)上傳/下載大小為731.2MB的文件,實(shí)驗(yàn)所涉及的服務(wù)器有BLOB存儲節(jié)點(diǎn)B1、主元數(shù)據(jù)存儲節(jié)點(diǎn)MA和詳細(xì)元數(shù)據(jù)存儲節(jié)點(diǎn)M1。
實(shí)驗(yàn)中,一個(gè)731.2MB的BLOB文件可在147s內(nèi)完成存取操作,上傳數(shù)據(jù)平均傳輸速率為39.0Mbps,下載數(shù)據(jù)平均傳輸速率為56.4Mbps。同時(shí),記錄該數(shù)據(jù)在各時(shí)刻的上傳及下載傳輸速率,經(jīng)統(tǒng)計(jì)如圖7所示。
由圖7中可看出,單用戶向存儲系統(tǒng)下載數(shù)據(jù)的性能優(yōu)于上傳數(shù)據(jù)的性能,其主要原因在于,寫入數(shù)據(jù)調(diào)用了.NET中的運(yùn)算開銷較大的功能函數(shù)ExecuteNonQuery( ) ,而讀取數(shù)據(jù)調(diào)用了運(yùn)算開銷較小的ExecuteDataReader( )函數(shù)。整體來看,傳輸速率比較平穩(wěn),沒有出現(xiàn)抖動(dòng)和失效現(xiàn)象。
圖7 單用戶存取非結(jié)構(gòu)化數(shù)據(jù)性能
5.3非結(jié)構(gòu)化數(shù)據(jù)存儲系統(tǒng)響應(yīng)仿真
測試場景待寫入BLOB數(shù)據(jù)24.9MB,單節(jié)點(diǎn)存儲系統(tǒng)及多節(jié)點(diǎn)存儲系統(tǒng)各一組。其中:單節(jié)點(diǎn)存儲系統(tǒng)將BLOB數(shù)據(jù)及Metadata數(shù)據(jù)合并于一臺服務(wù)器上存儲;多節(jié)點(diǎn)存儲系統(tǒng)由4臺BLOB存儲節(jié)點(diǎn)和4臺元數(shù)據(jù)存儲節(jié)點(diǎn)組成。向兩系統(tǒng)發(fā)出隨機(jī)寫入數(shù)據(jù)請求,統(tǒng)計(jì)兩系統(tǒng)從提交數(shù)據(jù)到結(jié)果返回的時(shí)間,統(tǒng)計(jì)數(shù)據(jù)如圖8所示。
由圖8可看出,用戶隨機(jī)向存儲系統(tǒng)寫入一個(gè)24.9MB的文件時(shí),隨著寫入請求數(shù)量的增長,分布式存儲系統(tǒng)的平均響應(yīng)時(shí)間總是低于單節(jié)點(diǎn)存儲系統(tǒng)。另一方面,圖8所示分布式存儲響應(yīng)曲線變化較平緩,而單節(jié)點(diǎn)存儲系統(tǒng)曲線變化較顯著,表明用戶數(shù)量的增長對分布式存儲系統(tǒng)無太大影響,存儲性能相對穩(wěn)定。
圖8 分布式存儲與單節(jié)點(diǎn)存儲響應(yīng)時(shí)間對比
5.4BLOB存儲節(jié)點(diǎn)擴(kuò)展對存儲性能影響
測試場景將BLOB存儲節(jié)點(diǎn)數(shù)量由4個(gè)增加至8個(gè),考察系統(tǒng)聚合讀寫性能。
由圖9可知,隨著非結(jié)構(gòu)化數(shù)據(jù)存儲節(jié)點(diǎn)的增長,系統(tǒng)聚合讀寫性能呈線性增長,表明系統(tǒng)具有較好的可擴(kuò)展性。
圖9 擴(kuò)展存儲節(jié)點(diǎn)后系統(tǒng)聚合讀寫性能
5.5結(jié)果與討論
實(shí)驗(yàn)表明,無論采用單節(jié)點(diǎn)存儲方式還是多節(jié)點(diǎn)的分布式存儲方式,數(shù)據(jù)分離式的分布式存儲算法都可將BLOB數(shù)據(jù)可靠存入RDBMS,總體上看,盡管向系統(tǒng)寫入數(shù)據(jù)的效率低于讀取數(shù)據(jù)的效率,在用戶請求總量不斷增加的情況下,系統(tǒng)仍具有較高的響應(yīng)比,且在系統(tǒng)擴(kuò)展實(shí)驗(yàn)中發(fā)現(xiàn),系統(tǒng)的可擴(kuò)展性較好。
6 結(jié)語
面對非結(jié)構(gòu)化數(shù)據(jù)增長難題,傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)存儲系統(tǒng),已無法應(yīng)對云計(jì)算系統(tǒng)龐大的數(shù)據(jù)存儲需求。基于RDMBS的非結(jié)構(gòu)化數(shù)據(jù)存取系統(tǒng),將海量非結(jié)構(gòu)化數(shù)據(jù)直接存儲于關(guān)系數(shù)據(jù)表中,實(shí)現(xiàn)了數(shù)據(jù)的可靠存取。通過分離BLOB數(shù)據(jù)和Metadata存儲通路,設(shè)計(jì)了分布式的硬件結(jié)構(gòu)和存取算法,將存儲負(fù)載均勻分布于各個(gè)節(jié)點(diǎn)。統(tǒng)一的元數(shù)據(jù)管理方式和預(yù)留的擴(kuò)展接口,既便于用戶對所有數(shù)據(jù)進(jìn)行統(tǒng)一使用管理,也便于聚合I/O處理能力的增強(qiáng)和存儲規(guī)模的進(jìn)一步擴(kuò)展,以適合不斷增長的云存儲需求。
下一步的研究工作是如何優(yōu)化存儲結(jié)構(gòu)和算法,以改善存儲系統(tǒng)每秒輸入輸出量(Input/Output Operations PerSecond,IOPS)和進(jìn)一步提升聚合處理能力。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://m.hanmeixuan.com/
本文標(biāo)題:面向云存儲的非結(jié)構(gòu)化數(shù)據(jù)存取(下)
本文網(wǎng)址:http://m.hanmeixuan.com/html/support/1112157858.html