Orion測試磁碟效能
阿新 • • 發佈:2021-10-28
1.簡介
Orion和Oracle採用了相同的IO技術棧(Orion is expressly designed for simulating Oracle database I/O workloads using the same I/O software stack as Oracle),所以可以在不安裝Oracle資料庫的情況下,測試磁碟是否滿足資料庫的需求。
2.下載安裝
下載對應的版本後上傳到伺服器,解壓
gunzip orion_linux_x86-64.gz
3.預測資料庫的IO情況
本次測試時為了測試新儲存是否能夠滿足Oracle的需求,因為我們的Oracle資料庫的負載基本相同,所以通過檢視現有資料庫的IO情況,可以方便我們測試引數的設定
--single-block reads 1225841050 select * from v$sysstat where name='physical read total IO requests'; --multi-block reads 66884306 select * from v$sysstat where name='physical read total multi block requests'; --bytes read 82066240613376 select * from v$sysstat where name='physical read total bytes'; --single-block writes 9139627566 select * from v$sysstat where name='physical write total IO requests'; --multi-block writes 157501520 select * from v$sysstat where name='physical write total multi block requests'; --bytes written 111921037188608 select * from v$sysstat where name='physical write total bytes'; select 111921037188608/(111921037188608+82066240613376) from dual --通過上面的分析,目前資料庫寫佔比60%,以單塊讀寫為主
4.測試
4.1.引數介紹
# 解壓後,是一個二進位制程式,新增執行屬性 chmod +x orion_linux_x86-64 # 檢視幫助 ./orion_linux_x86-64 -help - run #Type of workload to run (simple, normal, advanced, dss, oltp),負載的型別,其中advance可以自定義,例如讀寫比例 - testname #lun檔名,lun檔案中寫測試點名稱(需要滿足能執行dd if=/dev/mapper/archlog1 of=/dev/null bs=8K count=1024),會生成以testname為字首的測試報告 - num_disks #測試點數量 - size_small #小IO大小,預設8KB - size_large #大IO大小,預設1M - type #隨機讀寫還是順序讀寫,預設值隨機 - num_streamIO #一次順序讀寫,同時幾個IO,預設是4 - write #寫佔的比例 - duration #每個測試點測試時長,預設60S - num_small #最小的壓測級別(level) - num_large #最大的壓測級別 - matrix #detailed #大小隨機讀寫同時進行,basic先測試小的隨機讀,再測試大的隨機讀
4.2.測試
# 8KB大小塊,60%寫,隨機讀寫,測試OLTP型別的IOPS和延時
./orion_linux_x86-64 -run advanced -testname testa -size_small 8 -size_large 8 -write 60 -type rand -matrix detailed -duration 300
# 1M的IO,每次順序讀寫4M,測試吞吐量
./orion_linux_x86-64 -run advanced -testname testb -size_large 1M -write 90 -type seq -matrix col -duration 600