SQLServer壓測

2020-10-09 17:00:07

一、測試工具

  HammerDB是一個開源的資料庫負載測試和基準工具,有Linux和Windows版本,可以測試執行在任意系統上的資料庫系統。HammerDB具有自動化的,多執行緒和動態指令碼可延伸特點。HammerDB目前支援的資料庫種類很多,主流的資料庫都已經覆蓋,例如Oracle、SQL Server、DB2、TimesTen、MySQL、MariaDB、PostgreSQL、Greenplum、Postgres Plus Advanced Server、Redis 和 Trafodion SQL on Hadoop。HammerDB包含一個內嵌的基於TPC-C工業標準基線工作負載。

二、測試環境

OS 名稱Windows Server 2012 R2 Standard
OS版本6.3.9600
BIOS1.10.2-3.el7_4.1
資料庫版本SQL Server 2017
系統型別64位元
CPU4C
MEM8G

三、安裝HammerDB

雙擊安裝檔案,然後顯示語言選擇。

img

單擊繼續以開始安裝。

img

單擊下一步以確認版本

image.png

image.png
image.png
檔案將被複制並且解除安裝已建立

img
單擊完成並啟動HammerDB
img

四、開始壓測

4.1 測試模型

  1. [dbo].[CUSTOMER]
  2. [dbo].[DISTRICT]:
  3. [dbo].[HISTORY]:
  4. [dbo].[ITEM]:
  5. [dbo].[NEW_ORDER]
  6. [dbo].[ORDER_LINE]
  7. [dbo].[ORDERS]
  8. [dbo].[STOCK]
  9. [dbo].[WAREHOUSE]

儲存過程

  1. [dbo].[DELIVERY]
  2. [dbo].[NEWORD]
  3. [dbo].[OSTAT]
  4. [dbo].[PAYMENT]
  5. [dbo].[SLEV]

4.2 測試指標

TPM

Transactions Per Minute,表示資料庫每分鐘執行的事務數量。

4.3 測試步驟

建立壓測資料庫

image.png

image.png

將資料庫新增到可用性組

image.png

點選options選單->Benchmark子選單,勾選「SQL Server」、「TPC-C"兩個選項。

image.png

雙擊「schema Build」下的Options進行Sqlserver連線以及資料倉儲設定。

設定SQL Server資料庫存取內網IP、Port、使用者名稱和密碼、資料庫名。

image.png

其中Warehouses數量設定為10個,虛擬使用者數量設定為9個。

設定完成後點選OK,回到左側導航欄,雙擊Build進行資料匯入,需要等待幾分鐘,直到使用者列表裡的complete均顯示已完成,單擊紅色方框停止執行,如下圖所示。

image.png

設定Driver script

在左側導航欄中選擇Driver script->option,設定資料庫連線資訊,確保資料庫連線資訊正確。

image.png

在左側導航欄中選擇Driver script/load。

在左側導航欄中選擇Virtual User- >Options,設定Virtual User引數,Virtual Users的數量通常是根據規格設定來選,直到資料庫被壓出最高TPM,如下圖所示。

image.png

勾選「Log Output to Temp」後,會在C槽目錄下生成hammerdb.log紀錄檔檔案。

在左側導航欄中選擇Virtual User/Create, 點選Create。

在左側導航欄中選擇Transcations->Option,點選OK, 如下圖所示。

image.png

在左側導航欄中選擇Transcations/Counter

在左側導航欄中選擇Virtual User->Run,雙擊Run開始執行,如下圖所示。

image.png

測試結果可以在C槽根目錄下的hammerdb.log紀錄檔檢視:

image.png

五、測試結果

使用者數TPM
847433
1648146
3249409
6469298
12871171
19264324
25665944

image.png