專利名稱:分布式環境下實現輸入輸出蹤跡收集回放的系統和方法
技術領域:
本發明涉及計算機存儲領域,具體地說是一種分布式環境下實現I/OTrace收集 回放的系統和方法。
背景技術:
隨著計算機的發展,存儲系統目前已處于計算機系統的核心地位,在實際應用環 境中,對存儲系統的數據處理速度、可靠性和安全性都提出了嚴格的要求。對于任何一種存 儲系統,都存在自身的優勢和缺陷,因此在實際應用環境下對存儲系統進行測試,可以更加 客觀、公平的對被測系統進行評價,通過與其他存儲系統進行對比,找到被測存儲系統適合 的最佳環境。
中國專利文獻CN1945747B中公開了一種存儲單元測試方法及其系統,所述測試 方法包括選擇存儲單元測試類型;根據所選擇的測試類型產生相應的測試激勵信號并發送 至待測模塊;根據所述測試激勵信號,對待測模塊的存儲單元索引表進行讀寫操作;生成 相應的測試結果。該技術方案提供的存儲單元測試方法及其系統測試功能較全面,且能有 效減少工作量以及降低成本,但是該測試方法并不是在實際應用環境下對系統的測試,而 是根據測試時預先設定的測試信號進行測試,因此不能全面的反映實際使用的環境下的存 儲系統性能。
在實際應用中,為了測試實際環境下存儲系統的性能,獲取Trace是非常關鍵的 環節,Trace是指數據操作的記錄集,其中包含了對磁盤的操作。常用的Trace收集工具都 是以單機環境為基礎,要進行多機Trace收集時操作復雜,得到的Trace集不能得到有效的 管理和進一步的處理。基于Trace的分析被用于更有效的軟硬件的設計,它也以頻繁的被 用于評估文件系統性能分析和改進。I/OTrace是對某一具體文件的I/O進行記錄而形成, 可以反映出這一文件系統的I/O請求情況,得到該實際應用環境下的存儲系統的性能信 息,但由于I/O請求不可控,因此生成的I/OTrace不可控,因此無法保證其可以綜合反映 該存儲系統的性能,對存儲子系統的設計和評價就顯得很不方便。發明內容
為此,本發明所要解決的技術問題在于現有技術中I/O請求不可控,對存儲系統 的評價不方便,從而提出一種可以I/O請求可控,便于存儲系統設計和評價的I/OTrace收 集回放系統。
為解決上述技術問題,本發明的一種分布式環境下實現I/OTrace收集回放的系 統,包括1/0 Trace收集與重放控制單元、1/0 Trace采集單元、1/0 Trace重放單元;(1)1/0 Trace收集與重放控制單元,包括用戶界面模塊,提供針對整個系統的全局和單個節點的統一配置管理界面,方便用戶 集中管理Trace的采集與重放;網絡通信模塊,通過網絡與分布式系統中的I/OTrace采集單元和I/OTrace重放單元進行通信。
導入腳本模塊,用于讀入指定的Trace任務腳本;腳本分析模塊,分析讀入的所述Trace任務腳本中的任務,生成Trace任務; 導入Trace模塊,讀入并分析所述Trace任務;生成Trace模塊,將所述導入Trace模塊獲取的Trace任務按指定格式輸出到文件; Trace任務調度模塊,根據所述腳本分析模塊中的所述Trace任務或者根據用戶界面 接收到的命令,對采集代理模塊、重放代理模塊、導入Trace模塊、生成Trace模塊、性能分 析模塊進行調度,完成相關任務;Trace資源管理模塊,用于對系統中所有Trace收集與重放工具進行管理,方便Trace 任務調度模塊對Trace工具的遠程調度;性能分析模塊,對各節點反饋上來的性能報告進行分析整理,生成性能報告; 采集代理模塊,接收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的遠 程的Trace采集工具,通過網絡通信模塊發給遠程的所述Trace采集單元,并接收來自網絡 的反饋后再發給上層調用者;重放代理模塊,接收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的 遠程的Trace重放工具,通過網絡通信模塊發給遠程的所述Trace重放單元,收到來自網絡 的反饋后再發給上層調用者;(2) I/O Trace采集單元,包括:Trace采集控制模塊,為用戶配置管理所述I/O Trace采集單元提供接口 ; I/O Trace緩沖池模塊,用于緩存I/O Trace的請求;文件I/O采集模塊,用于截獲文件系統對文件的讀寫I/O請求包,從請求包中獲取讀寫 的信息,并將這些信息保存到一個I/O Trace緩沖池中;塊I/O采集模塊,用于截獲塊設備的讀寫I/O請求包,從請求包中獲取讀寫的信息,并 將這些信息保存到一個I/O Trace緩沖池中;Trace后臺回寫模塊,將I/O Trace緩沖池中的信息寫入Trace日志文件,并且將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元;網絡通信模塊,用于與所述I/O Trace收集與重放控制單元通過網絡進行通信。
(3) I/O Trace 重放單元,包括文件I/O重放模塊,完成文件I/O重放的具體動作; 塊I/O重放模塊,完成塊I/O重放的具體動作;Trace分析器模塊,讀取Trace文件,分析Trace的格式,將需要的信息組織成I/O請求 數據結構,然后發給時間尺度調整模塊;時間尺度調整模塊,用于按照用戶設置的策略對收到的I/O請求數據結構進行重新調 整,最后交給Trace重放模塊;Trace重放模塊,用于根據Trace的類型來發送調用操作系統對應的I/O重放模塊的指令;性能統計模塊,根據"Trace重放模塊的反饋信息,統計"Trace的性能并給出報告;Trace重放控制臺模塊,提供用戶進行操作控制使用;網絡通信模塊,用于與所述I/O Trace收集與回放總控制單元進行通信。
所述"Trace重放模塊中Trace的類型包括文件iTrace和塊Trace,對應的I/O重放 模塊為文件I/O重放模塊和塊I/O重放模塊。
一種使用分布式環境下實現I/OTrace收集回放的系統的方法,如圖1所示,包括 如下步驟(1)用戶通過用戶界面模塊對系統全局和單個節點進行統一配置和管理;(2)由導入腳本模塊讀入指定的Trace任務腳本,由腳本分析模塊分析所述Trace任務 腳本中的任務,生成Trace任務;(3)根據所述腳本分析模塊中的所述Trace任務或者根據用戶界面接收到的命令,所 述Trace任務調度模塊對采集代理模塊、導入Trace模塊、生成Trace模塊、重放代理模塊、 性能分析模塊進行調度,完成相關任務。
在所述步驟(3)中,Trace任務調度模塊對采集代理模塊的調用過程如下接收 Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的遠程的Trace采集工具,通 過網絡通信模塊發給遠程的所述Trace采集單元,并接收來自網絡的反饋后再發給上層調 用者。
所述Trace采集單元的工作過程如下若Trace采集控制模塊發出收集文件I/OTrace的命令,如圖4所示,過程如下(1)Trace采集控制模塊發出收集文件I/OTrace的命令(2)文件I/O采集模塊截獲文件系統對文件的讀寫I/O請求包,從請求包中獲取讀寫的 信息,并將這些信息保存到一個I/O Trace緩沖池中模塊中;(3)TraCe后臺回寫模塊根據預定策略將I/OTrace緩沖池中的信息寫入Trace日志文 件,并將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元;若Trace采集控制模塊發出收集塊I/OTrace的命令,如圖5所示,過程如下(1)Trace采集控制模塊發出收集塊I/OTrace的命令(2)塊1/0采集模塊截獲塊設備層的1/0請求包,并發到I/OTrace緩沖池中;(3)Trace后臺回寫模塊根據預定策略,將1/0 Trace緩沖池中的信息寫入Trace日 志文件,并將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元。
在所述步驟(4)中,所述Trace任務調度模塊對重放代理模塊的調用過程如下接 收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的遠程的Trace重放工具, 通過網絡通信模塊發給遠程的所述Trace重放單元,收到來自網絡的反饋后再發給上層調 用者。
所述Trace重放單元的過程如下(a)所述Trace重放控制臺模塊發出的命令為重放文件I/O Trace時,如圖2所示 步驟1 所述Trace重放控制臺模塊發出重放文件I/O Trace的命令; 步驟2 所述Trace分析器模塊根據所述Trace重放控制臺命令從所述I/OTrace收集 與重放控制單元獲取指定的Trace記錄并進行分析,構造相應的I/O請求包,發到時間尺度 調整模塊;步驟3 時間尺度調整模塊根據用戶指令對I/O請求包的時間尺度進行調整,調整后的 請求包發送到Trace重放模塊;步驟4 所述Trace重放模塊根據I/O請求包的類型,將其發至文件I/O重放模塊; 步驟5 文件I/O重放模塊將I/O請求包發給文件系統的相應模塊; (b)所述Trace重放控制臺模塊發出的命令為重放塊I/O Trace時,如圖3所示, 步驟1 所述Trace重放控制臺模塊發出重放文件I/O Trace的命令; 步驟2 所述Trace分析器模塊根據所述Trace重放控制臺命令從所述I/OTrace收集 與重放控制單元獲取指定的Trace記錄并進行分析,構造相應的I/O請求包,發到時間尺度 調整模塊;步驟3 時間尺度調整模塊根據用戶指令對I/O請求包的時間尺度進行調整,調整后的 請求包發送到Trace重放模塊;步驟4 所述Trace重放模塊根據I/O請求包的類型,將其發至文件I/O重放模塊; 步驟5 文件I/O重放模塊將I/O請求包發給文件系統的相應模塊。
在所述步驟(4)中,所述Trace任務調度模塊對導入Trace模塊、生成Trace模塊 進行調用,讀入并分析所述Trace任務,將獲取的Trace任務記錄按指定格式輸出到文件。
在所述步驟(4 )中,所述Trace任務調度模塊對性能分析模塊進行調用,對各節點 反饋上來的性能報告進行分析整理,生成性能報告。
本發明的上述技術方案相比現有技術具有以下優點,(1)本發明所述的分布式環境下實現I/OTrace收集回放的系統及方法,包括I/O Trace收集與重放控制單元、I/O Trace采集單元、I/O Trace重放單元,所述I/O Trace收 集與重放控制單元主要是實現測試機節點的管理,對測試機進行Trace收集和回放測試的 控制,接收從測試機發送來的Trace,并對所有采集到的Trace進行管理、分析,在Trace回 放時能夠設置回放策略,同時實時顯示各臺測試機在回放時的性能表現,便于對比觀察;所 述I/O Trace采集單元和I/O Trace重放單元主要實現獲取主機信息向總控臺進行注冊, 接收總控臺的控制命令,執行相應的"Trace收集與回放工作,在收集時向總控臺發送收集 到的Trace,回放時接收總控臺發送過來的回放Trace集進行回放,并實時的向總控臺返回 當前回放的實時統計信息,這樣,就實現了將各種典型的I/O請求按需要生成,解決了現有 技術中的I/O請求不可控、對存儲系統的設計和評價不方便的技術問題,可以對存儲系統 進行有效的測試和管理,有利于提高存儲系統的性能。
(2)本發明所述的分布式環境下實現I/OTrace收集回放的系統,Trace的類型包 括文件I/OTrace和塊iATTrace,對不同類型的I/OTrace采取不同的方式進行處理,更加具 有針對性,更全面的獲得I/OTrace的信息。
為了使本發明的內容更容易被清楚的理解,下面根據本發明的具體實施例并結合 附圖,對本發明作進一步詳細的說明,其中圖1 是為本發明所述系統的I/O Trace收集與重放控制單元結構圖; 圖2 是本發明系統I/O Trace采集單元結構圖; 圖3 本發明系統I/O Trace重放單元結構圖; 圖4 本發明文件I/O Trace收集流程圖; 圖5 本發明塊I/O Trace收集流程圖。
具體實施方式
本發明的一種分布式環境下實現I/OTrace收集回放的系統,包括1/0 Trace收 集與重放控制單元、I/O Trace采集單元、I/O Trace重放單元;(1)1/0Trace收集與重放控制單元,包括用戶界面模塊,提供針對整個系統的全局和單個節點的統一配置管理界面,方便用戶 集中管理Trace的采集與重放;網絡通信模塊,通過網絡與分布式系統中的I/OTrace采集單元和I/OTrace重放單元 進行通信。
導入腳本模塊,用于讀入指定的Trace任務腳本;腳本分析模塊,分析讀入的所述Trace任務腳本中的任務,生成Trace任務; 導入Trace模塊,讀入并分析所述Trace任務;生成Trace模塊,將所述導入Trace模塊獲取的Trace任務按指定格式輸出到文件; Trace任務調度模塊,根據所述腳本分析模塊中的所述Trace任務或者根據用戶界面 接收到的命令,對采集代理模塊、重放代理模塊、導入Trace模塊、生成Trace模塊、性能分 析模塊進行調度,完成相關任務;Trace資源管理模塊,用于對系統中所有Trace收集與重放工具進行管理,方便Trace 任務調度模塊對Trace工具的遠程調度;性能分析模塊,對各節點反饋上來的性能報告進行分析整理,生成性能報告; 采集代理模塊,接收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的遠 程的Trace采集工具,通過網絡通信模塊發給遠程的所述Trace采集單元,并接收來自網絡 的反饋后再發給上層調用者;重放代理模塊,接收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的 遠程的Trace重放工具,通過網絡通信模塊發給遠程的所述Trace重放單元,收到來自網絡 的反饋后再發給上層調用者;(2)I/O Trace采集單元,包括Trace采集控制模塊,為用戶配置管理所述I/O Trace采集單元提供接口 ; I/O Trace緩沖池模塊,用于緩存I/O Trace的請求;文件I/O采集模塊,用于截獲文件系統對文件的讀寫I/O請求包,從請求包中獲取讀寫 的信息,并將這些信息保存到一個I/O Trace緩沖池中;塊I/O采集模塊,用于截獲塊設備的讀寫I/O請求包,從請求包中獲取讀寫的信息,并 將這些信息保存到一個I/O Trace緩沖池中;Trace后臺回寫模塊,將I/O Trace緩沖池中的信息寫入Trace日志文件,并且將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元;網絡通信模塊,用于與所述I/O Trace收集與重放控制單元通過網絡進行通信。
(3) I/O Trace 重放單元,包括文件I/O重放模塊,完成文件I/O重放的具體動作; 塊I/O重放模塊,完成塊I/O重放的具體動作;Trace分析器模塊,讀取Trace文件,分析Trace的格式,將需要的信息組織成I/O請求9數據結構,然后發給時間尺度調整模塊;時間尺度調整模塊,用于按照用戶設置的策略對收到的I/O請求數據結構進行重新調 整,最后交給Trace重放模塊;Trace重放模塊,用于根據Trace的類型來發給操作系統調用對應的I/O重放模塊的指令;性能統計模塊,根據"Trace重放模塊的反饋信息,統計"Trace的性能并給出報告;Trace重放控制臺模塊,提供用戶進行操作控制使用;網絡通信模塊,用于與所述I/O Trace收集與回放總控制單元進行通信。
所述"Trace重放模塊中Trace的類型包括文件iTrace和塊Trace,對應的I/O重放 模塊為文件I/O重放模塊和塊I/O重放模塊。
上述分布式環境下實現I/OTrace收集回放的系統的工作過程如下(1)用戶通過用戶界面模塊對系統全局和單個節點進行統一配置和管理;(2)由導入腳本模塊讀入指定的Trace任務腳本,由腳本分析模塊分析所述Trace任務 腳本中的任務,生成Trace任務;(3)根據所述腳本分析模塊中的所述Trace任務或者根據用戶界面接收到的命令,所 述Trace任務調度模塊對采集代理模塊、導入Trace模塊、生成Trace模塊、重放代理模塊、 性能分析模塊進行調度,完成相關任務。
下面針對Trace任務調度模塊調度不同的任務來給出其相應的過程1、Trace任務調度模塊對采集代理模塊的調用過程如下接收Trace資源管理模塊和 Trace任務調度模塊的命令,調用指定的遠程的Trace采集工具,通過網絡通信模塊發給遠 程的所述Trace采集單元,并接收來自網絡的反饋后再發給上層調用者。
所述Trace采集單元的工作過程如下若Trace采集控制模塊發出收集文件I/OTrace的命令,過程如下(1)Trace采集控制模塊發出收集文件I/OTrace的命令(2)文件I/O采集模塊截獲文件系統對文件的讀寫I/O請求包,從請求包中獲取讀寫的 信息,并將這些信息保存到一個I/O Trace緩沖池中模塊中;(3)TraCe后臺回寫模塊根據預定策略將I/OTrace緩沖池中的信息寫入Trace日志文 件,并將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元;若Trace采集控制模塊發出收集塊I/OTrace的命令,過程如下(1)Trace采集控制模塊發出收集塊I/OTrace的命令(2)塊I/O采集模塊截獲塊設備層的I/O請求包,并發到I/OTrace緩沖池中;(3)TraCe后臺回寫模塊根據預定策略,將I/OTrace緩沖池中的信息寫入Trace日 志文件,并將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單兀。
2、所述Trace任務調度模塊對導入Trace模塊、生成Trace模塊進行調用,讀入并 分析所述Trace任務,將獲取的Trace任務記錄按指定格式輸出到文件。
3、所述Trace任務調度模塊對重放代理模塊的調用過程如下接收Trace資源管 理模塊和Trace任務調度模塊的命令,調用指定的遠程的Trace重放工具,通過網絡通信模 塊發給遠程的所述Trace重放單元,收到來自網絡的反饋后再發給上層調用者。
所述Trace重放單元的過程如下(a)所述Trace重放控制臺模塊發出的命令為重放文件I/O Trace時, 步驟1 所述Trace重放控制臺模塊發出重放文件I/O Trace的命令; 步驟2 所述Trace分析器模塊根據所述Trace重放控制臺命令從所述I/OTrace收集 與重放控制單元獲取指定的Trace記錄并進行分析,構造相應的I/O請求包,發到時間尺度 調整模塊;步驟3 時間尺度調整模塊根據用戶指令對I/O請求包的時間尺度進行調整,調整后的 請求包發送到Trace重放模塊;步驟4 所述Trace重放模塊根據I/O請求包的類型,將其發至文件I/O重放模塊; 步驟5 文件I/O重放模塊將I/O請求包發給文件系統的相應模塊; 步驟6 性能統計模塊根據Trace重放模塊的反饋信息,統計Trace的性能并給出性能 統計表。
(b)所述Trace重放控制臺模塊發出的命令為重放塊I/O Trace時; 步驟1 所述Trace重放控制臺模塊發出重放文件I/O Trace的命令;步驟2 所述Trace分析器模塊根據所述Trace重放控制臺命令從所述I/OTrace收集 與重放控制單元獲取指定的Trace記錄并進行分析,構造相應的I/O請求包,發到時間尺度 調整模塊;步驟3 時間尺度調整模塊根據用戶指令對I/O請求包的時間尺度進行調整,調整后的 請求包發送到Trace重放模塊;步驟4 所述Trace重放模塊根據I/O請求包的類型,將其發至文件I/O重放模塊; 步驟5 文件I/O重放模塊將I/O請求包發給文件系統的相應模塊; 步驟6 性能統計模塊根據Trace重放模塊的反饋信息,統計Trace的性能并給出性能 統計表。
4、所述Trace任務調度模塊對性能分析模塊進行調用,對各節點的性能統計模塊 反饋上來的性能統計表進行分析整理,生成性能報告。
顯然,上述實施例僅是為清楚地說明所作的舉例,并非對實施方式的限定。對于 所屬領域的普通技術人員來說,在上述說明的基礎上還可以做出其它不同形式的變化或變 動。這里無需也無法對所有的實施方式予以窮舉。而由此所引伸出的顯而易見的變化或變 動仍處于本發明創造的保護范圍之中。1權利要求
1. 一種分布式環境下實現I/OTrace收集回放的系統,其特征在于,包括1/0 Trace收 集與重放控制單元、I/O Trace采集單元、I/O Trace重放單元;所述I/O Trace收集與重 放控制單元工作在服務器端,所述I/O Trace采集單元和所述I/O Trace重放單元工作在 客戶端,(1)I/O Trace收集與重放控制單元,包括用戶界面模塊,提供針對整個系統的全局和單個節點的統一配置管理界面,方便用戶 集中管理Trace的采集與重放;網絡通信模塊,通過網絡與分布式系統中的I/OTrace采集單元和I/OTrace重放單元 進行通信;導入腳本模塊,用于讀入指定的Trace任務腳本;腳本分析模塊,分析讀入的所述Trace任務腳本中的任務,生成Trace任務; 導入Trace模塊,讀入并分析所述Trace任務;生成Trace模塊,將所述導入Trace模塊獲取的Trace任務按指定格式輸出到文件; Trace任務調度模塊,根據所述腳本分析模塊中的所述Trace任務或者根據用戶界面 接收到的命令,對采集代理模塊、重放代理模塊、導入Trace模塊、生成Trace模塊、性能分 析模塊進行調度,完成相關任務;Trace資源管理模塊,用于對系統中所有Trace收集與重放工具進行管理,方便Trace 任務調度模塊對Trace工具的遠程調度;性能分析模塊,對各節點反饋上來的性能報告進行分析整理,生成性能報告; 采集代理模塊,接收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的遠 程的Trace采集工具,通過網絡通信模塊發給遠程的所述Trace采集單元,并接收來自網絡 的反饋后再發給上層調用者;重放代理模塊,接收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的 遠程的Trace重放工具,通過網絡通信模塊發給遠程的所述Trace重放單元,收到來自網絡 的反饋后再發給上層調用者;(2)I/O Trace采集單元,包括Trace采集控制模塊,為用戶配置管理所述I/O Trace采集單元提供接口 ; I/O Trace緩沖池模塊,用于緩存I/O Trace的請求;文件I/O采集模塊,用于截獲文件系統對文件的讀寫I/O請求包,從請求包中獲取讀寫 的信息,并將這些信息保存到一個I/O Trace緩沖池中;塊I/O采集模塊,用于截獲塊設備的讀寫I/O請求包,從請求包中獲取讀寫的信息,并 將這些信息保存到一個I/O Trace緩沖池中;Trace后臺回寫模塊,將I/O Trace緩沖池中的信息寫入Trace日志文件,并且將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元;網絡通信模塊,用于與所述I/O Trace收集與重放控制單元通過網絡進行通信;(3)I/O Trace重放單元,包括文件I/O重放模塊,完成文件I/O重放的具體動作; 塊I/O重放模塊,完成塊I/O重放的具體動作;Trace分析器模塊,讀取Trace文件,分析Trace的格式,將需要的信息組織成I/O請求數據結構,然后發給時間尺度調整模塊;時間尺度調整模塊,用于按照用戶設置的策略對收到的I/O請求數據結構進行重新調 整,最后交給Trace重放模塊;Trace重放模塊,用于根據Trace的類型來發給操作系統調用對應的I/O重放模塊的指令;性能統計模塊,根據"Trace重放模塊的反饋信息,統計"Trace的性能并給出報告;Trace重放控制臺模塊,提供用戶進行操作控制使用;網絡通信模塊,用于與所述I/O Trace收集與回放總控制單元進行通信。
2.根據權利要求1所述的分布式環境下實現I/OTrace收集回放的系統,其特征在于, 所述Trace重放模塊中Trace的類型包括文件Trace和塊"Trace,對應的I/O重放模塊為文 件I/O重放模塊和塊I/O重放模塊。
3.一種使用權利要求1-2的分布式環境下實現I/OTrace收集回放的系統的方法,其特 征在于,包括如下步驟(1)用戶通過用戶界面模塊對系統全局和單個節點進行統一配置和管理;(2)由導入腳本模塊讀入指定的Trace任務腳本,由腳本分析模塊分析所述Trace任務 腳本中的任務,生成Trace任務;(3)根據所述腳本分析模塊中的所述Trace任務或者根據用戶界面接收到的命令,所 述Trace任務調度模塊對采集代理模塊、導入Trace模塊、生成Trace模塊、重放代理模塊、 性能分析模塊進行調度,完成相關任務。
4.根據權利要求3所述的分布式環境下實現I/OTrace收集回放的方法,其特征在于 在所述步驟(3)中,Trace任務調度模塊對采集代理模塊的調用過程如下接收Trace資源 管理模塊和Trace任務調度模塊的命令,調用指定的遠程的Trace采集工具,通過網絡通信 模塊發給遠程的所述Trace采集單元,并接收來自網絡的反饋后再發給上層調用者。
5.根據權利要求3或4所述的分布式環境下實現I/OTrace收集回放的方法,其特征在 于所述Trace采集單元的工作過程如下若Trace采集控制模塊發出收集文件I/OTrace的命令,過程如下(1)Trace采集控制模塊發出收集文件I/OTrace的命令;(2)文件I/O采集模塊截獲文件系統對文件的讀寫I/O請求包,從請求包中獲取讀寫的 信息,并將這些信息保存到一個I/O Trace緩沖池中模塊中;(3)TraCe后臺回寫模塊根據預定策略將I/OTrace緩沖池中的信息寫入Trace日志文 件,并將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元;若Trace采集控制模塊發出收集塊I/OTrace的命令,過程如下(1)Trace采集控制模塊發出收集塊I/OTrace的命令(2)塊I/O采集模塊截獲塊設備層的I/O請求包,并發到I/OTrace緩沖池中;(3)TraCe后臺回寫模塊根據預定策略,將I/OTrace緩沖池中的信息寫入Trace日 志文件,并將I/O Trace緩沖池中的信息通過網絡寫回到所述I/OTrace收集與重放控制單元。
6.根據權利要求5所述的分布式環境下實現I/OTrace收集回放的方法,其特征在于 在所述步驟(3)中,所述Trace任務調度模塊對重放代理模塊的調用過程如下接收Trace資源管理模塊和Trace任務調度模塊的命令,調用指定的遠程的Trace重放工具,通過網絡 通信模塊發給遠程的所述Trace重放單元,收到來自網絡的反饋后再發給上層調用者。
7.根據權利要求3或4或5或6所述的分布式環境下實現I/OTrace收集回放的方法, 其特征在于所述Trace重放單元的過程如下(a)所述Trace重放控制臺模塊發出的命令為重放文件I/OTrace時,步驟1 所述Trace重放控制臺模塊發出重放文件I/O Trace的命令;步驟2 所述Trace分析器模塊根據所述Trace重放控制臺命令從所述I/OTrace收集 與重放控制單元獲取指定的Trace記錄并進行分析,構造相應的I/O請求包,發到時間尺度 調整模塊;步驟3 時間尺度調整模塊根據用戶指令對I/O請求包的時間尺度進行調整,調整后的 請求包發送到Trace重放模塊;步驟4 所述Trace重放模塊根據I/O請求包的類型,將其發至文件I/O重放模塊;步驟5 文件I/O重放模塊將I/O請求包發給文件系統的相應模塊;(b)所述Trace重放控制臺模塊發出的命令為重放塊I/OTrace時;步驟1 所述Trace重放控制臺模塊發出重放文件I/O Trace的命令;步驟2 所述Trace分析器模塊根據所述Trace重放控制臺命令從所述I/OTrace收集 與重放控制單元獲取指定的Trace記錄并進行分析,構造相應的I/O請求包,發到時間尺度 調整模塊;步驟3 時間尺度調整模塊根據用戶指令對I/O請求包的時間尺度進行調整,調整后的 請求包發送到Trace重放模塊;步驟4 所述Trace重放模塊根據I/O請求包的類型,將其發至文件I/O重放模塊;步驟5 文件I/O重放模塊將I/O請求包發給文件系統的相應模塊。
8.根據權利要求3所述的分布式環境下實現I/OTrace收集回放的方法,其特征在于 在所述步驟(4)中,所述Trace任務調度模塊對導入Trace模塊、生成Trace模塊進行調用, 讀入并分析所述Trace任務,將獲取的Trace任務記錄按指定格式輸出到文件。
9.根據權利要求3或4或6或8所述的分布式環境下實現I/OTrace收集回放的方法, 其特征在于在所述步驟(3)中,所述Trace任務調度模塊對性能分析模塊進行調用,對各 節點反饋上來的性能報告進行分析整理,生成性能報告。
全文摘要
一種分布式環境下實現I/OTrace收集回放的系統,包括I/OTrace收集與重放控制單元、I/OTrace采集單元、I/OTrace重放單元;所述I/OTrace收集與重放控制單元主要是實現測試機節點的管理,所述I/OTrace采集單元和I/OTrace重放單元主要實現獲取主機信息向總控臺進行注冊,接收總控臺的控制命令,執行相應的Trace收集與回放工作,解決了現有技術中I/O請求不可控,生成的Trace對存儲系統的評價不方便,從而提出一種可以I/O請求可控,便于存儲系統設計和評價的I/OTrace收集回放系統。
文檔編號G06F3/06GK102043594SQ201010618378
公開日2011年5月4日 申請日期2010年12月31日 優先權日2010年12月31日
發明者萬繼光, 呂睿, 吳非, 譚志虎, 陳伯江, 陳維梁, 馬駿 申請人:中科海量存儲技術(北京)有限公司