swingbench測試雲上oracle rac性能
誰說雲上不能跑oracle rac?
1、測試環境
1.1、測試資料庫環境配置
配置
數量
主機名
計算節點
cpu:2c
記憶體:8g
高效雲盤:60g
2
db01/db02
存儲節點
cpu:1c
3
cell01/cell02/cell03
ssd雲盤
50g
1.2、在swingbench機器上開啟叢集協調器,以及把db01、db02加入到協調器中;
./coordinator –g &
./minibench -g db01 -cs
10.10.10.162:1521:orcl1 -co localhost &
./minibench -g db02 -cs
10.10.10.163:1521:orcl2 -co localhost &

1.3、插入測試資料,共1.6g,每秒插入81330行;
2、測試rac性能
2.1、配置swingbench測試環境,主要以oltp為主,使用者數400;達到了最高tps是400,平均tps是282;
2.2、在測試過程中,使用袋鼠雲easydb可看到資料庫單節點的qps為1400左右,tps接近150左右;
2.3、袋鼠雲easydb輸出的計算節點和存儲節點的實時cpu負載資訊,可以看出cpu的使用率已經達到80%左右,而此時的存儲節點隻有20%左右,說明此方案對存儲節點的資源使用是比較低的;
2.4、袋鼠雲easydb,主機實時性能監控輸出,包含的内容有qps、tps、實體讀寫、解析和會話等資訊;
主機db01:
主機db02:
2.5、袋鼠雲easydb監控資料庫實時會話,其中包括sid、spid、等待事件、主機、sql_id、執行時間、以及詳情裡的sql語句和執行計劃;
2.6、下面是iostat的輸出截圖;
2.7、網絡實時監控iftop輸出,從此處就可以了解到oracle rac之間網絡流量是比較大的;
結論:
1、以測試環境的ecs配置來看,單節點可達到1400的qps,282的tps;
2、磁盤io的讀寫其實是通過網絡來實作的,在我的測試環境讀是8mb/s,寫是12mb/s;
3、網絡方面峰值的tx和rx,可達到160mb,這個結果與磁盤io的讀寫是很接近的。
從swingbench測試來看,使用者如果想在阿裡雲上使用oracle rac,兩節點滿足3000的qps,以及300的tps以上的需求,考慮到測試資料與真實資料及應用的差距,推薦配置8c32g的計算節點,4c16g的存儲節點。
在說到阿裡雲的網絡,這裡不得不吐槽一下阿裡雲了,為什麼在購買ecs的時候,沒有萬兆網絡可選?這是剝奪了使用者選擇的權利。