System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及短信數據統計,更具體地說,它涉及一種高效的短信數據統計方法、系統、設備及存儲介質。
技術介紹
1、在當前的短信發送平臺中,數據統計通常依賴于傳統的批處理方法。這些方法往往在數據量較大時表現出明顯的性能瓶頸,尤其是當每天的短信數據量超過3億條時。
2、現有技術中,定時任務的調度通常采用單線程或簡單的多線程方式,導致在數據統計的高峰時段處理效率低下。此外,現有系統在數據統計過程中,往往需要等待前一個任務完全結束才能啟動下一個任務,這樣的串行處理方式增加了數據統計的延遲,影響了實時數據分析的能力。因此,現有技術在高并發和高效能的數據處理上存在明顯的不足,急需一種更加高效的算法來提升數據處理速度和準確性。
技術實現思路
1、本專利技術要解決的技術問題是針對現有技術的上述不足,本專利技術的目的一是提供一種高效的短信數據統計方法。
2、本專利技術的目的二是提供一種高效的短信數據統計系統。
3、本專利技術的目的三是提供一種計算機設備。
4、本專利技術的目的四是提供一種計算機存儲介質。
5、為了實現上述目的一,本專利技術提供一種高效的短信數據統計方法,包括以下步驟:
6、步驟1.采用多線程架構建立多個線程,用于將數據統計任務分配至多個線程并行執行,以減少處理時間;
7、步驟2.將一天的短信數據按時間段劃分為若干短信數據表;
8、步驟3.設定第一個定時任務,在第一個定時點處理設定時間段對應的
9、步驟31.依據線程數量將設定時間段對應的短信數據表中的短信數據劃分成若干子集,子集的數量等于線程數量,且各子集與各線程一一對應;
10、步驟32.啟動多個線程,分別對每個子集進行統計計算;
11、步驟33.每個線程在統計計算完畢后,將結果存儲到第一臨時統計表中;
12、步驟4.設定第二個定時任務,在第二個定時點處理剩余的短信數據表中的短信數據,具體步驟如下:
13、步驟41.依據線程數量將剩余的時間段對應的短信數據表中的短信數據劃分成若干子集,子集的數量等于線程數量,且各子集與各線程一一對應;
14、步驟42.啟動多個線程,分別對每個子集進行統計計算;
15、步驟43.每個線程在統計計算完畢后,將結果存儲到第二臨時統計表中;
16、步驟5.將第一臨時統計表和第二臨時統計表中的數據合并成最終統計表。
17、作為進一步地改進,在步驟2中,將一天的短信數據按小時劃分為24張短信數據表。
18、進一步地,第一個定時點為22:00,每天22:00觸發,從數據庫中提取第0-第21小時的短信數據,共22張短信數據表;
19、第二個定時點為2:00,每天2:00觸發,從數據庫中提取第22-23小時的短信數據,共2張短信數據表。
20、進一步地,在步驟32、步驟42中,對提取的數據進行清洗,處理缺失值和異常值。
21、進一步地,短信數據表用于存儲所有短信記錄,短信記錄包括發送時間、接收號碼、內容的字段;
22、第一臨時統計表與第二臨時統計表結構一致,用于存儲每個線程的中間統計結果,且結構與最終統計表一致,方便后續數據匯總;
23、最終統計表用于存儲最終的統計結果,供后續數據分析和報表生成使用。
24、進一步地,調度機制為采用基于時間的調度策略,確保任務在預定時間點啟動,并且利用線程池管理線程的創建和銷毀,以提高資源利用效率。
25、進一步地,在步驟33中,將第一臨時統計表保存到數據庫中,標記為待合并狀態;
26、在步驟43中,將第二臨時統計表保存到數據庫中,標記為待合并狀態;
27、在步驟5中,將最終統計表保存到數據庫中,標記為已完成狀態;同時清除第一臨時統計表與第二臨時統計表的數據,以準備下一次的統計任務;
28、記錄各步驟的處理結果和執行時間,確保數據處理的可追溯性。
29、為了實現上述目的二,本專利技術提供一種高效的短信數據統計系統,包括:
30、線程創造模塊,用于采用多線程架構建立多個線程,用于將數據統計任務分配至多個線程并行執行,以減少處理時間;
31、劃分模塊,用于將一天的短信數據按時間段劃分為若干短信數據表;
32、第一個任務模塊,用于設定第一個定時任務,在第一個定時點處理設定時間段對應的短信數據表中的短信數據,具體如下:依據線程數量將設定時間段對應的短信數據表中的短信數據劃分成若干子集,子集的數量等于線程數量,且各子集與各線程一一對應;啟動多個線程,分別對每個子集進行統計計算;每個線程在統計計算完畢后,將結果存儲到第一臨時統計表中;
33、第二個任務模塊,用于設定第二個定時任務,在第二個定時點處理剩余的短信數據表中的短信數據,具體如下:依據線程數量將剩余的時間段對應的短信數據表中的短信數據劃分成若干子集,子集的數量等于線程數量,且各子集與各線程一一對應;啟動多個線程,分別對每個子集進行統計計算;每個線程在統計計算完畢后,將結果存儲到第二臨時統計表中;
34、合并模塊,用于將第一臨時統計表和第二臨時統計表中的數據合并成最終統計表。
35、為了實現上述目的三,本專利技術提供一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執行所述計算機程序時實現上述的一種高效的短信數據統計方法。
36、為了實現上述目的四,本專利技術提供一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現上述的一種高效的短信數據統計方法。
37、有益效果
38、本專利技術與現有技術相比,具有的優點為:
39、1.處理效率提升:采用多線程并行處理,可以同時處理多個數據子集,顯著縮短數據統計所需時間,尤其在高并發場景下表現尤為突出。
40、2.實時數據統計:引入臨時統計表的機制,使得每個線程在處理完各自的數據后即可立即匯總結果,減少了等待時間,提高了統計的實時性和響應速度。
41、3.數據準確性增強:通過結構化的數據存儲和分步匯總,確保在統計過程中不丟失數據,降低了由于并發處理帶來的錯誤率,提高了最終結果的可靠性。
42、4.靈活的調度機制:結合定時任務的調度策略,能夠在預定時間內自動啟動統計任務,降低人工干預的需求,提高了系統的自動化水平。
43、5.資源利用率優化:使用線程池管理線程資源,避免頻繁創建和銷毀線程,提升了系統的資源利用率,降低了系統負擔。
44、6.易于擴展和維護:該方法的模塊化設計使得未來可以方便地對系統進行擴展和維護,適應更復雜的業務需求。
45、綜上所述,通過多線程并行處理和結構化的數據管理,顯著提升了短信數據統計的效率和準確性,具有重要的實際應用價值。
本文檔來自技高網...【技術保護點】
1.一種高效的短信數據統計方法,其特征在于,包括以下步驟:
2.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,在步驟2中,將一天的短信數據按小時劃分為24張短信數據表。
3.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,第一個定時點為22:00,每天22:00觸發,從數據庫中提取第0-第21小時的短信數據,共22張短信數據表;
4.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,在步驟32、步驟42中,對提取的數據進行清洗,處理缺失值和異常值。
5.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,短信數據表用于存儲所有短信記錄,短信記錄包括發送時間、接收號碼、內容的字段;
6.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,調度機制為采用基于時間的調度策略,確保任務在預定時間點啟動,并且利用線程池管理線程的創建和銷毀,以提高資源利用效率。
7.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,在步驟33中,將第一臨時統計表保存到數據庫中
8.一種高效的短信數據統計系統,其特征在于,包括:
9.一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,其特征在于,所述處理器執行所述計算機程序時實現權利要求1-7任意一項所述的一種高效的短信數據統計方法。
10.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1-7任意一項所述的一種高效的短信數據統計方法。
...【技術特征摘要】
1.一種高效的短信數據統計方法,其特征在于,包括以下步驟:
2.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,在步驟2中,將一天的短信數據按小時劃分為24張短信數據表。
3.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,第一個定時點為22:00,每天22:00觸發,從數據庫中提取第0-第21小時的短信數據,共22張短信數據表;
4.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,在步驟32、步驟42中,對提取的數據進行清洗,處理缺失值和異常值。
5.根據權利要求1所述的一種高效的短信數據統計方法,其特征在于,短信數據表用于存儲所有短信記錄,短信記錄包括發送時間、接收號碼、內容的字段;
6.根據權利要求1所述...
【專利技術屬性】
技術研發人員:劉竹青,牛梅花,彭志衛,蘇富豪,
申請(專利權)人:廣西東信易通科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。