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