一種多源自增海量數據文件實時采集方法,采用多線程技術并行采集數據源上的自增數據文件,采用文件切片技術和文件續(xù)傳技術對所述的自增數據文件按時間切片,每次采集自增數據文件的增量部分。根據數據生成周期、預估數據文件大小及業(yè)務需求設定采集時間間隔,按設定的采集時間間隔,以定期輪詢的方式檢查服務器數據源當前周期的數據文件,采用文件切片技術和文件續(xù)傳技術采集增量數據,以小數據文件的形式存儲到本地,并且記錄當前時刻文件字節(jié)大小作為下次輪詢采集的起始位置。本發(fā)明專利技術每次采集增量部分,實現多源自增海量數據文件實時采集,解決了現有技術中采集電信數據延遲時間長、實時性差、影響服務器負載和穩(wěn)定性的技術問題。
【技術實現步驟摘要】
:本專利技術涉及物理領域,尤其涉及計算機應用系統(tǒng)中海量數據采集技術,特別是一種。
技術介紹
:電信業(yè)務涉及到的數據量非常巨大。在電信大型應用系統(tǒng)中,一般有多個數據源同時提供海量實時自增數據文件,應用系統(tǒng)每天需要采集幾十到上百GB的海量數據,如PCMD和ROP數據。這類數據以文件形式存儲在多個服務器數據源上,每個數據源一般是一個固定的時間周期生成一個文件,如一小時生成一個數據文件或者一天生成一個數據文件,文件在周期內會實時自增,直到下一周期開始,對應的數據文件會自動創(chuàng)建并實時自增。如何確保第一時間將海量數據文件準確完整地采集到并提供給應用系統(tǒng)成為一個技術難題。現有技術是在一個數據文件完全寫入并不再自增后采集入庫,這就會帶來兩個弊端:一是數據延遲時間長,實時性差。上一周期的數據文件需要等到下一周期開始才能采集,這樣對于上一周期初期的數據來說可能就會延遲一個周期才能采集,而且采集本身也會花去較長一段時間,大大降低了數據的實時性。二是服務器負載失衡,穩(wěn)定性差。一次性采集入庫海量的數據,服務器處理時間集中在較長一段時間內,一旦入庫過程出現異常,回滾的代價很高,也會嚴重影響到客戶對服務器的查詢訪問速度
技術實現思路
:本專利技術的目的在于提供一種,所述的這種要解決現有技術采集電信數據延遲時間長、實時性差、影響服務器負載和穩(wěn)定性的技術問題。本專利技術的這種,包括從一個以上數目的服務器數據源上采集自增數據文件的過程,其中,在所述的從一個以上數目的服務器數據源上采集自增數據文件的過程中,采用多線程技術并行采集一個以上數目的服務器數據源上的自增數據文件,采用文件切片技術和文件續(xù)傳技術對所述的自增數據文件按時間切片,每次采集自增數據文件的增量部分。進一步的,所述的從一個以上數目的服務器數據源上采集自增數據文件的過程包括以下步驟:步驟1,明確數據生成周期、命名規(guī)則和采集方式,并預估每個數據文件的大小,步驟2,根據數據生成周期、預估數據文件大小及業(yè)務需求設定采集時間間隔,步驟3,按設定的采集時間間隔,以定期輪詢的方式檢查服務器數據源當前周期的數據文件,采用文件切片技術和文件續(xù)傳技術采集增量數據,并按步驟I中設定的命名規(guī)則以小數據文件的形式存儲到本地,并且記錄本次采集過程中當前時刻文件字節(jié)大小作為下次輪詢采集的起始位置,第一次輪詢中采集從O字節(jié)位置到第一次輪詢時刻的數據文件字節(jié)位置的數據,步驟4,采集從上一次輪詢中記錄的字節(jié)位置到當前輪詢時刻的數據文件字節(jié)位置的數據,循環(huán)讀取,直到下一個周期數據文件生成,步驟5,在步驟4中所述的周期數據文件的生成時刻,進行最后一次輪詢采集,步驟6,將采集到的文件按設定的命名規(guī)則以小數據文件存儲到指定目錄,并直接加載數據庫或者備份至服務器,步驟7,對于N個服務器數據源,采用多線程技術,按照步驟3-步驟6進行并行采集,步驟8,對于多個數據類別,按照步驟1-步驟7,采用多線程技術或多進程技術實現并行采集。進一步的,所述的步驟I中的數據源包括:有N個數據源對應N臺服務器,數據以文件形式分別存儲在N個服務器上,數據在一個周期生成一個數據文件,數據文件在周期內實時寫入增長,直到下一周期數據文件創(chuàng)建,數據文件命名包括唯一標識規(guī)則,按照YYYYMMDDHHMMSS.XXXX格式命名,YYYYMMDDHHMMSS是時間周期特征,XXXX數據類別特征。進一步的,根據所述的步驟2中的采集時間間隔定義文件切片的粒度。進一步的,所述的步驟3中的文件切片技術是將文件按照等時間間隔切割成一個個文件切片,每次記錄切割的字節(jié)位置作為下次切片采集的起始字節(jié)位置,文件續(xù)傳技術是在文件每次切割的時間點,采集從上次采集記錄的字節(jié)位置到當前時間文件最大字節(jié)位置的數據切片。進一步的,所述的步驟6中的命名規(guī)則包括:數據文件命名包括唯一標識的要素,按照 YYYYMMDDHHMMSSECPN_HHMMSS.XXXX 格式命名,YYYYMMDDHHMMSS 為數據時間周期特征,XXXX為數據類別特征,ECPN為數據源特征,_HHMMSS為采集時間特征,數據時間周期特征和數據類別特征來源于數據源。本專利技術和已有技術相比較,其效果是積極和明顯的。本專利技術通過采用多線程技術同時采集多個數據服務器上的數據文件,采用文件切片技術和文件續(xù)傳技術對一個數據文件按時間切片,每次采集增量部分,實現多源自增海量數據文件實時采集,解決了現有技術中采集電信數據延遲時間長、實時性差、影響服務器負載和穩(wěn)定性的技術問題。附圖說明:圖1是本專利技術的的原理圖。具體實施方式:實施例1:如圖1所示,本專利技術的,包括從一個以上數目的服務器數據源上采集自增數據文件的過程,其中,在所述的從一個以上數目的服務器數據源上采集自增數據文件的過程中,采用多線程技術并行采集一個以上數目的服務器數據源上的自增數據文件,采用文件切片技術和文件續(xù)傳技術對所述的自增數據文件按時間切片,每次采集自增數據文件的增量部分。進一步的,所述的從一個以上數目的服務器數據源上采集自增數據文件的過程包括以下步驟:步驟1,明確數據生成周期、命名規(guī)則和采集方式,并預估每個數據文件的大小。數據源特征主要包括:A、有N個數據源對應N臺服務器;B、數據以文件形式分別存儲在N個服務器上;C、數據在一個周期⑴生成一個數據文件(如I小時/I天);D、數據文件在周期內實時寫入增長,直到下一周期數據文件創(chuàng)建;E、數據文件命名包括唯一標識規(guī)則,按照YYYYMMDDHHMMSS.XXXX格式命名。如10040711.PCMD:其中,10040711是時間周期特征;PCMD是數據類別特征。步驟2,根據數據生成周期、預估數據文件大小及業(yè)務需求設定采集時間間隔,步驟3,按設定的采集時間間隔,以定期輪詢的方式檢查服務器數據源當前周期的數據文件,采用文件切片技術和文件續(xù)傳技術采集增量數據,并按步驟I中設定的命名規(guī)則以小數據文件的形式存儲到本地,并且記錄本次采集過程中當前時刻文件字節(jié)大小作為下次輪詢采集的起始位置,第一次輪詢中采集從O字節(jié)位置到第一次輪詢時刻的數據文件字節(jié)位置的數據,步驟4,采集從上一次輪詢中記錄的字節(jié)位置到當前輪詢時刻的數據文件字節(jié)位置的數據,循環(huán)讀取,直到下一個周期數據文件生成,步驟5,在步驟4中所述的周期數據文件的生成時刻,進行最后一次輪詢采集,最后一次輪詢采集時間要保證在下個周期數據文件生成后并且是剛生成后,以保證上一周期數據文件采集的完整性和下一數據采集的實時性。步驟6,將采集到的文件按設定的命名規(guī)則以小數據文件存儲到指定目錄,并直接加載數據庫或者備份至服務器,步驟7,對于N個服務器數據源,采用多線程技術,按照步驟3-步驟6進行并行采集,步驟8,對于多個數據類別,按照步驟1-步驟7,采用多線程技術或多進程技術實現并行采集。進一步的,根據所述的步驟2中的采集時間間隔定義文件切片的粒度。進一步的,所述的步驟3中的文件切片技術是將文件按照等時間間隔切割成一個個文件切片,每次記錄切割的字節(jié)位置作為下次切片采集的起始字節(jié)位置,文件續(xù)傳技術是在文件每次切割的時間點,采集從上次采集記錄的字節(jié)位置到當前時間文件最大字節(jié)位置的數據切片。進一步的,所述的步驟6中的命名規(guī)則包括:數據文件命名包括唯一標識的要素,按照 YYYYMMDDHHMMSSECPN_HHMMS本文檔來自技高網...
【技術保護點】
一種多源自增海量數據文件實時采集方法,包括從一個以上數目的服務器數據源上采集自增數據文件的過程,其特征在于:在所述的從一個以上數目的服務器數據源上采集自增數據文件的過程中,采用多線程技術并行采集一個以上數目的服務器數據源上的自增數據文件,采用文件切片技術和文件續(xù)傳技術對所述的自增數據文件按時間切片,每次采集自增數據文件的增量部分。
【技術特征摘要】
1.一種多源自增海量數據文件實時采集方法,包括從一個以上數目的服務器數據源上采集自增數據文件的過程,其特征在于:在所述的從一個以上數目的服務器數據源上采集自增數據文件的過程中,采用多線程技術并行采集一個以上數目的服務器數據源上的自增數據文件,采用文件切片技術和文件續(xù)傳技術對所述的自增數據文件按時間切片,每次采集自增數據文件的增量部分。2.按權利要求1所述的多源自增海量數據文件實時采集方法,其特征在于:所述的從一個以上數目的服務器數據源上采集自增數據文件的過程包括以下步驟: 步驟1,明確數據生成周期、命名規(guī)則和采集方式,并預估每個數據文件的大小, 步驟2,根據數據生成周期、預估數據文件大小及業(yè)務需求設定采集時間間隔, 步驟3,按設定的采集時間間隔,以定期輪詢的方式檢查服務器數據源當前周期的數據文件,采用文件切片技術和文件續(xù)傳技術采集增量數據,并按步驟I中設定的命名規(guī)則以小數據文件的形式存儲到本地,并且記錄本次采集過程中當前時刻文件字節(jié)大小作為下次輪詢采集的起始位置,第一次輪詢中采集從O字節(jié)位置到第一次輪詢時刻的數據文件字節(jié)位置的數據, 步驟4,采集從上一次輪詢中記錄的字節(jié)位置到當前輪詢時刻的數據文件字節(jié)位置的數據,循環(huán)讀取,直到下一個周期數據文件生成, 步驟5,在步驟4中所述的周期數據文件的生成時刻,進行最后一次輪詢采集, 步驟6,將采集到的文件按設定的命名規(guī)則以小數據文件存儲到指定目錄,并直接加載數據庫或者備份至服務器, 步驟7,對于N個服務器數據源,采用多線程技術,按照步驟3-步驟6...
【專利技術屬性】
技術研發(fā)人員:王志海,麥菁,辛煒博,徐卸土,王智博,
申請(專利權)人:上海郵電設計咨詢研究院有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。