1. 引言
采用集群技術構建并行數據庫系統,支持多個集群節點數據庫實例訪問一個共享的數據庫,節點間共享高速緩存,充分利用多個節點并行處理的工作能力,在應用環境中可提供更快的響應時間與更大的事務吞吐量,并具有高可用性。
近年來,大規模密集數據型的集群數據庫系統在了網絡安全監控、金融數據分析、電信數據處理、傳感器網絡等領域的應用越來越廣泛,節點間大量數據交換以及海量數據存儲對網絡通信帶寬提出了更高要求,傳統的光纖網絡存儲(FC-SAN)已經很難滿足其性能需求。
InfiniBand(IB)是由InfiniBand行業協會(IBTA,InfiniBand Trade Association)定義的一項先進、開放的互連標準,它是一種基于通道的、采用交換結構的I/O體系,具有高帶寬、低延時的特點,不僅可用于服務器內部和集群系統的互連,還可用于組建高性能的存儲網絡。在2010年6月公布的全球HPC TOP 500[4]強排行榜中,在前10 名、前20 名和前100 名中分別有4臺、11臺和64臺計算機采用IB互聯技術。由此可見,IB 技術已經成為高性能計算機設計采用的主流技術。
IB 不僅在高性能計算領域取得了成功,而且在存儲領域也得到越來越廣泛的應用。自從2008年Mellanox 公司開發出基于ConnectX 芯片的IB適配器以來,IB 的點到點數據傳輸率一躍達到了40Gbps,預計到2011年將突破80Gbps。可以預見,具備RDMA(Remote Direct Memory Access)功能的IB 將會成為未來主流的存儲協議。
本文介紹了IB網絡存儲及IB iSER協議,實現了基于IB-SAN的集群數據庫,并對系統的實際應用性能進行了實驗與分析。
2. IB 網絡存儲
隨著高性能計算與應用服務的發展,更多的高性能存儲區域網絡開始利用高速網絡與專有協議來構建。這主要包括基于光纖通道與FCP協議的FC-SAN、基于以太網與iSCSI協議的IP-SAN以及基于InfiniBand的IB-SAN。FC-SAN需要專門的光纖通道網絡,因此價格昂貴;IP-SAN可以利用目前廣泛使用的以太網,成本較低,然而網絡協議處理需要占用較多的主機CPU時間,嚴重影響系統的總體性能;InfiniBand是一種交換結構I/O技術,其設計思路是通過一套中心機構(中心InfiniBand交換機)在遠程存貯器、網絡以及服務器等設備之間建立一個單一的連接鏈路,并由中心InfiniBand交換機來指揮流量,它的結構設計得非常緊密,大大提高了系統的性能、可靠性和有效性,能緩解各硬件設備之間的數據流量擁塞,具有高帶寬和低延遲的特點,在高性能計算與數據庫系統中得到日益廣泛的應用。
IB可實現不同形式的存儲系統,包括SAN(Storage Area Network)和NAS(Network Attached Storage),本文集群數據庫系統中采用的是基于iSER協議的IB-SAN,它由iSER的發起方和目標方兩部分組成,其整體結構如圖1所示。
3. IB iSER 協議
iSER(iSCSI Extend RDMA)協議是由IETF制定的IB存儲協議,iSER協議主要為iSCSI PDU的RDMA操作提供支持,以減少對緩存和CPU資源的占用。iSER位于SCSI中間層和CMA層之間,定義了iSCSI PDU到RCap報文的映射。iSER將上層傳來的iSCSI PDU轉換成帶有iSER頭的報文傳送給RDMA層。iSER 報頭中包含了一個導向標簽,用來標識每個SCSI I/O的緩存位置。SCSI 讀寫可依據導向標簽,通過目標器實現傳送子系統RDMA 讀、寫請求的服務。基于iSER協議的IB-SAN網絡層次圖如圖2所示:
4. 實驗與分析
4.1 實驗環境
為了對基于IB-SAN 的集群數據庫的實際應用性能進行了分析及與傳統的FC-SAN 對比,建立了基于IB-SAN 和FC-SAN 的ORACLE RAC 實驗環境。其實驗環境配置如下:
4.2 測試方法
ORACLE RAC 性能測試是采用基于SW 中間件編寫的一個測試包,包括加載測試和查詢測試兩個模塊。
加載測試過程中可以設置單次加載記錄條數N,分別記錄完成一次加載所需的時間(包括與數據庫建立連接時間t1 和數據庫處理時間t2 兩部分),然后連續加載多次得平均加載時間t,最后加載速率V=N/t,得到的加載速率為多次加載的平均速率,這消除了偶然因素對其結果的影響。
查詢測試時,首先創建一個一億規模的數據庫表,然后依次進行單關鍵詞精確查詢和單關鍵詞模糊查詢,最后統計首條記錄返回的平均時間即為查詢時間。
4.3 性能分析
按照上述測試方法,進行了ORACLE RAC 存儲性能測試。單條記錄平均長度約為350B,單次加載條數為:2000、5000、8000、11000、14000、17000、20000 時,IB-SAN 的加載速率VIB-SAN 分別為:26.68 萬條/s、35.96 萬條/s、42.44 萬條/s、47.72萬條/s、51.10 萬條/s、53.08 萬條/s、53.6 萬條/s,FC-SAN 的加載速率VFC-SAN 分別為:7.32 萬條/s、8.72 萬條/s、9.32 萬條/s、10.01 萬條/s、10.52 萬條/s、10.88 萬條/s、10.96萬條/s,如圖3 所示。
為了便于對比分析,把圖3 中兩條曲線進行線性化處理:μ=VIB-SAN/VFC-SAN ,得到兩種存儲方式的加在性能對比系數曲線如5 所示。從上面兩圖中可以看出:單次加載條數相同時,IB-SAN 的加載速率明顯高于FC-SAN 的;隨著單次加載條數增大,兩者的加載速率逐漸增大,且對比系數μ也逐漸增大,這是由于每次加載與數據庫建立連接的時間t1 基本保持不變,當加載條數增大時t1 對總時間t 的影響變小,使其結果更接近理論值。
按照上述方法,得到ORACLE RAC 的查詢性能如表2 所示。
4.4 結論
從上面的實際測試結果可以看出,加載性能顯著高于傳統的FC-SAN,加載性能對比系數接近5,查詢性能也比傳統的FC-SAN 略有提高。
5. 結束語
從本文的實際測試可以看出,使用IB-SAN 搭建集群數據庫是完全可行的,整體性能比使用傳統FC-SAN 的有所提高,尤其加載性能提高顯著。隨著IB 存儲技術的不斷發展完善,在對網絡帶寬和加載性能有極高要求的大規模密集數據處理領域,基于IB-SAN 存儲的集群數據庫將會成為主流。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文網址:http://www.guhuozai8.cn/html/consultation/1083946836.html