System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及計算機?,尤其涉及一種文件加載方法、裝置、電子設備和存儲介質。
技術介紹
1、隨著軟件系統的日益復雜,其性能分析的需求也日益增長。trace?event?format(簡稱tef,一種通用的時序事件追蹤格式)?的json文件作為性能數據的主要載體,因其能夠詳細記錄事件的時間線、持續時間和依賴關系,成為了性能調優不可或缺的工具。這些文件通常包含成千上萬條記錄,詳細描繪了系統在不同階段的運行情況,通過相應的可視化工具打開這些文件,開發人員可以直觀地看到系統在處理各種任務時的性能表現,從而識別潛在的性能問題進行優化。
2、然而,在加載和處理這些大型tef的json文件時,往往受限于記錄之間的復雜依賴關系,特別是那些具有起點和終點的時序事件,這些事件間的順序性要求導致難以有效地并行處理json文件中的記錄,只能逐條記錄處理。即便在硬件資源充足的情況下,由于無法充分利用并行計算的優勢,加載和解析速度依然緩慢,嚴重影響了性能分析的效率。
技術實現思路
1、本專利技術提供一種文件加載方法、裝置、電子設備和存儲介質,用以解決相關技術中文件加載并行度低、加載速度緩慢的缺陷。
2、本專利技術提供一種文件加載方法,包括:
3、基于待加載文件的數據結構,將所述待加載文件分割成多個物理塊,并對各物理塊進行并行解析,提取所述各物理塊中各記錄的相關信息,所述相關信息包括時間信息、編號信息和位置信息;
4、基于各記錄的編號信息和時間信息,對所述各記錄進
5、基于所述各記錄的時間信息,確定所述各記錄的全局時間順序,并應用所述全局時間順序,將任一時間樹切分為多個邏輯塊;
6、基于各邏輯塊中各記錄的編號信息和位置信息,確定所述各邏輯塊中各記錄與所述各物理塊中各記錄之間的映射關系,并應用所述映射關系,對所述各邏輯塊進行并行加載。
7、根據本專利技術提供的一種文件加載方法,任一記錄的編號信息包括分塊編號、記錄編號和線程編號,所述分塊編號是指所述任一記錄所屬的所述物理塊的編號,所述記錄編號是指所述任一記錄在所述物理塊中的編號,所述線程編號是指所述任一記錄所對應的線程的編號。
8、根據本專利技術提供的一種文件加載方法,所述基于各記錄的編號信息和時間信息,對所述各記錄進行分類和排序,得到多個時間樹,包括:
9、基于所述各記錄所屬的事件類型和所述各記錄的線程編號,對所述各記錄進行分類,得到多個記錄集合;
10、基于任一記錄集合中各記錄的時間信息,對所述任一記錄集合中的各記錄進行排序,得到所述任一記錄集合對應的時間樹。
11、根據本專利技術提供的一種文件加載方法,任一邏輯塊中的各記錄分為主要記錄和預取記錄,所述基于各邏輯塊中各記錄的編號信息和位置信息,確定所述各邏輯塊中各記錄與所述各物理塊中各記錄之間的映射關系,并應用所述映射關系,對所述各邏輯塊進行并行加載,包括:
12、基于所述任一邏輯塊中所述主要記錄的分塊編號、記錄編號和位置信息,確定所述主要記錄與所述各物理塊中各記錄之間的映射關系,并從所述映射關系所對應的所述物理塊中讀取所述主要記錄的內容;
13、基于所述任一邏輯塊中所述各記錄的時間信息,對所述主要記錄的內容和所述預取記錄的內容進行排序并整合,得到所述任一邏輯塊對應的記錄序列,所述預取記錄的內容是預先基于所述任一邏輯塊中所述預取記錄的分塊編號、記錄編號和位置信息從所述各物理塊中讀取得到的。
14、根據本專利技術提供的一種文件加載方法,所述任一邏輯塊中主要記錄和預取記錄的確定步驟包括:
15、基于所述任一邏輯塊中各記錄的分塊編號,從所述各物理塊中確定出所述任一邏輯塊對應的主物理塊;
16、將所述任一邏輯塊中分塊編號與所述主物理塊的編號相同的各記錄,確定為所述任一邏輯塊的主要記錄;
17、將所述任一邏輯塊中分塊編號與所述主物理塊的編號不相同的各記錄,確定為所述任一邏輯塊的預取記錄。
18、根據本專利技術提供的一種文件加載方法,所述各記錄所屬的事件類型包括第一類型和第二類型,所述各邏輯塊中各記錄的事件類型均為所述第一類型;
19、所述方法還包括:
20、基于所述多個時間樹,對所述各物理塊中事件類型為第二類型的各記錄進行加載處理。
21、根據本專利技術提供的一種文件加載方法,所述基于所述多個時間樹,對所述各物理塊中事件類型為第二類型的各記錄進行加載處理,包括:
22、將任一物理塊中事件類型為第二類型的任一記錄確定為第二類型事件,并獲取所述第二類型事件的端點信息,所述端點信息包括各端點的時間信息、記錄編號和線程編號,所述各端點包括起點和終點;
23、將所述第二類型事件的各端點對應的線程編號與所述多個時間樹對應的線程編號進行匹配,確定所述第二類型事件的各端點分別對應的時間樹;
24、基于所述第二類型事件的各端點的時間信息、記錄編號以及所述各端點分別對應的時間樹,確定所述第二類型事件的連線數據。
25、根據本專利技術提供的一種文件加載方法,所述基于所述第二類型事件的各端點的時間信息、記錄編號以及所述各端點分別對應的時間樹,確定所述第二類型事件的連線數據,包括:
26、基于所述第二類型事件的各端點的時間信息,確定連線兩端的橫坐標;
27、基于所述第二類型事件的各端點的時間信息和記錄編號,在所述各端點對應的時間樹中確定所述各端點的層級,并應用所述各端點的層級以及所述各端點對應的時間樹,確定連線兩端的縱坐標;
28、基于所述連線兩端的橫坐標和縱坐標,得到所述第二類型事件的連線數據。
29、本專利技術還提供一種文件加載裝置,包括:
30、物理分塊單元,用于基于待加載文件的數據結構,將所述待加載文件分割成多個物理塊,并對各物理塊進行并行解析,提取所述各物理塊中各記錄的相關信息,所述相關信息包括時間信息、編號信息和位置信息;
31、時間樹構建單元,用于基于各記錄的編號信息和時間信息,對所述各記錄進行分類和排序,得到多個時間樹;
32、邏輯分塊單元,用于基于所述各記錄的時間信息,確定所述各記錄的全局時間順序,并應用所述全局時間順序,將任一時間樹切分為多個邏輯塊;
33、并行加載單元,用于基于各邏輯塊中各記錄的編號信息和位置信息,確定所述各邏輯塊中各記錄與所述各物理塊中各記錄之間的映射關系,并應用所述映射關系,對所述各邏輯塊進行并行加載。
34、本專利技術還提供一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現如上述任一種所述文件加載方法。
35、本專利技術還提供一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現如上述任一種所述文件加載方法。
36、本專利技術還提供一種計算機本文檔來自技高網...
【技術保護點】
1.一種文件加載方法,其特征在于,包括:
2.根據權利要求1所述的文件加載方法,其特征在于,任一記錄的編號信息包括分塊編號、記錄編號和線程編號,所述分塊編號是指所述任一記錄所屬的所述物理塊的編號,所述記錄編號是指所述任一記錄在所述物理塊中的編號,所述線程編號是指所述任一記錄所對應的線程的編號。
3.根據權利要求2所述的文件加載方法,其特征在于,所述基于各記錄的編號信息和時間信息,對所述各記錄進行分類和排序,得到多個時間樹,包括:
4.根據權利要求2所述的文件加載方法,其特征在于,任一邏輯塊中的各記錄分為主要記錄和預取記錄,所述基于各邏輯塊中各記錄的編號信息和位置信息,確定所述各邏輯塊中各記錄與所述各物理塊中各記錄之間的映射關系,并應用所述映射關系,對所述各邏輯塊進行并行加載,包括:
5.根據權利要求4所述的文件加載方法,其特征在于,所述任一邏輯塊中主要記錄和預取記錄的確定步驟包括:
6.根據權利要求1至5任一項所述的文件加載方法,其特征在于,所述各記錄所屬的事件類型包括第一類型和第二類型,所述各邏輯塊中各記錄的事件類型均
7.根據權利要求6所述的文件加載方法,其特征在于,所述基于所述多個時間樹,對所述各物理塊中事件類型為第二類型的各記錄進行加載處理,包括:
8.根據權利要求7所述的文件加載方法,其特征在于,所述基于所述第二類型事件的各端點的時間信息、記錄編號以及所述各端點分別對應的時間樹,確定所述第二類型事件的連線數據,包括:
9.一種電子設備,包括存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現如權利要求1至8任一項所述文件加載方法。
10.一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1至8任一項所述文件加載方法。
...【技術特征摘要】
1.一種文件加載方法,其特征在于,包括:
2.根據權利要求1所述的文件加載方法,其特征在于,任一記錄的編號信息包括分塊編號、記錄編號和線程編號,所述分塊編號是指所述任一記錄所屬的所述物理塊的編號,所述記錄編號是指所述任一記錄在所述物理塊中的編號,所述線程編號是指所述任一記錄所對應的線程的編號。
3.根據權利要求2所述的文件加載方法,其特征在于,所述基于各記錄的編號信息和時間信息,對所述各記錄進行分類和排序,得到多個時間樹,包括:
4.根據權利要求2所述的文件加載方法,其特征在于,任一邏輯塊中的各記錄分為主要記錄和預取記錄,所述基于各邏輯塊中各記錄的編號信息和位置信息,確定所述各邏輯塊中各記錄與所述各物理塊中各記錄之間的映射關系,并應用所述映射關系,對所述各邏輯塊進行并行加載,包括:
5.根據權利要求4所述的文件加載方法,其特征在于,所述任一邏輯塊中主要記錄和預取記錄的確定步驟包括:
...【專利技術屬性】
技術研發人員:請求不公布姓名,請求不公布姓名,請求不公布姓名,
申請(專利權)人:珠海壁仞集成電路有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。