最近幾年,超融合在中國市場的火熱程度不亞於雲計算、人工智能等新技術,自 2013 年超融合概念首次在中國出現;到 2016 年中國迎來“超融合元年”;再到 2019 年超融合開始廣泛落地行業市場。可以說,在不到 10 年的時間內,超融合就完成了市場鴻溝的跨越。

但是,隨着越來越多的客戶進一步認識和應用超融合架構,一個新的問題又出現了,那就是當超融合進入到企業的核心生產業務系統,其存儲性能和延遲能否媲美傳統的高端存儲陣列?

在此背景下,作爲中國超融合領域的專業領導廠商,SmartX 率先採用英特爾傲騰持久內存搭配 NVMe NAND SSD 開發出了新一代全閃超融合解決方案,整體性能獲得顯著提升,更好地滿足客戶核心業務對 IO 吞吐、延遲等性能的嚴苛要求。

正如 SmartX CEO 徐文豪所言:“SmartX 深知硬件技術對超融合產品的重要性,並始終和英特爾在研發領域保持緊密合作,而本次 SmartX 基於創新的英特爾傲騰持久內存技術對 SMTX OS 進行深度優化和架構升級,不僅爲超融合產品性能帶來質的飛躍,更是對解決性能敏感型核心業務向雲化基礎架構轉型這一難題進行了深度的探索,真正有效加速了超融合基礎架構在金融核心等領域的落地。”

“Sailfish”項目誕生背後

SmartX 自 2013 年成立開始,就一致致力於打造高可靠、高性能、易擴展、生產就緒、具備自主研發的超融合產品,其產品核心 SMTX OS 超融合軟件如今可以運行在幾乎所有主流的 x86 服務器上,且被廣泛地應用於金融、醫療和製造業等領域。

數據顯示,行業客戶對 SmartX 超融合產品的增購率已超過 200%,其中,70% 以上的客戶將 SmartX 超融合產品部署在覈心生產場景。此外,SmartX 也不斷獲得專業市場分析機構的認可。在 Forrester 發佈的全球超融合廠商報告《Now Tech: Hyperconverged Infrastructure, Q2 2020》中,SmartX 憑藉專業開放的產品和優質客戶案例入選;IDC 評定 SmartX 爲軟件定義存儲創新者,Gartner 也在中國區超融合市場競爭格局報告中將 SmartX 列爲重點關注企業。

但與此同時,SmartX 在和客戶交流中也發現,很多客戶在規劃將核心生產應用遷移到超融合系統時,往往沒有足夠的信心,他們擔心超融合系統的存儲和傳統架構相比延遲較高,特別是在面對性能敏感型業務應用更爲嚴苛的 IO 及延遲要求場景時,以往在超融合領域廣泛使用的 NAND SSD 存儲設備會成爲瓶頸,這也逐漸成爲了超融合系統未來發展的阻礙。

因此,如何突破當前超融合系統在 IO 及延遲方面的侷限,無疑是 SmartX 進一步提升超融合產品性能的關鍵。基於此,SmartX 於 2019 年啓動代號爲“Sailfish”(旗魚,海洋中最快的魚類)項目,將英特爾傲騰持久內存用於緩存加速,同時對 SmartX 超融合軟件 SMTX OS 進行了全方面優化。

圖 1. 虛擬機IO性能提升3.2 倍,延遲降低85%

具體來看,在存儲層“Sailfish”項目充分發揮了英特爾傲騰持久內存“App Direct”模式低延遲和持久化存儲的能力,保存集羣中經常被訪問的數據。除此之外,SMTX OS 還對計算虛擬層和存儲網絡層進行了特別的優化和設計,而經過以上優化,虛擬機的 IO 性能提升了 3.2 倍,同時延遲降低了 85% 以上。

目前,“Sailfish”項目中使用到的技術已經集成到了最新的 SMTX Halo P 系列一體機中,該系列一體機不僅能夠勝任交易類數據庫、機器學習等對 IO 性能要求苛刻的核心應用場景,並且能夠以更高性能提升虛擬機密度。

