專利名稱:電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法及其系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)倉庫中的抽取、轉(zhuǎn)換和加載(ETL,Extract, Transform, Load)技 術(shù),尤其涉及一種電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法及其系統(tǒng)。
背景技術(shù):
隨著電信市場的逐步開放,新的運營商不斷產(chǎn)生,電信市場的競爭日趨激烈。為了 能夠在競爭中生存和持續(xù)發(fā)展,各電信運營商都對企業(yè)的經(jīng)營和管理提出了更高的要求。 ETL技術(shù)對于電信運營商管理電信運營系統(tǒng)、分析業(yè)務(wù)數(shù)據(jù)、把握業(yè)務(wù)發(fā)展方向,以及提升 服務(wù)水平至關(guān)重要。目前,市場上主流的商業(yè)化ETL工具主要有數(shù)據(jù)整合平臺(DLDataIntegrator)、 DataStage Jnformatica等。這些商業(yè)化的ETL工具在功能上都各有千秋,能滿足一般數(shù)據(jù) 轉(zhuǎn)換處理的需求。但是,電信業(yè)務(wù)極其繁多,而且業(yè)務(wù)更新頻繁,如電信運營商不斷推出的 各類套餐業(yè)務(wù)。這就要求ETL工具具有良好的靈活性和跨平臺性。由于商業(yè)化ETL工具缺 乏對電信業(yè)務(wù)數(shù)據(jù)深入分析和理解,只是提供通用的處理模塊供用戶調(diào)用;而且所開放的 接口比較簡單,一旦遇到性能瓶頸問題而需要做優(yōu)化調(diào)整時往往比較困難,或者代價較高。 因此,這類工具比較適合用于數(shù)據(jù)量不大,業(yè)務(wù)較為單一且變化不大的數(shù)據(jù)轉(zhuǎn)換場合。電信運營系統(tǒng)生成的數(shù)據(jù)主要是電話通話清單、電話客戶資料等,通常此類數(shù)據(jù) 數(shù)量巨大,動輒有上億條記錄,尤其是清單數(shù)據(jù),如固定電話的市話詳單,其數(shù)據(jù)量更加龐 大。而且電信業(yè)務(wù)數(shù)據(jù)具有特定的業(yè)務(wù)含義,采用通用的商業(yè)化ETL工具對這些電信業(yè)務(wù) 數(shù)據(jù)進行處理時,由于沒有充分利用電信業(yè)務(wù)數(shù)據(jù)自身的特點,其轉(zhuǎn)換效率比較低。此外, 目前市場上提供的一些腳本解釋型的ETL工具,在解釋腳本時需要花費較多的時間,所以 其數(shù)據(jù)轉(zhuǎn)換效率也比較低。無疑,電信業(yè)務(wù)的高速發(fā)展、數(shù)據(jù)量的急劇增加對數(shù)據(jù)轉(zhuǎn)換工具 造成很大的性能壓力。因此,對于如此龐大的數(shù)據(jù)量,如何有效提高系統(tǒng)的處理效率成為本 領(lǐng)域亟待解決的技術(shù)問題。此外,如果直接將上述ETL工具應(yīng)用到電信系統(tǒng)時,存在軟件開 發(fā)復(fù)雜、靈活性較差等不足之處,系統(tǒng)跨平臺性能差?;谇笆錾虡I(yè)化的ETL工具開發(fā)的支撐各項業(yè)務(wù)運營的計算機管理系統(tǒng)難以滿 足企業(yè)管理的要求,電信企業(yè)迫切需要尋找一種新的數(shù)據(jù)轉(zhuǎn)換手段,使其能夠低成本、高效 率地實現(xiàn)電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換,從而使管理人員能夠及時準確地了解市場資源使用情況 和業(yè)務(wù)發(fā)展?fàn)顩r,以便及時發(fā)現(xiàn)并解決問題。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法及其系統(tǒng), 其針對電信業(yè)務(wù)自身特點定制函數(shù)集,配置電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)化規(guī)則,并結(jié)合JAVA動態(tài)編譯 以及反射技術(shù),克服了通用ETL工具靈活性差、轉(zhuǎn)換效率低等缺點。本發(fā)明提供如下技術(shù)方 案本發(fā)明的一個方面提供了電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法,該方法包括根據(jù)業(yè)務(wù)
4標(biāo)識獲取預(yù)置的電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則;根據(jù)數(shù)據(jù)轉(zhuǎn)換規(guī)則和預(yù)置的業(yè)務(wù)實現(xiàn)類的模板, 動態(tài)生成業(yè)務(wù)實現(xiàn)類的JAVA源代碼,并編譯生成JAVA程序代碼;動態(tài)加載并執(zhí)行業(yè)務(wù)實現(xiàn) 類,將源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例中,動態(tài)加載并執(zhí)行業(yè)務(wù) 實現(xiàn)類的步驟包括采用動態(tài)加載JAVA類技術(shù)和反射調(diào)用JAVA函數(shù)技術(shù)動態(tài)加載并執(zhí)行 業(yè)務(wù)實現(xiàn)類。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例中,該方法還包括步驟 通過圖形化界面接收用戶對數(shù)據(jù)轉(zhuǎn)換規(guī)則的配置。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例中,該方法還包括步驟 通過圖形化界面接收用戶對函數(shù)集的定義和/或擴展。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例中,函數(shù)集包括從電話號 碼中拆分接入號碼、區(qū)號、運營商信息的函數(shù)。本發(fā)明另一個方面提供了一種電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng),該系統(tǒng)包括數(shù)據(jù)轉(zhuǎn) 換規(guī)則存儲子系統(tǒng),用于存儲電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則和函數(shù)集;數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng), 用于從數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng)中獲取電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則;根據(jù)轉(zhuǎn)換規(guī)則和預(yù)置的業(yè) 務(wù)實現(xiàn)類的模板,動態(tài)生成業(yè)務(wù)實現(xiàn)類的JAVA源代碼,并編譯生成JAVA程序代碼;以及動 態(tài)加載并執(zhí)行業(yè)務(wù)實現(xiàn)類,將源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,該系統(tǒng)還包括數(shù)據(jù)轉(zhuǎn) 換規(guī)則生成環(huán)境子系統(tǒng),用于通過圖形化界面接收用戶對電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則的配置, 將修改或增加的數(shù)據(jù)轉(zhuǎn)換規(guī)則保存到數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng);以及提供用戶自定義函數(shù) 編程接口,供用戶擴展函數(shù)集。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán) 境子系統(tǒng)包括數(shù)據(jù)轉(zhuǎn)換規(guī)則配置模塊,用于對預(yù)置的數(shù)據(jù)轉(zhuǎn)換規(guī)則進行維護,引導(dǎo)用戶配 置新的數(shù)據(jù)轉(zhuǎn)換規(guī)則,并負責(zé)導(dǎo)入/導(dǎo)出選定的數(shù)據(jù)轉(zhuǎn)換規(guī)則;函數(shù)集配置模塊,用于對預(yù) 置的函數(shù)集進行維護,負責(zé)引導(dǎo)用戶配置新的函數(shù),以及導(dǎo)入/導(dǎo)出函數(shù)集或單個函數(shù);系 統(tǒng)維護模塊,用于存儲數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)的系統(tǒng)參數(shù)和生成的系統(tǒng)日志。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,數(shù)據(jù)轉(zhuǎn)換規(guī)則配置模 塊包括數(shù)據(jù)轉(zhuǎn)換規(guī)則維護子模塊,用于負責(zé)轉(zhuǎn)換規(guī)則列表的樹狀展現(xiàn)和轉(zhuǎn)換規(guī)則的信息 展現(xiàn);數(shù)據(jù)轉(zhuǎn)換規(guī)則配置向?qū)ё幽K,用于負責(zé)引導(dǎo)用戶逐步完成數(shù)據(jù)轉(zhuǎn)換規(guī)則的配置; 數(shù)據(jù)轉(zhuǎn)換規(guī)則導(dǎo)入/導(dǎo)出子模塊,用于負責(zé)導(dǎo)入和導(dǎo)出選定的轉(zhuǎn)換規(guī)則,供用戶備份和/或 部署ο本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,函數(shù)集配置模塊包 括函數(shù)集維護子模塊,用于對預(yù)置的函數(shù)集進行維護;自定義函數(shù)向?qū)ё幽K,用于負責(zé) 引導(dǎo)用戶完成函數(shù)的定義;函數(shù)導(dǎo)入/導(dǎo)出子模塊,用于導(dǎo)入/導(dǎo)出函數(shù)集或單個函數(shù),供 用戶備份和/或部署。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,系統(tǒng)維護模塊包括 系統(tǒng)參數(shù)子模塊,用于配置和維護數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)的系統(tǒng)參數(shù);系統(tǒng)日志子 模塊,用于生成和存儲數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)的系統(tǒng)日志。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子
5系統(tǒng)包括數(shù)據(jù)轉(zhuǎn)換規(guī)則引擎,用于從數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng)中獲取電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換 規(guī)則;動態(tài)生成業(yè)務(wù)實現(xiàn)類的JAVA源代碼,并編譯生成JAVA程序代碼;以及動態(tài)加載并執(zhí) 行業(yè)務(wù)實現(xiàn)類,將源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件;系統(tǒng)維護模塊,用于存儲數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào) 度子系統(tǒng)的系統(tǒng)參數(shù)和生成的系統(tǒng)日志。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,數(shù)據(jù)轉(zhuǎn)換規(guī)則引擎包 括源代碼生成器,用于根據(jù)數(shù)據(jù)轉(zhuǎn)換規(guī)則和預(yù)置的業(yè)務(wù)實現(xiàn)類的模板,動態(tài)生成業(yè)務(wù)實現(xiàn) 類的JAVA源代碼文件;源代碼編譯器,用于編譯業(yè)務(wù)實現(xiàn)類的JAVA源代碼文件,生成JAVA 程序代碼;以及數(shù)據(jù)轉(zhuǎn)換規(guī)則處理器,用于讀寫數(shù)據(jù)文件,負責(zé)電信業(yè)務(wù)數(shù)據(jù)的轉(zhuǎn)換;以及 集中和處理系統(tǒng)錯誤。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,系統(tǒng)維護模塊包括 系統(tǒng)參數(shù)子模塊,用于配置和維護數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)的系統(tǒng)參數(shù);系統(tǒng)日志子模塊, 用于生成和存儲數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)的系統(tǒng)日志。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換系統(tǒng)的一個實施例中,數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子 系統(tǒng)存儲的函數(shù)集包括用于從電話號碼中拆分出接入號碼、區(qū)號、運營商信息的函數(shù)。電信運營系統(tǒng)生成的數(shù)據(jù)量都很大,尤其是詳單數(shù)據(jù),其數(shù)據(jù)量更加龐大,這無疑 對數(shù)據(jù)轉(zhuǎn)換工具造成了一定的性能壓力。同時,電信業(yè)務(wù)極其繁多,而且變化很快,如電信 推出的各類套餐業(yè)務(wù)。這就要求ETL工具具有很好的靈活性。另外,目前市場上的ETL工 具沒有針對電信業(yè)務(wù)數(shù)據(jù)特點進行優(yōu)化處理,不能在靈活性和效率之間取得平衡;對于龐 大的電信業(yè)務(wù)數(shù)據(jù)量,如何有效提高系統(tǒng)的處理效率,也是需要考慮的問題。本發(fā)明針對電 信業(yè)務(wù)數(shù)據(jù)特性建立了豐富的函數(shù)集,同時提供函數(shù)自定義接口,便于用戶擴展函數(shù)集;不 同于當(dāng)前腳本解釋型ETL工具,本發(fā)明采用動態(tài)生成源代碼,動態(tài)編譯,以及動態(tài)加載并執(zhí) 行代碼的方式,有效地提高了數(shù)據(jù)轉(zhuǎn)換效率,具有很強的實用性。本發(fā)明創(chuàng)新地提出采用函 數(shù)集,采用JAVA為設(shè)計語言,良好的跨平臺特性有利于各子系統(tǒng)的兼容與集成。使用JAVA 反射技術(shù),可以靈活動態(tài)地執(zhí)行數(shù)據(jù)規(guī)則JAVA代碼來生成電信業(yè)務(wù)數(shù)據(jù)文件;從而避免在 電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換需求發(fā)生變更時引起修改ETL工具程序代碼的繁雜工作量。動態(tài)實現(xiàn)電 信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換,為電信系統(tǒng)提供準確、統(tǒng)一的數(shù)據(jù)文件。
圖1示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法的一個實施例的流程圖;圖2示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法的一個實施例的流程圖;圖3示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的系統(tǒng)的一個實施例的結(jié)構(gòu)示意 圖;圖4示出本發(fā)明由數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)的一個實施例提供的圖形化界 面;圖5示出了數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)的一個實施例將目標(biāo)數(shù)據(jù)文件中的記錄裝 載到數(shù)據(jù)庫系統(tǒng)中的進度監(jiān)控界面;圖6示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的系統(tǒng)的一個實施例的結(jié)構(gòu)示意 圖;圖7示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的系統(tǒng)的一個實施例的結(jié)構(gòu)示意
6圖8示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法的一個具體應(yīng)用例的流程 圖9示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的系統(tǒng)的一個具體應(yīng)用例的流程
具體實施方式
下面參照附圖對本發(fā)明進行更全面的描述,來說明本發(fā)明示例性的各種實施例。圖1示出根據(jù)本發(fā)明的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例的流程圖。如圖1所示,步驟102,根據(jù)業(yè)務(wù)標(biāo)識獲取預(yù)置的電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則。本發(fā)明 提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例中,根據(jù)業(yè)務(wù)標(biāo)識(通常為數(shù)字化的業(yè)務(wù) 代碼)從存儲的電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則信息中直接獲取電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則。本發(fā)明提 供的數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例中,在系統(tǒng)數(shù)據(jù)庫中存儲有用戶預(yù)先定制好的電信業(yè) 務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則信息和函數(shù)集等信息。稍后對電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則信息和函數(shù)集進行簡 要介紹。步驟104,根據(jù)數(shù)據(jù)轉(zhuǎn)換規(guī)則和預(yù)置的業(yè)務(wù)實現(xiàn)類的模板,動態(tài)生成業(yè)務(wù)實現(xiàn)類的 JAVA源代碼。例如,在步驟104中根據(jù)業(yè)務(wù)標(biāo)識獲取已配置好的業(yè)務(wù)規(guī)則信息,隨后根據(jù)業(yè) 務(wù)實現(xiàn)類模版文件,動態(tài)實例化生成業(yè)務(wù)實現(xiàn)類JAVA源代碼文件。稍后對JAVA源代碼存 儲格式進行簡要介紹。步驟106,編譯業(yè)務(wù)實現(xiàn)類的JAVA源代碼生成JAVA程序代碼。稍后對動態(tài)編譯業(yè) 務(wù)實現(xiàn)類的JAVA源代碼生成JAVA虛擬機能執(zhí)行的程序代碼技術(shù)進行簡要介紹。步驟108,動態(tài)加載并執(zhí)行業(yè)務(wù)實現(xiàn)類,將源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件。例如,采 用動態(tài)加載JAVA類和反射調(diào)用JAVA函數(shù)的技術(shù),加載并執(zhí)行業(yè)務(wù)實現(xiàn)類模板文件,讀取源 數(shù)據(jù)文件,生成目標(biāo)數(shù)據(jù)文件。源數(shù)據(jù)文件包括系統(tǒng)參數(shù)或業(yè)務(wù)標(biāo)識,如電信業(yè)務(wù)的種類、 套餐名稱等信息。生成的目標(biāo)數(shù)據(jù)文件提供給其他系統(tǒng)使用(如利用數(shù)據(jù)庫自帶的數(shù)據(jù)文 件導(dǎo)入工具,將目標(biāo)數(shù)據(jù)文件中的記錄裝載到數(shù)據(jù)庫系統(tǒng)中)。稍后對動態(tài)加載技術(shù)、反射 (JAVA Reflection)調(diào)用技術(shù)以及目標(biāo)數(shù)據(jù)文件進行簡要介紹。本發(fā)明提供的電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法的一個實施例中,電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī) 則信息包括電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則和對應(yīng)轉(zhuǎn)換規(guī)則的編譯狀態(tài)信息。本發(fā)明中所提及的轉(zhuǎn) 換規(guī)則的編譯狀態(tài)信息主要存放在編譯狀態(tài)信息表中(參見下表1)。
CN 101958987 A
說明 書4/18頁
圖 003
圖
權(quán)利要求
一種電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的方法,其特征在于,所述方法包括根據(jù)業(yè)務(wù)標(biāo)識獲取預(yù)置的電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則;根據(jù)所述數(shù)據(jù)轉(zhuǎn)換規(guī)則和預(yù)置的業(yè)務(wù)實現(xiàn)類的模板,動態(tài)生成所述業(yè)務(wù)實現(xiàn)類的JAVA源代碼,并編譯生成JAVA程序代碼;動態(tài)加載并執(zhí)行所述業(yè)務(wù)實現(xiàn)類,將源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動態(tài)加載并執(zhí)行所述業(yè)務(wù)實現(xiàn)類的 步驟包括采用動態(tài)加載JAVA類技術(shù)和反射調(diào)用JAVA函數(shù)技術(shù)動態(tài)加載并執(zhí)行所述業(yè)務(wù)實現(xiàn)類。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括步驟 通過圖形化界面接收用戶對所述數(shù)據(jù)轉(zhuǎn)換規(guī)則的配置。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括步驟 通過圖形化界面接收用戶對函數(shù)集的定義和/或擴展。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述函數(shù)集包括從電話號碼中拆分接入 號碼、區(qū)號、運營商信息的函數(shù)。
6.一種電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換的系統(tǒng),其特征在于,所述系統(tǒng)(300,900)包括 數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng)(302,902),用于存儲電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則和函數(shù)集; 數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)(306,906),用于從所述數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng)(302,902)中獲取所述電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則;根據(jù)所述轉(zhuǎn)換規(guī)則和預(yù)置的業(yè)務(wù)實現(xiàn)類的模板, 動態(tài)生成業(yè)務(wù)實現(xiàn)類的JAVA源代碼,并編譯生成JAVA程序代碼;以及動態(tài)加載并執(zhí)行所述 業(yè)務(wù)實現(xiàn)類,根據(jù)源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境 子系統(tǒng)(304,904),用于通過圖形化界面接收用戶對所述電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則的配置,將 修改或增加的所述數(shù)據(jù)轉(zhuǎn)換規(guī)則保存到所述數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng)(302,902);以及提 供用戶自定義函數(shù)編程接口,供用戶擴展所述函數(shù)集。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)(904) 包括數(shù)據(jù)轉(zhuǎn)換規(guī)則配置模塊(9042),用于對預(yù)置的所述數(shù)據(jù)轉(zhuǎn)換規(guī)則進行維護,引導(dǎo)用戶 配置新的數(shù)據(jù)轉(zhuǎn)換規(guī)則,并負責(zé)導(dǎo)入/導(dǎo)出選定的所述數(shù)據(jù)轉(zhuǎn)換規(guī)則;函數(shù)集配置模塊(9044),用于對預(yù)置的所述函數(shù)集進行維護,負責(zé)引導(dǎo)用戶配置新的 函數(shù),以及導(dǎo)入/導(dǎo)出所述函數(shù)集或單個函數(shù);系統(tǒng)維護模塊(9046),用于存儲所述數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)(904)的系統(tǒng)參數(shù) 和生成的系統(tǒng)日志。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述數(shù)據(jù)轉(zhuǎn)換規(guī)則配置模塊(9042)包括數(shù)據(jù)轉(zhuǎn)換規(guī)則維護子模塊(90422),用于負責(zé)轉(zhuǎn)換規(guī)則列表的樹狀展現(xiàn)和所述轉(zhuǎn)換規(guī) 則的信息展現(xiàn);數(shù)據(jù)轉(zhuǎn)換規(guī)則配置向?qū)ё幽K(90424),用于負責(zé)引導(dǎo)用戶逐步完成所述數(shù)據(jù)轉(zhuǎn)換規(guī) 則的配置;數(shù)據(jù)轉(zhuǎn)換規(guī)則導(dǎo)入/導(dǎo)出子模塊(90426),用于負責(zé)導(dǎo)入和導(dǎo)出選定的所述轉(zhuǎn)換規(guī)則, 供用戶備份和/或部署。
10.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述函數(shù)集配置模塊(9044)包括 函數(shù)集維護子模塊(90442),用于對預(yù)置的所述函數(shù)集進行維護;自定義函數(shù)向?qū)ё幽K(90444),用于負責(zé)引導(dǎo)用戶完成所述函數(shù)的定義; 函數(shù)導(dǎo)入/導(dǎo)出子模塊(90446),用于導(dǎo)入/導(dǎo)出所述函數(shù)集或單個函數(shù),供用戶備份 和/或部署。
11.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述系統(tǒng)維護模塊(9046)包括系統(tǒng)參數(shù)子模塊(90462),用于配置和維護所述數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)(904) 的系統(tǒng)參數(shù);系統(tǒng)日志子模塊(90464),用于生成和存儲所述數(shù)據(jù)轉(zhuǎn)換規(guī)則生成環(huán)境子系統(tǒng)(904) 的系統(tǒng)日志。
12.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)(906)包括數(shù)據(jù)轉(zhuǎn)換規(guī)則引擎(9062),用于從所述數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng)(302,902)中獲取電 信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則;動態(tài)生成所述業(yè)務(wù)實現(xiàn)類的JAVA源代碼,并編譯生成所述JAVA程序 代碼;以及動態(tài)加載并執(zhí)行所述業(yè)務(wù)實現(xiàn)類,將源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件;系統(tǒng)維護模塊(9064),用于存儲所述數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)(906)的系統(tǒng)參數(shù)和生 成的系統(tǒng)日志。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述數(shù)據(jù)轉(zhuǎn)換規(guī)則引擎(9062)包括 源代碼生成器(90622),用于根據(jù)所述數(shù)據(jù)轉(zhuǎn)換規(guī)則和所述預(yù)置的業(yè)務(wù)實現(xiàn)類的模板,動態(tài)生成業(yè)務(wù)實現(xiàn)類的JAVA源代碼文件;源代碼編譯器(90624),用于編譯所述業(yè)務(wù)實現(xiàn)類的JAVA源代碼文件,生成所述JAVA 程序代碼;以及數(shù)據(jù)轉(zhuǎn)換規(guī)則處理器(90626),用于讀寫數(shù)據(jù)文件,負責(zé)電信業(yè)務(wù)數(shù)據(jù)的轉(zhuǎn)換;以及集 中和處理系統(tǒng)錯誤。
14.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述系統(tǒng)維護模塊(9064)包括系統(tǒng)參數(shù)子模塊(90642),用于配置和維護所述數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)(906)的系 統(tǒng)參數(shù);系統(tǒng)日志子模塊(90644),用于生成和存儲所述數(shù)據(jù)轉(zhuǎn)換規(guī)則調(diào)度子系統(tǒng)(906)的系統(tǒng)日志。
15.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述數(shù)據(jù)轉(zhuǎn)換規(guī)則存儲子系統(tǒng)(302, 902)存儲的所述函數(shù)集包括用于從電話號碼中拆分接入號碼、區(qū)號、運營商信息的函數(shù)。
全文摘要
本發(fā)明公開了一種電信業(yè)務(wù)數(shù)據(jù)動態(tài)轉(zhuǎn)換方法及其系統(tǒng),方法包括獲取預(yù)置的電信業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)換規(guī)則,根據(jù)數(shù)據(jù)轉(zhuǎn)換規(guī)則和預(yù)置的業(yè)務(wù)實現(xiàn)類的模板,動態(tài)生成業(yè)務(wù)實現(xiàn)類的JAVA源代碼,并編譯生成JAVA程序代碼;動態(tài)加載并執(zhí)行業(yè)務(wù)實現(xiàn)類,將源數(shù)據(jù)文件生成目標(biāo)數(shù)據(jù)文件。本發(fā)明針對電信業(yè)務(wù)數(shù)據(jù)特性建立了豐富的函數(shù)集,同時提供函數(shù)自定義接口,便于用戶自定義和擴展函數(shù)集;不同于當(dāng)前腳本解釋型ETL工具,本發(fā)明采用動態(tài)編譯、動態(tài)加載,以及JAVA反射技術(shù),提高了數(shù)據(jù)轉(zhuǎn)換效率,具有很強的跨平臺特性和應(yīng)用靈活性。
文檔編號H04M15/00GK101958987SQ200910152289
公開日2011年1月26日 申請日期2009年7月14日 優(yōu)先權(quán)日2009年7月14日
發(fā)明者何震葦, 劉春 , 向勇, 張青, 鄒學(xué)鋒, 黃平 申請人:中國電信股份有限公司