[發明專利]一種快速全量解析STDF文件的方法和設備有效
| 申請號: | 202111023613.3 | 申請日: | 2021-09-02 |
| 公開(公告)號: | CN113468124B | 公開(公告)日: | 2021-11-30 |
| 發明(設計)人: | 徐祖峰;丁小果;張永健 | 申請(專利權)人: | 江蘇泰治科技股份有限公司 |
| 主分類號: | G06F16/16 | 分類號: | G06F16/16;G06F16/172;G06F16/182 |
| 代理公司: | 南京蘇高專利商標事務所(普通合伙) 32204 | 代理人: | 李淑靜 |
| 地址: | 210012 江蘇省南京市雨*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 快速 解析 stdf 文件 方法 設備 | ||
1.一種快速全量解析STDF文件的方法,其特征在于,包括以下步驟:
根據STDF文件大小,動態生成分塊數量,并基于分塊數量對STDF文件進行劃分;
用文件大小除以分塊數量并取整得到一個偏移量,按照該偏移量對分塊逐個進行偏移,依次得到每個分塊的初始偏移位置;
對各分塊的初始偏移位置逐一進行第一次調整,直到確認為一個正確的記錄開始位置;
對第一次調整獲得的偏移位置進行第二次調整,確保連續有關聯的記錄在同一個分塊中;
根據每個分塊的正確的偏移位置,采用分布式計算引擎,對各個分塊進行并行解析;
其中,對各分塊的初始偏移位置逐一進行第一次調整包括:
從初始偏移位置開始,加載65540*3個字節;
從當前位置讀取4個字節進行頭部解析,判斷里面的記錄類型是否是有效的類型,如果不是有效的類型,向后移動1個字節,繼續從當前位置讀取4個字節進行有效類型判斷;如果是有效的類型,則判斷是否已經有2個連續的完整記錄;
如果沒有2個連續的完整記錄,向后移動1個字節,繼續從當前位置讀取4個字節進行有效類型判斷;如果已經有2個連續的完整記錄,輸出正確的偏移位置值。
2.根據權利要求1所述的快速全量解析STDF文件的方法,其特征在于,對第一次調整獲得的偏移位置進行第二次調整包括:
從第一次調整輸出的偏移位置開始,每次加載65536*10個字節;
從加載的數據中讀取1個記錄,如果讀取失敗,向后偏移65536*10個字節繼續加載;
判斷讀出來的記錄類型是否滿足以下條件之一:
當前記錄是PIR且前一個記錄不是PIR,或者
當前記錄不是PRR且前一個記錄是PRR;
如果條件不滿足,繼續從加載的數據中讀取下一個記錄進行類型判斷;如果條件滿足,輸出最終的偏移位置值。
3.根據權利要求1所述的快速全量解析STDF文件的方法,其特征在于,采用分布式計算引擎,對各個分塊進行并行解析包括:
對于分布式計算引擎,在主程序中分配并行分區任務數,將其值設置為分塊數量,并根據分區任務數設定需要的集群資源;
每個分區任務內,從第二次調整輸出的偏移位置開始加載文件內容;
每個分區任務內,對加載的文件內容進行解析,生成相應的記錄數據,并存儲到對應的存儲系統中;
所有分區任務都完成后,由分布式計算引擎的主程序負責最終狀態的更新,將數據交付給下游業務應用系統使用。
4.根據權利要求3所述的快速全量解析STDF文件的方法,其特征在于,采用分布式計算引擎,對各個分塊進行并行解析還包括:
如果在分區任務處理過程中出現異常,分布式計算引擎自動進行重試,根據每個分塊的正確的偏移位置繼續執行加載文件內容和進行解析、存儲。
5.一種快速全量解析STDF文件的設備,其特征在于,包括:
文件分塊模塊,用于根據STDF文件大小,動態生成分塊數量,并基于分塊數量對STDF文件進行劃分;
初始偏移計算模塊,用于用文件大小除以分塊數量并取整得到一個偏移量,按照該偏移量對分塊逐個進行偏移,依次得到每個分塊的初始偏移位置;
偏移位置第一調整模塊,用于對各分塊的初始偏移位置逐一進行第一次調整,直到確認為一個正確的記錄開始位置;
偏移位置第二調整模塊,用于對第一次調整獲得的偏移位置進行第二次調整,確保連續有關聯的記錄在同一個分塊中;
分布式解析模塊,用于根據每個分塊的正確的偏移位置,對各個分塊進行并行解析;
其中,所述偏移位置第一調整模塊包括:
第一加載單元,用于從初始偏移位置開始,加載65540*3個字節;
第一分析處理單元,用于從當前位置讀取4個字節進行頭部解析,判斷里面的記錄類型是否是有效的類型,如果不是有效的類型,向后移動1個字節,并重新讀取4個字節進行有效類型判斷;如果是有效的類型,判斷是否已經有2個連續的完整記錄;如果沒有2個連續的完整記錄,向后移動1個字節,并重新讀取4個字節進行有效類型判斷;
第一輸出單元,用于當第一分析處理單元確定已經有2個連續的完整記錄時,輸出正確的偏移位置值。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于江蘇泰治科技股份有限公司,未經江蘇泰治科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111023613.3/1.html,轉載請聲明來源鉆瓜專利網。





