設計和規劃基准測試
規劃基准測試的第一步是提出問題並明確目標然後決定是采用標准的基准測試還是設計專用的測試
如果采用標准的基准測試應該確認選擇了合適的測試方案例如不要使用TPCH 測試電子商務系統在TPC 的定義中TPCH 是即席查詢和決策支持型應用的基准測試因此不適合用來測試OLTP 系統
設計專用的基准測試是很復雜的往往需要一個迭代的過程首先需要獲得生產數據集的快照並且該快照很容易還原以便進行後續的測試
然後針對數據運行查詢可以建立一個單元測試集作為初步的測試並運行多遍但是這和真實的數據庫環境還是有差別的更好的辦法是選擇一個有代表性的時間段比如高峰期的一個小時或者一整天記錄生產系統上的所有查詢如果時間段選得比較小則可以選擇多個時間段這樣有助於覆蓋整個系統的活動狀態例如每周報表的查詢或者非峰值時間運行的批處理作業注
可以在不同級別記錄查詢例如如果是集成式(fullstack)基准測試可以記錄Web服務器上的HTTP 請求也可以打開MySQL 的查詢日志(Query Log)倘若要重演這些查詢就要確保創建多線程來並行執行而不是單個線程線性地執行對日志中的每個連接都應該創建獨立的線程而不是將所有的查詢隨機地分配到一些線程中查詢日志中記錄了每個查詢是在哪個連接中執行的
即使不需要創建專用的基准測試詳細地寫下測試規劃也是必需的測試可能要多次反復運行因此需要精確地重現測試過程而且也應該考慮到未來執行下一輪測試時可能已經不是同一個人了即使還是同一個人也有可能不會確切地記得初次運行時的情況測試規劃應該記錄測試數據系統配置的步驟如何測量和分析結果以及預熱的方案等
應該建立將參數和結果文檔化的規范每一輪測試都必須進行詳細記錄文檔規范可以很簡單比如采用電子表格(spreadsheet)或者記事本形式也可以是復雜的自定義的數據庫需要記住的是經常要寫一些腳本來分析測試結果因此如果能夠不用打開電子表格或者文本文件等額外操作當然是更好的
返回目錄高性能MySQL
編輯推薦
ASP NET開發培訓視頻教程
數據倉庫與數據挖掘培訓視頻教程
Oracle索引技術
From:http://tw.wingwit.com/Article/program/MySQL/201311/29739.html