由此可見,SmartX 在“Sailfish”項目中通過引入英特爾傲騰持久內存,極大地提高超融合系統的性能,消除了關鍵應用場景實際部署的疑慮;而這種創新的探索與實踐,無疑爲關鍵業務系統在超融合架構中的部署奠定了真正踏實的基礎。

當SmartX遇見英特爾傲騰

事實上,在“Sailfish”項目中,SmartX 正是發揮了英特爾傲騰持久內存的特點:英特爾在內存和 SSD 之間新增的一個存儲層級,使其具備像內存一樣的超低訪問延遲,超高壽命與可靠性,同時還兼具持久化存儲和按字節訪問的能力。

這就是英特爾傲騰持久內存所獨創的多種工作模式——在“內存模式”下,可爲系統提供大容量內存;而在“App Direct 模式”下,應用可以直接訪問英特爾傲騰持久內存中的數據,有助於降低軟件堆棧複雜性。藉助這種創新的工作模式,在 SmartX 基於英特爾傲騰持久內存和 SMTX OS 打造的新一代全閃超融合解決方案中,在性能方面實現了三個方面的極大優化和提升。

一是,創新的工作模式爲 SmartX 打造高性能存儲打下基礎。英特爾傲騰持久內存擁有更靠近 DRAM 的讀寫速度,使得它與內存交換數據過程的延遲更低,可大大縮短響應虛擬機請求的時間。此外,結合 SMTX OS 針對英特爾傲騰持久內存的一系列優化,新方案性能表現出色:測試顯示,採用英特爾傲騰持久內存的超融合一體機,三節點最小系統的 IOPS 即可達約120萬,與以往使用 NAND SSD 相比有大幅提升。

同時,在該方案中,SmartX 應用了英特爾傲騰持久內存的“App Direct”模式, 將其作爲Journal 和 Cache 盤,並搭配 NVMe SSD 作爲容量盤一起使用,可保證更多經常被訪問的熱數據駐留在持久內存以獲得出色的 IO 響應速度與更低的延遲表現——通過系統配置少量持久內存便可持續爲業務加速,這爲數據加速提供了強有力的支撐。

二是,英特爾傲騰持久內存可按字節尋址訪問的能力,實現更小的數據寫入對齊顆粒、避免了寫放大問題。過去基於 SSD 只能以塊爲單位進行訪問,在傳統 Journal 設計中採用 4 KiB 對齊方式以獲取較高的寫入性能,但在某些應用場景下會造成嚴重的寫放大問題。例如,系統要求寫入 128 bytes 大小的 IO,由於 Journal 需要以 4 KiB 對齊寫入,因此必須將 128 bytes 數據進行擴充,用“0”填充至 4 KiB 大小,再寫入介質中。因此,實際佔用的容量是要求寫入大小的 32 倍。如此顯著的寫放大現象會造成 Journal 和 Cache 存儲空間的大量浪費,增加了冷熱數據交換的頻率,從而提高延遲,對性能造成較大影響。

爲此,SmartX 通過在 SMTX ZBS 中以 直接訪問(Direct Access, DAX)方式訪問持久內存設備,可像訪問內存一樣按字節爲單位對持久內存進行存取。而 SmartX 利用這個特性重新設計 Journal 的寫入機制,並以 64 bytes 進行對齊;此時往 Journal 寫入 128 bytes 數據,則可被拆分爲 2 個 64 bytes 寫入,避免了寫放大的問題,有效的提升性能。

三是,通過採用異步訪問英特爾傲騰持久內存,可減少 CPU 資源使用、增加訪問帶寬;在超融合系統中,寶貴的 CPU 資源必須更多地留給虛擬機使用,因此需要嚴格控制超融合系統本身的 CPU 消耗。

