InfiniBand 是一種被目前各種追求高性能的應用廣泛使用的網絡互連技術,基于 IBTA(InfiniBand Trade Association)而定義的高帶寬、低延時、低 CPU 利用率、大規模易擴展的通信技術。原生支持 RDMA 技術,在保證高帶寬輸出的基礎上,大大降低數據訪問延遲及通信過程中對于 CPU 資源的消耗,并支持各種先進的網絡計算(In-Network Computing)技術,為高性能計算、人工智能、云計算、存儲等眾多數據密集型應用提供了強大的網絡性能支撐。通過高速的 InfiniBand 技術,將業務負載由單機運行轉化為基于多機協作的高性能計算集群,并使高性能集群的性能得以進一步地釋放和優化。
GreatSQL 是由萬里數據庫維護的國內自主 MySQL 分支版本,專注于提升 MGR 可靠性及性能,支持 InnoDB 并行查詢特性,適用金融級應用。
此次通過對比測試基于 InfiniBand 的 NVMe SSD 池化方案 及本地 NVMe SSD 的傳統方案的性能表現,評估使用基于 InfiniBand 的存算分離架構對分布式數據庫性能的提升程度及擴展性,經過雙方合作,通過大量數據分析,可以看出基于 InfiniBand 池化方案的存算分離架構的性能更優穩定性更強,為 GreatSQL 進一步提升競爭力提供了有力的基礎平臺支撐。
1、NVIDIA InfiniBand 池化方案介紹
分布式數據庫集群由兩部分組成:
計算節點是無 SSD 盤的裸金屬服務器,運行 MySQL 業務程序;
存儲節點提供 NVMe SSD 資源池,通過軟件聚合方式提供高性能 Lun 實現對于數據庫的數據的存儲服務。
兩部分服務器通過 Quantum 平臺的 InfiniBand 網絡實現對計算節點和存儲節點的無損連接,結合 NVMe-oF(NVMe over Fabric)高效的數據存儲傳輸協議,將存儲節點的 Lun 掛載到計算節點,實現結算節點本地高性能的數據存儲能力。
2. 測試環境
為了可以公平對比兩種方案的優劣,兩次測試均采用同一臺計算服務器進行測試,不同的是,本地方案存儲由本地的 PCIe4.0 NVMe SSD 承載,InfiniBand 池化方案由 100Gbps 速率的 HDR100 網卡接入,通過相同型號的 NVMe SSD 組成的全閃服務器借助 NVMe-oF 提供高性能虛擬 Lun 完成數據訪問。
2.1 存儲設備
InfiniBand 池化方案
本地 SSD
2.2 CPU&內存
2.3 操作系統
文件系統
塊設備
2.4 壓測參數&指標
壓測工具:sysbench
模式:oltp_read_write。
每輪壓測時長:900 秒。
每輪壓測休眠間隔:180 秒。
共 64 個表。
每個表 12500000 條記錄。
整個測試庫大小約 186 G。
采用InnoDB引擎。
并發線程數變化:8、16、32、64、128。
ibp(innodb buffer pool)變化:47G、93G、140G、186G(約為物理數據的25%、50%、75%、100%)。
主要參數選項:
sysbench 測試命令模板:
3. 性能表現&總結
3.1 測試總結
結論先行,整體測試情況如下:
當ibp不足以覆蓋全部物理數據時:
1)GreatSQL 8.x 性能遠高于 GreatSQL 5.7。2)并發線程數越高,IB+NVMe SSD vs 本地NVMe SSD 的差距越小。3)ibp 越大,GreatSQL 5.7 和 8.0 性能越接近。
當 ibp 基本可以覆蓋全部物理數據時:
1)GreatSQL 5.7 的性能整體比 GreatSQL 8.0 略好。
總的測試下來看,IB NVMe SSD 相比 本地 NVMe SSD 的性能要更好,也更穩定一些。
嘗試對比測試了組提交(binlog group commit),在本案中對性能影響很小,這里不再贅述。
嘗試對比設置 innodb_thread_concurrency = 64|128,發現加上后,在 ibp 足夠大,且并發也打滿 128 線程后,性能更穩定些,波動沒那么大了,且最終整體性能也能提升約 8% ~ 10%(不過也要考慮到,真實生產環境中,很少會跑滿這么大壓力)。
總的來說,當物理內存不足以覆蓋業務數據時(生成環境中這種情況很常見),如果單靠增加物理內存以提升數據庫性能可能從性價比角度看并不劃算,不如換個思路,提升本地物理 I/O 設備的性能,畢竟現在 NVMe SSD 的性能可以跑到很高。
3.2 測試數據對比圖表
1)ibp=47G
2)ibp=93G
3)ibp=140G
4)ibp=186G
4. 結語
從以上測試數據中,可以明顯看到采用了 InfiniBand 池化方案數據庫性能在不同場景中性能都有不同程度的明顯提升,由其在高并發場景下,表現由于突出。
未來,萬里數據庫將推動 GreatSQL 協同 NVIDIA 探索更多基于 InfiniBand 在數據庫中的結合點和創新點,基于 NVIDIA InfiniBand 打造數據庫+網絡軟硬一體化聯合解決方案,為用戶創造更多價值。
-
數據
+關注
關注
8文章
7030瀏覽量
89036 -
SSD
+關注
關注
21文章
2862瀏覽量
117423 -
InfiniBand
+關注
關注
1文章
29瀏覽量
9197
原文標題:GreatSQL & NVIDIA InfiniBand NVMe SSD 存算分離池化方案:實現高性能分布式部署
文章出處:【微信號:NVIDIA_China,微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論