執行硬碟測試

瞭解一些診斷方法,並使用它們來確保硬體基礎架構處於良好狀態。 在 Linux®上,您可以使用 hdparmdd 指令或 Bonnie + + 應用程式來判定硬碟寫入速率。 您也可以使用 iostat 指令來判定平均磁碟用量。

使用 hdparm 指令決定寫入速率

在 Linux 作業系統中,有一個內建 hdparm 指令可用來判斷硬碟寫入速率。

程序

在 Linux 主控台中,輸入 hdparm -t path_to_the_test_file
hdparm -t /dev/sda1
Timing buffered disk reads: 200 MB in 1.19 seconds = 167.47 MB/sec

使用 DD 應用程式執行磁碟測試

關於此作業

DD 測試會測量最基本的單一執行緒磁碟存取,這是一個大型循序寫入,後面接著一個大型循序讀取。 它與資料庫效能測試工作相關,因為它為您提供循序掃描大型表格的速度上限。
附註: 請檢查測試電腦上的 RAM 大小,以正確執行 DD 測試,並避免檔案系統快取可能扭曲測試結果。

程序

  1. 建立測試電腦上 RAM 容量大小兩倍的檔案,並將它複製到目標電腦硬碟。

    在測試中使用 4 KB 區塊大小,因為 License Metric Tool 使用的 DB2® 表格空間預設分頁大小為 4 KB。 例如,如果您有 16 GB RAM ,請執行下列指令,以便在現行目錄中建立名為 ddfile 的 32 GB 檔案:

    time sh -c "dd if=/dev/zero of=ddfile bs=4k count=8000000 && sync".
    附註: DD 的部分實作會報告寫入速率,但 time 指令一律會傳回大於 DD 時間的執行時間。 DD 所報告的時間和速率代表沒有任何延遲或同步化時間的速率。 將資料大小除以 time 指令所報告的時間,以取得實際同步檔案寫入率。
    範例:
    8000000+0 records in
    8000000+0 records out
    32768000000 bytes (32 GB) copied, 38.924 s, 842 MB/s
    real 3m49.192s
    user 0m0.450s
    sys 0m38.282s
    在此範例中,寫入 (包括快取) 的速率是 842 MB/s ,但包括同步化時間更窮-大約只有 136.46 MB/s (32 GB/3 分 49 秒)。
  2. 若要清除檔案系統快取以便稍後直接從磁碟讀取,請將另一個大型檔案寫入磁碟: dd if=/dev/zero of=ddfile2 bs=4k count=4000000
  3. 讀取第一個大型檔案。 因為檔案系統快取已填入第二個檔案,此測試會傳回有效的讀取率結果:
    time dd if=ddfile of=/dev/null bs=4k
    8000000+0 records in
    8000000+0 records out
    32768000000 bytes (32 GB) copied, 186.456 seconds, 167.6 MB/s
    real 3m6.496s
    user 0m1.652s
    sys 0m10.753s
  4. 將結果與表格 建議的資料庫伺服器電腦平均磁碟寫入及讀取率 中的結果相互比較,以判定您的儲存體是否可以針對您的環境處理 DB2 資料庫。 系統應該可以輕鬆處理最多 10000 個用戶端的資料庫。

判斷磁碟使用情形

如果回應時間緩慢,請使用 iostat 指令檢查平均磁碟用量。 磁碟用量時間大於 80% 可能會降低 I/O 效能,平均磁碟用量低於 40% 是理想的。

程序

在 Linux 主控台中,輸入 iostat -x interval duration
其中:
  • interval 是時間間隔 (以秒為單位)。 如果未指定間隔,則輸出會反映自系統重新開機以來整個期間的值
  • duration 是執行指令的次數。
範例:
iostat -x 30 5