天天看點

Swingbench測試雲上Oracle RAC性能

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 &

Swingbench測試雲上Oracle RAC性能

1.3、插入測試資料,共1.6g,每秒插入81330行;

Swingbench測試雲上Oracle RAC性能
Swingbench測試雲上Oracle RAC性能

2、測試rac性能

2.1、配置swingbench測試環境,主要以oltp為主,使用者數400;達到了最高tps是400,平均tps是282;

Swingbench測試雲上Oracle RAC性能

2.2、在測試過程中,使用袋鼠雲easydb可看到資料庫單節點的qps為1400左右,tps接近150左右;

Swingbench測試雲上Oracle RAC性能

2.3、袋鼠雲easydb輸出的計算節點和存儲節點的實時cpu負載資訊,可以看出cpu的使用率已經達到80%左右,而此時的存儲節點隻有20%左右,說明此方案對存儲節點的資源使用是比較低的;

Swingbench測試雲上Oracle RAC性能

        2.4、袋鼠雲easydb,主機實時性能監控輸出,包含的内容有qps、tps、實體讀寫、解析和會話等資訊;

主機db01:

Swingbench測試雲上Oracle RAC性能

主機db02:

Swingbench測試雲上Oracle RAC性能

        2.5、袋鼠雲easydb監控資料庫實時會話,其中包括sid、spid、等待事件、主機、sql_id、執行時間、以及詳情裡的sql語句和執行計劃;

Swingbench測試雲上Oracle RAC性能

2.6、下面是iostat的輸出截圖;

Swingbench測試雲上Oracle RAC性能

2.7、網絡實時監控iftop輸出,從此處就可以了解到oracle rac之間網絡流量是比較大的;

Swingbench測試雲上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的時候,沒有萬兆網絡可選?這是剝奪了使用者選擇的權利。