《大規模存儲系統性能測試方法與技術研究》是依託清華大學,由鄭緯民擔任項目負責人的面上項目。
基本介紹
- 中文名:大規模存儲系統性能測試方法與技術研究
- 依託單位:清華大學
- 項目負責人:鄭緯民
- 項目類別:面上項目
項目摘要,結題摘要,
項目摘要
存儲系統性能對於訪問大量數據的套用至關重要。性能測試有助於確定影響存儲系統性能的關鍵因素,從而可以有針對性地進行分析和改進。存儲系統性能測試主要涉及兩個技術挑戰:創建真實的存儲系統狀態,生成有代表性的訪問負載。雖然存儲系統設計取得很大進步,但存儲系統性能測試技術的發展卻非常滯後。主要表現在一些關鍵技術問題依然懸而未決,例如:如何在B系統上重放從A系統採集的trace而又保持負載模式;如何保證分散式播放時整體負載的行為特徵;如何快速構建大規模存儲系統的真實狀態。針對現有大規模存儲系統性能測試技術的不足,本項目提出了大規模存儲系統性能測試方法與技術研究,面向大規模存儲系統性能測試的兩大技術挑戰,主要研究:訪問trace的高效收集與合理重放技術;可擴展的有代表性人工負載生成方法;大規模存儲系統真實狀態的快速構建技術。最終目標是構建可重複、可擴展、易配置、可信賴的存儲系統性能評測體系。
結題摘要
本項目順利完成了研究計畫中的全部內容,初步構建了高效率、可重複、可擴展的存儲系統性能評測體系。主要學術進展包括: ① 研究了分級存儲系統性能測試技術並實現了測試工具DMStone,它使用檔案系統快照生成某一時刻的系統狀態,並根據後續的相鄰快照的差異分析出後續訪問負載的巨觀特徵,進而生成後續對檔案系統的數據訪問。DMStone能夠提供某一時刻完整的檔案系統狀態,涵蓋了近期訪問過的和長期不用的所有檔案,而且它能夠保證後續檔案訪問的局部性與真實套用場景相符合。 ② 設計了一個塊級別存儲系統性能測試工具IOmark,它根據來自真實存儲系統的I/O 記錄生成相同的I/O 請求負載,以模擬運行環境的真實負載變化。使用Linux核心態異步I/O 實現對塊級別存儲系統的訪問;通過跟蹤生成的I/O 請求的狀態和I/O 記錄中的請求時間來控制I/O 請求的傳送時間,並篩選I/O 記錄中的盤號來控制負載輕重,從而實現精確地重放I/O 負載的功能。 ③ 按照TPC-C標準設計並實現了一套符合標準的TPC-C評測程式,並對多套存儲系統進行了測試。對TPC-C評測程式的負載特徵進行量化分析,從底層磁碟陣列控制器和上層資料庫系統兩個方面分別對TPC-C程式的數據訪問模式、數據塊大小分布、讀寫頻率,讀寫混合比例等進行分析。針對TPC-C評測程式的負載特徵,提出一系列系統級最佳化方法。完成對多套伺服器的TPC-C評測,其中,在4路英特爾至強伺服器上TPMC值達到101.8萬。 ④ 本項目研究提出了一系列大規模存儲系統性能測試方法與技術,在Linux系統中設計並實現了塊級別、檔案級別存儲系統性能測試工具。這些方法和工具幫助我們理解存儲系統內在特徵和套用I/O負載模式,為存儲陣列、雲存儲系統、大數據計算等相關技術研究提供了有力支撐,加速了相關成果的提出、實現和最佳化。 主要學術成績包括:發表學術論文16篇,其中5篇發表在系統領域國際頂尖期刊ACM Transactions on Storage、IEEE Transactions on Computers、IEEE Transactions on Parallel and Distributed Systems上,SCI 檢索8 篇,EI 檢索13 篇。獲得發明專利授權1 項,申請發明專利1 項。課題負責人鄭緯民教授獲得2015年度國家技術發明獎二等獎1項。