1、合作背景 萬里開源軟體有限公司 北京萬里開源軟體有限公司,是專註於國產自主可控資料庫產品研發超 20年的國家高新技術企業,參與多個國家級的資料庫行業標準制定工作。本次用於測試的 GreatSQL 開源資料庫是適用於金融級應用的國內自主 MySQL 版本,專註於提升 MGR 可靠性及性能,支持 ...
1、合作背景
萬里開源軟體有限公司
北京萬里開源軟體有限公司,是專註於國產自主可控資料庫產品研發超 20年的國家高新技術企業,參與多個國家級的資料庫行業標準制定工作。本次用於測試的 GreatSQL 開源資料庫是適用於金融級應用的國內自主 MySQL 版本,專註於提升 MGR 可靠性及性能,支持 InnoDB 並行查詢等特性,可以作為 MySQL 或 Percona Server 的可選替換,用於線上生產環境,且完全免費並相容 MySQL 或 Percona Server。
大普微電子科技有限公司
深圳大普微電子科技有限公司(DapuStor),是國內領先的企業級 SSD 主控晶元設計、SSD 產品及存儲方案定製專家。本次用於測試的 Roealsen5 企業級 SSD 基於自研控制器 DP600 和固件,搭載 KIOXIA 112層 3D Enterprise TLC,為客戶提供業界領先的高性能、高可靠、低延時的 SSD,為企業 IT 及雲設施提供更高能效和更優 TCO 的解決方案。DapuStor R5 產品廣泛適用於企業IT、運營商、互聯網、金融、智能製造、AI及大數據分析等行業的核心存儲場景。
2、測試目的
此次測試的目的主要在於:
針對 GreatSQL 在 DapuStor Roealsen5 NVMe SSD(以下簡Roealsen5)上的性能進行測試驗證,並與S公司同規格的一款主流 NVMe SSD 做對比,檢驗 GreatSQL 在 Roealsen5 SSD 上運行是否能獲得性能更佳、穩定性更強的效果。
3、測試用例設計
sysbench測試:
- 資料庫的 InnoDB Buffer Pool size 通常最高設置為物理記憶體的75%,但實際生產伺服器實際記憶體大小存在差異,導致生產環境的 InnoDB Buffer Pool size 大小存在差異,並且理論上 InnoDB Buffer Pool size 設置的越小,會有更多的 IO 請求落到 SSD 上,可以通過設置不同的 InnoDB Buffer Pool size 的性能影響;
- 針對資料庫常用的數據模型分析,混合讀寫是資料庫占比最多的應用場景;
- Linux 系統上比較常用的文件系統為 ext4 和 xfs ;
- 針對以上幾點設計測試用例如下:
- 文件系統格式:ext4 、xfs
- 併發線程數:1、4、8、16、32、64、128
- 測試事務模型:oltp_read_write(混合讀寫場景)
- 數據量:64張表,每張表1250萬行數據,約191G
- InnoDB Buffer Pool size大小:48G、96G、144G、196G
4、測試詳細數據
sysbench測試數據:
ext4文件系統:
圖1:Roealsen5和友商在ibp=48G 混合讀寫場景QPS對比(越高越好)
圖2:Roealsen5和友商在ibp=48G 混合讀寫場景平均時延對比(越低越好)
圖3: Roealsen5和友商在ibp=96G 混合讀寫場景QPS對比(越高越好)
圖4:Roealsen5和友商在ibp=96G 混合讀寫場景平均時延對比(越低越好)
圖5:Roealsen5和友商在ibp=144G 混合讀寫場景QPS 對比(越高越好)
圖6:Roealsen5和友商在ibp=144G 混合讀寫場景平均時延對比(越低越好)
圖7:Roealsen5和友商在ibp=192G 混合讀寫場景QPS 對比(越高越好)
圖8: Roealsen5和友商在ibp=192G 混合讀寫場景平均時延對比(越低越好)
Xfs文件系統:
圖9:Roealsen5和友商在ibp=48G 混合讀寫場景QPS 對比(越高越好)
圖10:Roealsen5和友商在ibp=48G 混合讀寫場景平均時延對比(越低越好)
圖11:Roealsen5和友商在ibp=96G 混合讀寫場景QPS 對比(越高越好)
圖12:Roealsen5和友商在ibp=96G 混合讀寫場景平均時延對比(越低越好)
圖13:Roealsen5和友商在ibp=144G 混合讀寫場景QPS 對比(越高越好)
圖14:Roealsen5和友商在ibp=144G 混合讀寫場景平均時延對比(越低越好)
圖15: Roealsen5和友商在ibp=192G 混合讀寫場景QPS 對比(越高越好)
圖16:Roealsen5和友商在ibp=192G 混合讀寫場景平均時延對比(越低越好)
5、測試結論
sysbench測試結論:
-
資料庫分別運行在 Roealsen5 和友商 NVMe SSD盤上,無論是ext4 還是 xfs 文件系統, InnoDB Buffer Pool size 是否充足, Roealsen5 作為GreatSQL數據盤的性能都優於友商 NVMe SSD。作為GreatSQL 數據盤, Roealsen5 會給用戶帶來更高的吞吐的同時帶來更短的響應時延。
-
在InnoDB Buffer Pool size 不足的情況下(分別為 48G、96G 時),對比1~128併發下 Roealsen5和友商 NVMe SSD 的 QPS 和平均時延, Roealsen5 的 QPS 有 9.7% ~ 126.7% 不等的提升,平均時延最多降低了 55.6% 。
-
在 InnoDB Buffer Pool size 充足的情況下(分別為 144G、196G 時),對比 1~128 併發下 Roealsen5 和友商 NVMe SSD 的 QPS 和平均時延, Roealsen5 的 QPS 最多提升了40% 左右,平均時延最多降低了 40% 左右。
從以上測試數據可以明顯看出,GreatSQL 資料庫搭載DapuStor Roealsen5 NVMe SSD 後,性能實現大幅提升,尤其在混合讀寫的場景,在增大數據的吞吐量的同時,大幅度降低時延,解決資料庫的高效訪問、方便共用等問題。
作為分別在資料庫領域和數據存儲領域的國內領先企業,萬里資料庫和 DapuStor 在本次合作的應用探索,希望能為用戶帶來更加流暢、高效的體驗。未來,萬里資料庫將推動 GreatSQL 協同 DapuStor 探索更多基於 DapuStor Roealsen5 NVMe SSD 在資料庫中的結合點和創新點,打造資料庫+存儲軟硬一體化聯合解決方案,為用戶創造更多價值。
Enjoy GreatSQL