[發(fā)明專利]多線程數(shù)據(jù)文件處理方法、設(shè)備和介質(zhì)在審
| 申請?zhí)枺?/td> | 202211320758.4 | 申請日: | 2022-10-26 |
| 公開(公告)號: | CN115756828A | 公開(公告)日: | 2023-03-07 |
| 發(fā)明(設(shè)計)人: | 王佳 | 申請(專利權(quán))人: | 中國建設(shè)銀行股份有限公司上海市分行 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F9/48;G06F16/16 |
| 代理公司: | 北京市金杜律師事務(wù)所 11256 | 代理人: | 羅婷婷 |
| 地址: | 200120 上*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 多線程 數(shù)據(jù)文件 處理 方法 設(shè)備 介質(zhì) | ||
本公開的實施例涉及多線程數(shù)據(jù)文件處理方法、設(shè)備和介質(zhì)。根據(jù)該方法,響應(yīng)于接收到對待處理數(shù)據(jù)文件執(zhí)行處理任務(wù)的操作請求,啟動主線程,其中主線程被配置為在被啟動后執(zhí)行以下操作:基于機(jī)器性能確定文件切片大小以及最大空閑任務(wù)線程數(shù);基于文件切片大小為待處理數(shù)據(jù)文件逐個地生成文件切片節(jié)點,以供添加到待處理切片節(jié)點列表中;如果確定線程池存在一個或多個空閑任務(wù)線程,將待處理切片節(jié)點列表中接下來待處理的一個或多個文件切片節(jié)點分別分派給該一個或多個空閑任務(wù)線程,以啟動該一個或多個空閑任務(wù)線程來分別對所分派的相應(yīng)文件切片節(jié)點執(zhí)行所述處理任務(wù)。由此,能夠極大地提高對數(shù)據(jù)文件的處理效率。
技術(shù)領(lǐng)域
本公開的實施例總體涉及文件處理領(lǐng)域,并且更具體地涉及一種多線程數(shù)據(jù)文件處理方法、設(shè)備和介質(zhì)。
背景技術(shù)
在用計算機(jī)進(jìn)行諸如數(shù)據(jù)采集、數(shù)據(jù)準(zhǔn)備和數(shù)據(jù)遷移等(尤其是涉及金融領(lǐng)域數(shù)據(jù)的數(shù)據(jù)采集、數(shù)據(jù)準(zhǔn)備和數(shù)據(jù)遷移等)的過程中,經(jīng)常需要對相關(guān)的數(shù)據(jù)文件進(jìn)行一定的處理。例如,對于包含敏感數(shù)據(jù)的數(shù)據(jù)文件,需要將該數(shù)據(jù)文件加密保存在特殊介質(zhì)上后再物理提交到指定的數(shù)據(jù)采集點。另外,在需要將來自不同數(shù)據(jù)源的各種數(shù)據(jù)文件保存到某個數(shù)據(jù)庫中時,由于這些數(shù)據(jù)文件的格式(例如輸出格式)和大小通常各不相同,因此需要對這些數(shù)據(jù)文件進(jìn)行一定的數(shù)據(jù)格式處理和加工后才能最終入庫。
目前,通常使用Linux環(huán)境下的awk文件處理工具或者Windows環(huán)境下的諸如UltraEdit之類的文本分析器來對待處理數(shù)據(jù)文件進(jìn)行處理,這些工具都是將待處理數(shù)據(jù)文件中包括的記錄按行的順序讀入計算設(shè)備,并逐行對其進(jìn)行處理。例如,awk文件處理工具,該工具工作順序為讀入待處理數(shù)據(jù)文件的當(dāng)前行記錄,利用分隔符(默認(rèn)為空格)對當(dāng)前行記錄進(jìn)行字段分解以得到該行記錄的多個字段(也稱為域),然后對各字段進(jìn)行處理以得到所需結(jié)果,并在當(dāng)前行記錄處理完之后再讀入待處理數(shù)據(jù)文件的下一行記錄并按相同的方法對該行記錄進(jìn)行處理,直至該待處理數(shù)據(jù)文件的所有行均被處理完畢為止。由此可見,awk工具是串行文件處理工具,而無法并行處理數(shù)據(jù)文件,其對大數(shù)據(jù)文件的處理效率尤其低下。因此,這些現(xiàn)有的文件處理工具所采用的文件處理方法效率低下,對于例如GB或TB量級的大文件而言尤其如此。
由此,有必要提供一種文件處理技術(shù),使得有助于以更快的速度完成對文件(尤其是GB或TB或更高量級的大數(shù)據(jù)文件)的處理。
發(fā)明內(nèi)容
針對上述問題,本公開提供了一種多線程數(shù)據(jù)文件處理方法、設(shè)備和介質(zhì),使得能夠極大地提高文件(尤其是大數(shù)據(jù)文件)的處理效率。
根據(jù)本公開的第一方面,提供了一種多線程數(shù)據(jù)文件處理方法,所述方法包括:響應(yīng)于接收到對包括多行記錄的待處理數(shù)據(jù)文件執(zhí)行處理任務(wù)的操作請求,啟動主線程,所述主線程被配置為在啟動后執(zhí)行以下操作:基于機(jī)器性能確定文件切片大小以及最大空閑任務(wù)線程數(shù);基于所述文件切片大小為所述待處理數(shù)據(jù)文件逐個地生成文件切片節(jié)點,以供添加到待處理切片節(jié)點列表中;如果確定線程池存在一個或多個空閑任務(wù)線程,將所述待處理切片節(jié)點列表中接下來待處理的一個或多個文件切片節(jié)點分別分派給所述一個或多個空閑任務(wù)線程,以啟動所述一個或多個空閑任務(wù)線程來分別對所分派的相應(yīng)文件切片節(jié)點執(zhí)行所述處理任務(wù),每一任務(wù)線程在完成所述處理任務(wù)后由線程池回收為空閑任務(wù)線程,所述一個或多個空閑任務(wù)線程的數(shù)目小于或等于所述最大空閑任務(wù)線程數(shù)。
根據(jù)本公開的第二方面,提供了一種計算設(shè)備,包括:至少一個處理器;以及與所述至少一個處理器通信連接的存儲器;所述存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,所述指令被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行本公開的第一方面的多線程數(shù)據(jù)文件處理方法。
在本公開的第三方面中,提供了一種存儲有計算機(jī)指令的非瞬時計算機(jī)可讀存儲介質(zhì),其中所述計算機(jī)指令用于使計算機(jī)執(zhí)行本公開的第一方面的多線程數(shù)據(jù)文件處理方法。
應(yīng)當(dāng)理解,本部分所描述的內(nèi)容并非旨在標(biāo)識本公開的實施例的關(guān)鍵或重要特征,也不用于限制本公開的范圍。本公開的其它特征將通過以下的說明書而變得容易理解。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國建設(shè)銀行股份有限公司上海市分行,未經(jīng)中國建設(shè)銀行股份有限公司上海市分行許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202211320758.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 多線程應(yīng)用系統(tǒng)的異常處理方法和異常處理裝置
- 一種面向片上網(wǎng)絡(luò)的多線程調(diào)度實現(xiàn)方法
- 基于計算機(jī)多線程多核顯微鏡細(xì)胞圖像快速掃描處理方法
- 一種基于同步鎖的多線程處理方法、終端以及存儲介質(zhì)
- 多線程并發(fā)處理系統(tǒng)及方法
- 海外控股估值流程控制方法、裝置、計算機(jī)設(shè)備及存儲介質(zhì)
- 讀數(shù)方法、電子裝置、計算機(jī)設(shè)備及存儲介質(zhì)
- 一種基于云平臺多線程調(diào)度的方法、系統(tǒng)、設(shè)備及介質(zhì)
- 一種基于云平臺的前端多線程調(diào)度方法和系統(tǒng)
- 多線程調(diào)度方法、裝置、電子設(shè)備及存儲介質(zhì)
- 嵌入式數(shù)據(jù)庫中數(shù)據(jù)恢復(fù)的方法和裝置
- 一種上報、獲得性能數(shù)據(jù)文件的方法及裝置
- 一種數(shù)據(jù)文件處理的方法、裝置及終端
- 一種數(shù)據(jù)文件播放方法及相關(guān)設(shè)備、系統(tǒng)
- 一種數(shù)據(jù)文件檢測方法和裝置
- 數(shù)據(jù)綜合采集方法及系統(tǒng)
- 一種多類型批量數(shù)據(jù)處理系統(tǒng)及其處理方法
- 數(shù)據(jù)文件的處理方法、裝置、系統(tǒng)和存儲介質(zhì)
- 嵌入式系統(tǒng)中文件數(shù)據(jù)未同步的檢測方法
- 數(shù)據(jù)操作方法、裝置和計算機(jī)可讀存儲介質(zhì)





