本文將以sysbench壓力測試程式來測試CPU、記憶體、主機檔案系統的效能,然後透過gnuplot數學繪圖自由軟體,將結果繪製成統計圖表以利於解讀,最後則安裝tpcc-mysql,用以評估MySQL資料庫的實際運作效能。
在安裝完成後,即可利用名稱為「gnuplot」的執行檔來繪製相關圖形。在繪製圖形過程中所需要的數據(可利用一個儲存二元資料的文字檔提供)文字檔格式如圖5所示。檔案中每一行都有兩個數字,以空白字元分隔表示X軸及Y軸的數字。
|
▲圖5 繪製圖形過程中所需的數據之文字檔格式。 |
以下簡單的說明gnuplot常用的組態,內容如表5
所示。
表5 gnuplot常用組態
接下來,將以測試MySQL資料的效能為範例,利用sysbench軟體取得MySQL的效能數據,並利用gnuplot將此數據轉換成圖形檔案,首先設定gnuplot所需要的組態檔,檔案名稱為「graphsysbench」,內容如圖6所示(設定使用sysbench.csv檔案當成輸入數據的來源)。
|
▲圖6 graphsysbench檔案內容。 |
首先以sysbench產生測試所需要的資料,以下列指令產生相關測試資訊:
產生完成相關測試資訊後,接著執行下列指令來實際執行測試作業,並將相關資訊輸出導出到sysbench.log:
至於sysbench.log檔案的內容,如圖7所示。
|
▲圖7 sysbench.log檔案內容。 |
由於gnuplot所能接受的資料為數字類型,所以接下來要將輸出的結果解析成gnuplot所能接受的資料類型,並將相關資訊輸出到sysbench.csv檔案中,可使用如下的Script指令進行轉換:
由於上述指令僅是單次測試(亦即僅取得一次的資料,因而無法繪製相關圖形,也就是在圖形上的表現是單點而非線圖),因此可使用程式來重複取得多個測試數據。
例如,可使用下列簡單的Script程式進行多次的測試,並將輸出導到sysbench.log檔案中:
在取得多次測數的相關資訊後,再利用下列指令取出相關的數據:
最後,再利用「gnuplot graphsysbench」來繪製相關圖形,就可以得到如圖8所示的效能測試
圖形。
|
▲圖8 效能測試圖形。 |
如果想要更進一步測試MySQL資料庫的效能,或者不想這麼麻煩要自己手動測試,也可以試試tpcc-mysql這個程式,更進一步地測試MySQL資料庫。
安裝tpcc-mysql
tpcc-mysql是TPC(Tracsaction Processing Performance Council,非營利資料庫評價組織)開發用來評估MySQL資料庫效能的套件。在本文中,將利用此套件中所提供的測試程式來測試MySQL資料庫的效能。
一開始,先依照下列指令取得tpcc-mysql原
始碼: