[發明專利]高效遍歷較大數據量集合的方法、系統、終端及存儲介質在審
| 申請號: | 201910734331.0 | 申請日: | 2019-08-09 |
| 公開(公告)號: | CN110554917A | 公開(公告)日: | 2019-12-10 |
| 發明(設計)人: | 馮立曉 | 申請(專利權)人: | 蘇州浪潮智能科技有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F9/48;G06F16/24 |
| 代理公司: | 37205 濟南舜源專利事務所有限公司 | 代理人: | 劉雪萍 |
| 地址: | 215100 江蘇省蘇州市吳*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 子線程 集合 大數據 子集合 常規應用程序 較大數據量 存儲介質 計算資源 快速處理 唯一對應 主線程 遍歷 服務器 終端 采集 輸出 合并 創建 | ||
1.一種高效遍歷較大數據量集合的方法,其特征在于,包括:
獲取當前服務器CPU核心數量;
根據所述CPU核心數量將大數據集合平均拆分為同等數量的子集合;
為每個子集合創建唯一對應的子線程,控制所述子線程執行對應子集合的處理任務;
采集所有子線程的計算結果,將所有計算結果合并后輸出至主線程。
2.根據權利要求1所述的方法,其特征在于,所述采集所有子線程的計算結果,包括:
獲取所有子線程執行進度;
若獲取到所有子線程均執行完成,則采集所有子線程的計算結果;
若獲取到子線程執行失敗信息,則返回主線程執行失敗提示。
3.根據權利要求1所述的方法,其特征在于,在采集所有子線程的計算結果之前,所述方法還包括:
確定所有子線程執行進度中存在執行完成的子線程,篩選出未執行完成的子線程中進度最少的子線程作為待均衡子線程;
將待均衡子線程的執行任務均分,并將均分后的執行任務分別下發至待均衡子線程和所述執行完成的子線程。
4.一種高效遍歷較大數據量集合的系統,其特征在于,包括:
數量獲取單元,配置用于獲取當前服務器CPU核心數量;
集合拆分單元,配置用于根據所述CPU核心數量將大數據集合平均拆分為同等數量的子集合;
線程創建單元,配置用于為每個子集合創建唯一對應的子線程,控制所述子線程執行對應子集合的處理任務;
結果輸出單元,配置用于采集所有子線程的計算結果,將所有計算結果合并后輸出至主線程。
5.根據權利要求4所述的系統,其特征在于,所述結果輸出單元包括:
進度獲取模塊,配置用于獲取所有子線程執行進度;
完成判定模塊,配置用于若獲取到所有子線程均執行完成,則采集所有子線程的計算結果;
失敗提示模塊,配置用于若獲取到子線程執行失敗信息,則返回主線程執行失敗提示。
6.根據權利要求4所述的系統,其特征在于,所述系統包括:
均衡觸發模塊,配置用于確定所有子線程執行進度中存在執行完成的子線程,篩選出未執行完成的子線程中進度最少的子線程作為待均衡子線程;
均衡執行模塊,配置用于將待均衡子線程的執行任務均分,并將均分后的執行任務分別下發至待均衡子線程和所述執行完成的子線程。
7.一種終端,其特征在于,包括:
處理器;
用于存儲處理器的執行指令的存儲器;
其中,所述處理器被配置為執行權利要求1-3任一項所述的方法。
8.一種存儲有計算機程序的計算機可讀存儲介質,其特征在于,該程序被處理器執行時實現如權利要求1-3中任一項所述的方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州浪潮智能科技有限公司,未經蘇州浪潮智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910734331.0/1.html,轉載請聲明來源鉆瓜專利網。





