專利名稱:話單數(shù)據(jù)采集方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)采集技術(shù)領(lǐng)域,特別涉及一種話單數(shù)據(jù)采集方法。
背景技術(shù):
一般業(yè)務(wù)數(shù)據(jù)采集的形式,都是由綜合網(wǎng)管和業(yè)務(wù)廠家制定采集接口,由業(yè)務(wù)廠家提供數(shù)據(jù)庫(kù)或者文件形式,將匯總后的數(shù)據(jù)提供給綜合網(wǎng)管系統(tǒng)。這樣做的話,綜合網(wǎng)管系統(tǒng)只能采集到提前約定好的相關(guān)指標(biāo),如果指標(biāo)發(fā)生增減,或者采集粒度發(fā)生變化,綜合網(wǎng)管系統(tǒng)將受限于業(yè)務(wù)廠家所提供的數(shù)據(jù),這樣就不利于按用戶的特定需求采集和展示所需要的指標(biāo)數(shù)據(jù)。
發(fā)明內(nèi)容
(一)要解決的技術(shù)問題本發(fā)明要解決的技術(shù)問題是如何在繁雜的業(yè)務(wù)數(shù)據(jù)中,采集用戶關(guān)注的信息。( 二 )技術(shù)方案為解決上述技術(shù)問題,本發(fā)明提供了一種話單數(shù)據(jù)采集方法,包括以下步驟Sl 采用N個(gè)分析進(jìn)程根據(jù)用戶關(guān)注的指標(biāo)字段分析原始話單文件,提取包含所述指標(biāo)字段的數(shù)據(jù),并將該數(shù)據(jù)存入數(shù)據(jù)庫(kù),N^l;S2:從所述數(shù)據(jù)庫(kù)中提取所述指標(biāo)字段的數(shù)據(jù),并進(jìn)行匯聚,將匯聚后的結(jié)果存入數(shù)據(jù)庫(kù)。其中,所述步驟Sl具體包括Si. 1 每個(gè)分析進(jìn)程定時(shí)讀取原始話單文件,調(diào)用解析腳本對(duì)話單進(jìn)行解析,所述解析腳本中指定了所述用戶關(guān)注的指標(biāo)字段;Si. 2 將解析后得到的所述指標(biāo)字段的數(shù)據(jù)存入數(shù)據(jù)庫(kù)。其中,所述步驟Si. 1中解析的方式具體包括解析所述用戶關(guān)注的指標(biāo)字段,或截取所述指標(biāo)字段中的一部分?jǐn)?shù)值,或根據(jù)指標(biāo)字段含義進(jìn)行符合數(shù)據(jù)庫(kù)存儲(chǔ)的數(shù)據(jù)類型轉(zhuǎn)換,或根據(jù)指標(biāo)字段值進(jìn)行數(shù)制換算。其中,所述步驟Si. 2中采用數(shù)據(jù)庫(kù)文本導(dǎo)入的方式將解析后得到的所述指標(biāo)字段的數(shù)據(jù)存入數(shù)據(jù)庫(kù)。其中,所述步驟S2中以時(shí)間粒度為匯聚條件對(duì)N個(gè)分析結(jié)果進(jìn)行匯聚,得到所述指標(biāo)字段在開始時(shí)間和結(jié)束時(shí)間內(nèi)的匯聚結(jié)果,并對(duì)所述匯聚結(jié)果做求和、平均值、最大值或最小值中的一種或多種聚合函數(shù)的計(jì)算,得出該指標(biāo)字段在不同聚合函數(shù)下的時(shí)間粒度的匯聚值。其中,進(jìn)行一次匯聚之后還包括采用與前一次不同的時(shí)間粒度對(duì)前一次的匯聚結(jié)果進(jìn)行匯聚。其中,所述時(shí)間粒度包括小時(shí)粒度、天粒度、周粒度、月粒度、季粒度、年粒度。所述步驟S2中以業(yè)務(wù)類型為匯聚條件對(duì)所述指標(biāo)字段的數(shù)據(jù)進(jìn)行匯聚,得到不同業(yè)務(wù)類型中的指標(biāo)字段的匯聚結(jié)果。其中,所述步驟Sl之前還包括登錄遠(yuǎn)程話單服務(wù)器,下載原始話單文件,并將所述原始話單文件分成N個(gè)分析目錄。(三)有益效果本發(fā)明能夠靈活地根據(jù)用戶的需求,定制采集粒度和采集指標(biāo),使得用戶能夠采集自己關(guān)注的信息。
圖1是本發(fā)明實(shí)施例的一種話單數(shù)據(jù)采集方法流程圖;圖2是圖1中步驟SlOl的具體流程圖;圖3是圖1中步驟S102的具體流程圖;圖4是圖1中步驟S103的具體流程圖。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的具體實(shí)施方式
作進(jìn)一步詳細(xì)描述。以下實(shí)施例用于說明本發(fā)明,但不用來(lái)限制本發(fā)明的范圍。如圖1所示,本發(fā)明的話單數(shù)據(jù)采集方法包括步驟SlOl,登錄遠(yuǎn)程話單服務(wù)器,到指定的目錄下載原始話單文件,并將原始話單文件分成N個(gè)分析目錄,1。具體流程如圖2所示,如果下載發(fā)生錯(cuò)誤,則舍棄該文件并報(bào)異常。話單下載完畢后,進(jìn)程進(jìn)入休眠狀態(tài),等待下次任務(wù)執(zhí)行。若當(dāng)前已存在原始話單文件,則不用下載,直接執(zhí)行步驟S102。步驟S102,采用N個(gè)分析進(jìn)程分析原始話單文件,對(duì)用戶關(guān)注的指標(biāo)字段進(jìn)行分析提取,將提取后的包含所述指標(biāo)字段的數(shù)據(jù)存入數(shù)據(jù)庫(kù)。具體流程如圖3所示,分析話單進(jìn)程啟動(dòng)后,定時(shí)讀取話單文件,調(diào)用解析腳本對(duì)話單進(jìn)行解析,可以根據(jù)用戶關(guān)注的指標(biāo)進(jìn)行自定義解析腳本,如只解析用戶關(guān)注的某幾個(gè)指標(biāo),其他字段不解析,或者某個(gè)字段只截取其中有用的一部分?jǐn)?shù)值。也可以根據(jù)指標(biāo)含義進(jìn)行適當(dāng)?shù)臄?shù)據(jù)類型轉(zhuǎn)換,為下一步數(shù)據(jù)存入數(shù)據(jù)庫(kù)以及最終的數(shù)據(jù)查詢做好準(zhǔn)備。如某個(gè)字段為枚舉類型的字符串型數(shù)據(jù), 則可以將該字段轉(zhuǎn)換為整型字典表數(shù)據(jù),因?yàn)檎蛿?shù)據(jù)比字符串型數(shù)據(jù)查詢的效率要高, 所以這樣解析有利于最終的數(shù)據(jù)查詢。還可以根據(jù)指標(biāo)值進(jìn)行必要的數(shù)據(jù)換算,如將十六進(jìn)制數(shù)據(jù)轉(zhuǎn)換為十進(jìn)制數(shù)據(jù),或?qū)⑷掌谛蛿?shù)據(jù)轉(zhuǎn)換為長(zhǎng)整型時(shí)間數(shù)據(jù)等。如果解析不成功會(huì)生成異常文件。分析后再調(diào)用數(shù)據(jù)入庫(kù)腳本將數(shù)據(jù)存入中間表,如果數(shù)據(jù)入庫(kù)不成功也會(huì)生成異常文件。然后將分析完的文件進(jìn)行備份。所有話單文件分析完畢后,進(jìn)程進(jìn)入休眠狀態(tài),等待下次任務(wù)執(zhí)行。分析話單進(jìn)程可以根據(jù)話單量的多少,自定義進(jìn)程的數(shù)量,以最大限度的實(shí)現(xiàn)負(fù)載均衡。其中將解析后得到的所述指標(biāo)字段的數(shù)據(jù)存入數(shù)據(jù)庫(kù),是使用了數(shù)據(jù)庫(kù)文本導(dǎo)入的方式,這樣做的優(yōu)點(diǎn)是只占用系統(tǒng)內(nèi)存,不占用進(jìn)程的內(nèi)存,處理效率相當(dāng)高。步驟S103 從所述數(shù)據(jù)庫(kù)中提取步驟S102解析出的指標(biāo)字段的數(shù)據(jù)進(jìn)行匯聚,并將匯聚后的結(jié)果存入數(shù)據(jù)庫(kù)。具體流程如圖4所示,匯聚話單進(jìn)程啟動(dòng)后,定時(shí)進(jìn)行數(shù)據(jù)的提取和匯聚,再將匯聚后的數(shù)據(jù)存入數(shù)據(jù)庫(kù)中。匯聚任務(wù)執(zhí)行完畢后,進(jìn)程進(jìn)入休眠狀態(tài), 等待下次任務(wù)執(zhí)行。匯聚的粒度和算法,以及匯聚后需要提取的指標(biāo),都可以根據(jù)用戶的需要適時(shí)地調(diào)整,以最大限度地實(shí)現(xiàn)用戶的個(gè)性化需求。如用戶需要小時(shí)粒度的數(shù)據(jù),那么匯聚后會(huì)得到用戶所關(guān)注指標(biāo)字段在開始時(shí)間和結(jié)束時(shí)間相差1小時(shí)(一般是整點(diǎn)時(shí)間)內(nèi)的數(shù)據(jù),并且對(duì)該數(shù)據(jù)做求和、平均、最大、最小等一種或多種聚合函數(shù)的計(jì)算,得出的結(jié)果將是用戶所關(guān)注指標(biāo)字段在不同匯聚函數(shù)下的小時(shí)粒度的匯聚值。還可以針對(duì)不同的時(shí)間粒度需求,進(jìn)行多次匯聚,如將原始數(shù)據(jù)匯聚成小時(shí)、天、周、月、季、年等不同的數(shù)據(jù)粒度,以支持報(bào)表的多種日期和時(shí)間維度的查詢和翻轉(zhuǎn)。如果該匯聚過程較為簡(jiǎn)單,則可以用SQL語(yǔ)句來(lái)實(shí)現(xiàn)。如果匯聚過程較為復(fù)雜,如需要針對(duì)多個(gè)指標(biāo)進(jìn)行多次計(jì)算,也可以用存儲(chǔ)過程來(lái)實(shí)現(xiàn)。下面以WAP網(wǎng)關(guān)業(yè)務(wù)為例,針對(duì)以上匯聚粒度和算法作具體說明如下WAP網(wǎng)關(guān)有 PULL、PUSH、RADIUS、SOCKET等幾類話單,用戶將與網(wǎng)關(guān)實(shí)時(shí)性分業(yè)務(wù)統(tǒng)計(jì)的相關(guān)指標(biāo)建立了一個(gè)指標(biāo)組,這些指標(biāo)的數(shù)據(jù)都來(lái)源于PULL話單,指標(biāo)的編碼、含義及算法定義見表1 :表1 WAP網(wǎng)關(guān)業(yè)務(wù)中指標(biāo)字段的信息
權(quán)利要求
1.一種話單數(shù)據(jù)采集方法,其特征在于,包括以下步驟Sl 采用N個(gè)分析進(jìn)程根據(jù)用戶關(guān)注的指標(biāo)字段分析原始話單文件,提取包含所述指標(biāo)字段的數(shù)據(jù),并將該數(shù)據(jù)存入數(shù)據(jù)庫(kù),N^l;S2:從所述數(shù)據(jù)庫(kù)中提取所述指標(biāo)字段的數(shù)據(jù),并進(jìn)行匯聚,將匯聚后的結(jié)果存入數(shù)據(jù)庫(kù)。
2.如權(quán)利要求1所述的話單數(shù)據(jù)采集方法,其特征在于,所述步驟Sl具體包括Si. 1 每個(gè)分析進(jìn)程定時(shí)讀取原始話單文件,調(diào)用解析腳本對(duì)話單進(jìn)行解析,所述解析腳本中指定了所述用戶關(guān)注的指標(biāo)字段;Si. 2 將解析后得到的所述指標(biāo)字段的數(shù)據(jù)存入數(shù)據(jù)庫(kù)。
3.如權(quán)利要求2所述的話單數(shù)據(jù)采集方法,其特征在于,所述步驟Si.1中解析的方式具體包括解析所述用戶關(guān)注的指標(biāo)字段,或截取所述指標(biāo)字段中的一部分?jǐn)?shù)值,或根據(jù)指標(biāo)字段含義進(jìn)行符合數(shù)據(jù)庫(kù)存儲(chǔ)的數(shù)據(jù)類型轉(zhuǎn)換,或根據(jù)指標(biāo)字段值進(jìn)行數(shù)制換算。
4.如權(quán)利要求3所述的話單數(shù)據(jù)采集方法,其特征在于,所述步驟Si.2中采用數(shù)據(jù)庫(kù)文本導(dǎo)入的方式將解析后得到的所述指標(biāo)字段的數(shù)據(jù)存入數(shù)據(jù)庫(kù)。
5.如權(quán)利要求1所述的話單數(shù)據(jù)采集方法,其特征在于,所述步驟S2中以時(shí)間粒度為匯聚條件對(duì)所述指標(biāo)字段的數(shù)據(jù)進(jìn)行匯聚,得到所述指標(biāo)字段在開始時(shí)間和結(jié)束時(shí)間內(nèi)的匯聚結(jié)果,并對(duì)所述匯聚結(jié)果做求和、平均值、最大值或最小值中的一種或多種聚合函數(shù)的計(jì)算,得出該指標(biāo)字段在不同聚合函數(shù)下的時(shí)間粒度的匯聚值。
6.如權(quán)利要求5所述的話單數(shù)據(jù)采集方法,其特征在于,進(jìn)行一次匯聚之后還包括采用與前一次不同的時(shí)間粒度對(duì)前一次的匯聚結(jié)果進(jìn)行匯聚。
7.如權(quán)利要求6所述的話單數(shù)據(jù)采集方法,其特征在于,所述時(shí)間粒度包括小時(shí)粒度、天粒度、周粒度、月粒度、季粒度、年粒度。
8.如權(quán)利要求1所述的話單數(shù)據(jù)采集方法,其特征在于,所述步驟S2中以業(yè)務(wù)類型為匯聚條件對(duì)所述指標(biāo)字段的數(shù)據(jù)進(jìn)行匯聚,得到不同業(yè)務(wù)類型中的指標(biāo)字段的匯聚結(jié)果。
9.如權(quán)利要求1 8中任一項(xiàng)所述的話單數(shù)據(jù)采集方法,其特征在于,所述步驟Sl之前還包括登錄遠(yuǎn)程話單服務(wù)器,下載原始話單文件,并將所述原始話單文件分成N個(gè)分析目錄。
全文摘要
本發(fā)明公開了一種話單數(shù)據(jù)采集方法,包括以下步驟S1采用N個(gè)分析進(jìn)程根據(jù)用戶關(guān)注的指標(biāo)字段分析原始話單文件,提取包含所述指標(biāo)字段的數(shù)據(jù),并將該數(shù)據(jù)存入數(shù)據(jù)庫(kù),N≥1;S2從所述數(shù)據(jù)庫(kù)中提取所述指標(biāo)字段的數(shù)據(jù),并進(jìn)行匯聚,將匯聚后的結(jié)果存入數(shù)據(jù)庫(kù)。本發(fā)明能夠靈活地根據(jù)用戶的需求,定制采集粒度和采集指標(biāo)。
文檔編號(hào)G06F17/30GK102298623SQ20111023326
公開日2011年12月28日 申請(qǐng)日期2011年8月15日 優(yōu)先權(quán)日2011年8月15日
發(fā)明者李云 申請(qǐng)人:北京神州泰岳軟件股份有限公司