在有限的CPU資源下,爲了充分發揮英特爾傲騰持久內存的帶寬性能,雙方技術團隊創新地引入了IO/AT DMA 引擎實現了異步寫入持久內存的機制,使得單個 CPU 核心的最大寫入帶寬提升至10 GB/s。這意味着在幾乎不增加CPU開銷的情況下,通過數據異步寫入持久內存的優化方式,即可獲得2.5倍的性能提升。此外,SmartX 還針對英特爾傲騰持久內存優化了IO棧以進一步降低 IO 損耗、並優化網絡傳輸協議,採用 RDMA 存儲網絡來降低遠程節點寫入延遲,保證遠程節點副本數據及時同步更新。

SmartX 通過英特爾傲騰持久內存對計算虛擬化、存儲網絡以及存儲介質進行的端到端優化,不僅充分了釋放傲騰高吞吐量、低延遲、高服務質量和高耐用性等優勢,同時也真正以有限的計算資源,獲得了業內領先的高性能與超低延遲服務器虛擬化存儲性能。

超融合系統性能再上新高度

值得一提的是,爲了驗證基於英特爾傲騰持久內存和 SMTX OS 打造的全閃超融合解決方案的性能。英特爾和 SmartX 通過使用英特爾至強可擴展處理器6240Y 分別在搭載和未搭載英特爾傲騰持久內存的情況下,測試了該解決方案在 FIO 3.19 中的表現。

測試顯示,無論順序還是隨機讀/寫 4K 請求,搭載英特爾傲騰持久內存的方案在 1/2/4/8/16/32/64/128 個工作負載 下,其帶寬(Bandwidth)均具有明顯優勢。其中,順序讀最高加速達到 2.86 倍,順序寫加速最高達到 2.90 倍;隨機讀加速最高達到 4.14 倍,隨機寫加速最高達到 2.79 倍。

而在 P99 延遲(線程數 = 16)測試中,搭載 英特爾傲騰持久內存的方案在 4K/8K/16K/32K/64K 大小下,順序讀、順序寫、隨機讀和隨機寫延遲均有明顯降低,最高降幅分別爲 78.46%、59.38%、76.75% 和 56.62%。

與此同時,爲進一步驗證新方案在實際應用中的表現,雙方還測試了不同訪問模式下 MySQL 8.0.20 在不同虛擬機中的吞吐率和延遲情況。其中,在單節點只運行 1 臺虛擬機的時候,搭載英特爾傲騰持久內存的方案在混合讀寫、只讀、只寫方面的吞吐率,分別比未搭載持久內存的方案高 3.20 倍、2.90 倍和 2.85 倍;在混合 讀寫、只讀、只寫方面,使用英特爾傲騰持久內存方案的 P95 延遲均有明顯降低,降幅分別爲 72.16%、60.10% 和 73.13%。

在單節點運行 4 臺虛擬機時,搭載英特爾傲騰持久內存方案在混合讀寫、只讀、只寫方面的吞吐率,分別比未搭載持久內存的方案提升了 1.39 倍、2.49 倍、2.98 倍:使用持久內存方案的 P95 延遲除了混合讀寫場景外,在只讀和只寫的場景下皆有明顯降低,降幅分別爲 46.48% 和 50.28%13。

而在與實際應用場景接近的 MySQL 數據庫實測中,採用英特爾傲騰持久內存後的全閃超融合解決方案在性能上得到很大程度的提升。新方案在優化超融合系統自身基礎架構的同時,大幅改善了其上運行的業務系統的延遲,實現了端到端的 IO 加速。此外,虛擬機端 IO 延遲的大幅度降低也使得 SMTX OS 產品完全具備承載對延遲要求非常苛刻的核心業務的能力。

總的來說,從上述測試數據中也可以看到,通過引入英特爾傲騰持久內存技術,能夠顯著提高超融合系統的性能,幫助消除企業對超融合產品性能的疑慮、解決關鍵應用場景實際部署的難題。從這個角度來看,SmartX 與英特爾攜手提供了英特爾傲騰持久內存在超融合部署上的最佳實踐,真正爲實現利用新一代全閃超融合系統替換更多裸金屬服務器和全閃陣列的可能。

相關文章