Virtual SAN 意在通過(guò)高性?xún)r(jià)比的通用硬件,特別是直接掛載在 ESXi 主機上的磁盤(pán)向實(shí)際業(yè)務(wù)提供高擴展性、可用性、可靠性的高性能存儲。特別是在 Virtual SAN 6.2 加入去重/壓縮,校驗和以及糾刪碼等新功能后,使得超融合架構更具性?xún)r(jià)比。全閃存架構 Virtual SAN 通過(guò)結合這些新特性能夠幫助客戶(hù)在節約存儲空間效率的同時(shí),獲得持久的低延遲與高性能,并同時(shí)降低用戶(hù)部署業(yè)務(wù)關(guān)鍵應用的總體擁有成本(TCO)。
測試介紹
為了全面測量 Oracle RAC 在全閃存架構 Virtual SAN 上的 OLTP 性能,我們在4節點(diǎn)集群上依次創(chuàng )建了1~4個(gè) Oracle RAC 節點(diǎn)。為了驗證全閃存 Virtual SAN 特有的空間效率提高技術(shù),我們啟用了去重和壓縮特性。如圖一所示,為本次測試的方案架構。

Oracle RAC 在全閃存架構 Virtual SAN 上的架構圖
本次測試中使用的軟件除了 Virtual SAN 6.2 以外,部署 Oracle RAC 服務(wù)器節點(diǎn)的虛擬機使用的是 Oracle 企業(yè)版 Linux 6.7。Oracle 數據庫及集群感知軟件版本為 12.1.0.2.0。每個(gè) Oracle RAC 節點(diǎn)配置了8個(gè) vCPU 和 64GB 內存,其中 28GB 內存分配給系統全局區(SGA)。
Oracle ASM 數據磁盤(pán)組使用外部冗余方式配置,分配單元為 1MB。數據、快速恢復區(FRA)和重做日志的 ASM 磁盤(pán)組使用不同的虛擬 PVSCSI 控制器,歸檔日志保存區使用FRA磁盤(pán)組。
為了評估 Oracle RAC 在 Virtual SAN 上的 OLTP 性能表現,我們使用 SwingBench 2.5 在 RAC 集群上生成類(lèi) TPC-C 工作負載以模擬交易類(lèi)型數據庫的工作負載。數據庫生成模式為 SOE,生成約 420GB 的數據庫。
全閃存架構Virtual SAN具體配置
測試中我們采用4臺 Dell PowerEdge R630 作為 ESXi 主機,每臺主機擁有兩顆12核并可啟用超線(xiàn)程的處理器,256GB DDR4 內存,以及兩個(gè)磁盤(pán)組。每個(gè)磁盤(pán)組擁有1塊 400GB 的 Intel SSD 作為緩存層以及4塊 400GB 的 Intel SSD 作為容量層,總的裸磁盤(pán)容量達到了 11.88TB。Virtual SAN 網(wǎng)絡(luò )配置基于萬(wàn)兆網(wǎng)絡(luò )。
測試結果
Oracle RAC 在全閃存架構 Virtual SAN 上的性能
在 Swingbench 設置 150 為用戶(hù)的情況下,4節點(diǎn) Oracle RAC 的平均 TPM 達到了 329,258。其中峰值 TPM 達到了驚人的 383,050!

Swingbench 觀(guān)測數據
Oracle自動(dòng)工作負載信息庫(Automatic Workload Repository, AWR)是Oracle 10g引入的收集數據庫統計信息的內置工具,其主要采集與性能相關(guān)的統計數據,并從這些統計數據中導出性能度量,以跟蹤潛在的問(wèn)題。從AWR的報告中,我們觀(guān)測到等待時(shí)間最長(cháng)的事務(wù)為“日志文件同步”(log file sync),其次為“db文件順序讀取”(db file sequential read)。如圖三所示,4個(gè)節點(diǎn)的“日志文件同步”最大等待時(shí)間均小于7毫秒,而db文件順序讀取的最大等待時(shí)間則均小于2毫秒。
Oracle I/O 事務(wù)等待時(shí)間

為 Oracle AWR 報告中的 IO 工作負載情況。可以看到 RAC 集群的物理寫(xiě)入達到了 9,590 IOPS,而物理讀取 IOPS 達到了16,824,總計 IOPS 為26,414。

Oracle AWR報告中的I/O工作負載
當4個(gè) RAC 節點(diǎn)協(xié)同工作時(shí),AWR 報告中顯示每個(gè)節點(diǎn)平均 CPU 利用率在55%左右,最大 CPU 利用率也不超過(guò)62%。

Oracle RAC 4個(gè)不同節點(diǎn)的CPU利用率
從 Virtual SAN 存儲性能的角度來(lái)看,我們測量到的后端平均 IOPS 和平均吞吐量分別為 48,300 和 730MB/s,如圖六所示。在通過(guò) Virtual SAN 性能監控進(jìn)行觀(guān)察的大多數時(shí)間內,讀取延遲均小于1.5毫秒,而寫(xiě)入延遲則小于1毫秒。

Virtual SAN 后端性能——IOPS,帶寬與延遲
Oracle RAC在Virtual SAN上的可擴展性
本部分我們主要關(guān)注4節點(diǎn)Oracle RAC數據庫在Virtual SAN數據存儲上的擴展性能。在測試過(guò)程中,我們將RAC集群從單一節點(diǎn)逐漸擴展到四個(gè)節點(diǎn),每次運行相同的測試以觀(guān)察RAC的性能擴展情況。

Oracle RAC在Virtual SAN上的可擴展性
如圖七所示的測試結果表明,當 Oracle RAC 節點(diǎn)逐漸添加到 RAC 集群中時(shí),Oracle 的每分鐘交易數(TPM)幾乎呈線(xiàn)性增加。與此同時(shí),在RAC節點(diǎn)數量增加時(shí),通過(guò) Swingbench 監控到的數據庫響應時(shí)間也從開(kāi)始時(shí)的52毫秒逐漸降低到了25毫秒。全閃存架構 Virtual SAN 可以向高 IOPS 與吞吐量的 Oracle RAC 業(yè)務(wù)提供良好的可擴展性。
總結
本次測試驗證了以全閃存架構 Virtual SAN 為存儲平臺可以向 Oracle RAC 數據庫提供高性能的存儲支持。Virtual SAN 作為一款同時(shí)具有高性能與高性?xún)r(jià)比的存儲性能平臺,部署十分便捷,其易于管理并完全融合于 VMware vSphere 平臺。在 vSphere 平臺上部署 Oracle RAC 節點(diǎn),得益于 Virtual SAN 原生的分布式存儲架構,Oracle RAC 節點(diǎn)在橫向擴展時(shí)可以獲得幾近線(xiàn)性的性能增長(cháng)。我們認為 Virtual SAN 可作為部署關(guān)鍵業(yè)務(wù) Oracle RAC 的理想選擇。