[發明專利]一種數據文件組裝方法、裝置、設備及儲存介質在審
| 申請號: | 201910854278.8 | 申請日: | 2019-09-10 |
| 公開(公告)號: | CN110569308A | 公開(公告)日: | 2019-12-13 |
| 發明(設計)人: | 伍深 | 申請(專利權)人: | 深圳樂信軟件技術有限公司 |
| 主分類號: | G06F16/27 | 分類號: | G06F16/27;G06F9/48 |
| 代理公司: | 11332 北京品源專利代理有限公司 | 代理人: | 孟金喆 |
| 地址: | 518000 廣東省深圳市南山區*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 讀取 數據流 數據文件 隊列數據 預設數據 線程 預設 阻塞 隊列 寫入 組裝 第一線 存儲介質 單線程 數據庫 | ||
本發明實施例公開了一種數據文件組裝方法、裝置、設備及存儲介質。該方法包括:通過第一線程從數據庫中讀取預設數據;通過第一線程將讀取到的預設數據寫入到預設阻塞隊列中;通過第二線程從預設阻塞隊列中讀取隊列數據;通過第二線程將讀取到的隊列數據寫入數據文件。本發明實施例實現了高效地組裝數據文件并且減少了單線程處理中不斷打開數據流和關閉數據流的數據流開銷。
技術領域
本發明實施例涉及數據處理技術,尤其涉及一種數據文件組裝方法、裝置、設備及儲存介質。
背景技術
兩個業務系統之間的大型數據交互都先把數據組裝成文件,以文件的形式進行傳輸,以保證數據的完整性。
現有技術中,業務系統每天會生成多個數據文件,處理方式是先批次去讀數據庫里面的數據,再進行處理,最后再把這一批的數據寫到文件中,然后按照以上方式對數據庫里面的數據逐批處理,直到最后一批數據。
但是這種數據文件的組裝方法存在如下的缺陷:首先,用單線程去讀數據,再寫入數據文件,而單線程處理比較耗時,導致時效性差。其次,單線程分批次的執行寫文件,每執行一次寫文件就會有一次打開數據流和關閉數據流的開銷,導致性能低。
發明內容
本發明實施例提供一種數據文件組裝方法、裝置、設備及儲存介質,實現了高效地組裝數據文件并且減少了數據流開銷。
第一方面,本發明實施例提供了一種數據文件組裝方法,包括:
通過第一線程從數據庫中讀取預設數據;
通過所述第一線程將讀取到的所述預設數據寫入到預設阻塞隊列中;
通過第二線程從所述預設阻塞隊列中讀取隊列數據;
通過所述第二線程將讀取到的所述隊列數據寫入數據文件。
第二方面,本發明實施例還提供了一種數據文件組裝裝置,包括:
預設數據讀取模塊,用于通過第一線程從數據庫中讀取預設數據;
阻塞隊列數據寫入模塊,用于通過所述第一線程將讀取到的所述預設數據寫入到預設阻塞隊列中;
隊列數據讀取模塊,用于通過第二線程從所述預設阻塞隊列中讀取隊列數據;
數據寫入模塊,用于通過所述第二線程將讀取到的所述隊列數據寫入數據文件。
第三方面,本發明實施例還提供了一種設備,所述設備包括:
一個或多個處理器;
存儲器,用于存儲一個或多個程序,
當所述一個或多個程序被所述一個或多個處理器執行,使得所述一個或多個處理器實現如本發明任意實施例所提供的數據文件組裝方法。
第四方面,本發明實施例還提供了一種包含計算機可執行指令的存儲介質,所述計算機可執行指令在由計算機處理器執行時用于執行如本發明任意實施例所提供的數據文件組裝方法。
本發明實施例通過第一線程從數據庫中讀取預設數據,并將第一線程讀取到的預設數據寫入到預設阻塞隊列中;然后通過第二線程從預設阻塞隊列中讀取數據,并將第二線程讀取帶的隊列數據寫入數據文件中。通過分線程處理,實現了高效地組裝數據文件并且減少了單線程處理中不斷打開數據流和關閉數據流的數據流開銷。
附圖說明
圖1是本發明實施例一中的一種數據文件組裝方法的流程圖;
圖2是本發明實施例二中的一種數據文件組裝方法的流程圖;
圖3是本發明實施例二中的第一線程和第二線程的具體流程圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳樂信軟件技術有限公司,未經深圳樂信軟件技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910854278.8/2.html,轉載請聲明來源鉆瓜專利網。





