您的位置:網(wǎng)站首頁(yè) > 優(yōu)秀論文 > 正文
NGN話單處理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)
作者:張帆來(lái)源:原創(chuàng)日期:2013-12-17人氣:1095
2006年底,河南網(wǎng)通公司對(duì)全省電話網(wǎng)絡(luò)進(jìn)行大改造,新建的網(wǎng)絡(luò)打破了以前的網(wǎng)絡(luò)結(jié)構(gòu),以兩個(gè)功能強(qiáng)大的新一代交換機(jī)(SS1,SS2)為樞紐,連接全省所有的市話交換機(jī)(市話、網(wǎng)關(guān)、匯接、長(zhǎng)途等交換機(jī)),對(duì)全省所有的話務(wù)進(jìn)行匯接、交換、統(tǒng)計(jì),交換機(jī)對(duì)每個(gè)地市的話務(wù)情況進(jìn)行詳細(xì)記錄,這樣一來(lái),對(duì)于我們網(wǎng)管來(lái)說(shuō),怎樣統(tǒng)計(jì)SS上的話單成為了一個(gè)新的問(wèn)題,由于省公司沒(méi)有提供相應(yīng)的程序,所以,只有自己想辦法解決。于是,經(jīng)過(guò)近1個(gè)月的努力,我開(kāi)發(fā)出了NGN話單處理程序。
1、NGN話單處理的概念
NGN話單就是功能強(qiáng)大的兩臺(tái)交換機(jī)SS1和SS2生成的話單文件,該文件包括3種類型:市話文件,長(zhǎng)話文件,對(duì)端入網(wǎng)。兩臺(tái)交換機(jī)互為負(fù)荷分擔(dān)。每個(gè)交換機(jī)產(chǎn)生的每種類型的文件數(shù)量相等,一天的文件為96個(gè),兩臺(tái)交換機(jī)每天共產(chǎn)生96*3*2個(gè)文件,這些文件存放在省公司的兩臺(tái)專門(mén)的ftp服務(wù)器上。要想處理話單文件首先第一步要每天下載這些文件,第二步對(duì)話單文件批量更名(轉(zhuǎn)換程序?qū)D(zhuǎn)換前的文件名稱有嚴(yán)格規(guī)定),然后用轉(zhuǎn)換程序?qū)⑦@些二進(jìn)制文件轉(zhuǎn)換成標(biāo)準(zhǔn)文本格式(廠家對(duì)二進(jìn)制文件的格式保密,只提供話單的格式轉(zhuǎn)換程序,將二進(jìn)制文件轉(zhuǎn)換為文本文件),具體話單樣式如下(兩條記錄):
1086A2AD3102393396000000158393481502007/08/2322:00:34.532007/08/2322:01:22.900000048.400062220017300000006000000001001583934815000000000EE
最后,對(duì)文本文件編程讀取內(nèi)容,插入到相應(yīng)的庫(kù)表中,再編寫(xiě)程序?qū)?kù)表中的文件進(jìn)行統(tǒng)計(jì)分析,得到我們需要的內(nèi)容,最終形成報(bào)表。
2、NGN話單處理系統(tǒng)的設(shè)計(jì)
話單處理系統(tǒng)采用兩臺(tái)服務(wù)器,一臺(tái)作為數(shù)據(jù)庫(kù)服務(wù)器,數(shù)據(jù)庫(kù)采用sqlserver2000數(shù)據(jù)庫(kù),根據(jù)原始話單的特征,建立數(shù)據(jù)庫(kù)ngnbill,分配用戶py_ngnser,passwd:zhangfan,考慮到話單數(shù)據(jù)的量比較大,修改庫(kù)文件大小為10G建立原始庫(kù)表6張,ss1市話表ss1_loc,ss1長(zhǎng)途表ss1_tol,ss1對(duì)端入網(wǎng)ss1_tom,ss2市話表ss2_loc,ss2長(zhǎng)途表ss2_tol,ss2對(duì)端入網(wǎng)ss2_tom。
另外一臺(tái)服務(wù)器作應(yīng)用程序服務(wù)器,負(fù)責(zé)運(yùn)行程序,定時(shí)從省公司的ftp服務(wù)器上下載話單文件,然后執(zhí)行一系列程序,直到數(shù)據(jù)入庫(kù),分析出結(jié)果。
我開(kāi)發(fā)程序時(shí)使用的Powerbuilder6.5以及sqlserver2000數(shù)據(jù)庫(kù)。Powerbuilder6.5是Powersoft公司開(kāi)發(fā)的用于開(kāi)發(fā)大型數(shù)據(jù)庫(kù)應(yīng)用的工具,它是以客戶/服務(wù)器體系結(jié)構(gòu)來(lái)開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序,也是一種面向?qū)ο蟮膱D形方式的集成開(kāi)發(fā)工具。
3、NGN話單處理系統(tǒng)的程序簡(jiǎn)要流程圖:
4、各模塊說(shuō)明
4.1文件自動(dòng)下載,利用DOS的批處理程序和WINDOWS的計(jì)劃任務(wù)實(shí)現(xiàn)了自動(dòng)FTP功能,以下為程序部分源碼(略)
該程序主要是利用dos批處理取得當(dāng)前的日期,然后計(jì)算出昨天的日期,合成文件名的共性部分(文件名舉例:SISDN_200708230015.393.PY_01.LOC.04.0001),然后利用mget命令將所有符合條件的文件下載到本地服務(wù)器相應(yīng)目錄,說(shuō)明:利用批處理程序?qū)崿F(xiàn)日期的加減較為繁瑣,上面的程序用到了一個(gè)第三方的小程序date1,用來(lái)取前一天的日期,最終用windows的計(jì)劃任務(wù)定時(shí)運(yùn)行程序即可。本模塊我還提供了另外一種方式手動(dòng)方式下載,具體是利用現(xiàn)有的網(wǎng)絡(luò)下載工具cuteftp,可以時(shí)時(shí)根據(jù)需要下載自己需要的相應(yīng)日期或時(shí)區(qū)的文件,由于是現(xiàn)有的程序,不再介紹。
4.2文件批量更名模塊
上面提到了剛下載的文件的名字比較長(zhǎng),具體文件名舉例如下:
并且不符合轉(zhuǎn)換程序?qū)π枰D(zhuǎn)換文件的文件名的要求,具體要求文件名格式為d********.s12,“*”為任意數(shù)字,轉(zhuǎn)換后的文件名見(jiàn)下
SISDN_200708230245.393.PY_01.LOC.04.0011
SISDN_200708230015.393.PY_01.TOL.04.0001
SISDN_200708230045.393.PY_01.TOM.04.0003
該部分的程序用powerbuilder6.5編寫(xiě),部分主要代碼(略):
該段程序完成的功能是將計(jì)算機(jī)上相應(yīng)目錄下的文件找到,并按照事先規(guī)定的文件名規(guī)則進(jìn)行批量更名,主要用到了windows自帶的api函數(shù)movefile。
4.3文件轉(zhuǎn)換模塊
該程序主要功能是將符合文件名要求的話單文件從二進(jìn)制格式轉(zhuǎn)換為文本格式,另外還將轉(zhuǎn)換后的許多文件合成一個(gè)文本文件。其他不再介紹。
4.4文本文件入庫(kù)
該模塊的主要功能為將文本文件逐條讀取,然后插入到數(shù)據(jù)庫(kù)響應(yīng)的數(shù)據(jù)庫(kù)表中該程序有powerbuilder6.5編寫(xiě),主要是在窗口中的“開(kāi)始”按鈕中編寫(xiě)代碼,代碼省略。
該段代碼主要利用powerbuilder6.5的讀取文本文件的函數(shù)功能,將文本文件打開(kāi),然后循環(huán)逐條讀取,將讀取的字符串按照字段長(zhǎng)度逐級(jí)截取,然后將各個(gè)字符串插入到數(shù)據(jù)庫(kù)表中,直到最后一條為止,頁(yè)面的開(kāi)始時(shí)間和終止時(shí)間用來(lái)觀察所有一天的數(shù)據(jù)處理完成所需要的時(shí)間,判斷處理速度。
4.5話單的統(tǒng)計(jì)分析
話單的統(tǒng)計(jì)主要完成的功能是將話單按主叫或被叫號(hào)碼分析,根據(jù)號(hào)碼段判斷出所屬局向,從而計(jì)算出不同的局向產(chǎn)生的市話,長(zhǎng)途,以及對(duì)端入網(wǎng)的呼叫總時(shí)長(zhǎng),進(jìn)而計(jì)算出話務(wù)量,這在以前是不可能實(shí)現(xiàn)的,通過(guò)對(duì)這些日常話務(wù)量的監(jiān)控,發(fā)現(xiàn)話務(wù)量激增或銳減時(shí)可以立即對(duì)話單進(jìn)行核對(duì),從而做到發(fā)現(xiàn)問(wèn)題及時(shí)應(yīng)對(duì)。
該部分的程序編寫(xiě)主要是數(shù)據(jù)庫(kù)編程,編寫(xiě)好的數(shù)據(jù)庫(kù)存儲(chǔ)過(guò)程用powerbuilder6.5編寫(xiě)程序調(diào)用運(yùn)行,只所以這樣做主要考慮到ngn話單的量特別大,每天都有幾百萬(wàn)條數(shù)據(jù)需要處理,如果單獨(dú)用powerbuilder6.5和簡(jiǎn)單的sql語(yǔ)句處理起來(lái)速度相當(dāng)慢,用數(shù)據(jù)庫(kù)存儲(chǔ)過(guò)程來(lái)處理會(huì)大大加快處理速度,這樣我們用同樣的服務(wù)器處理起來(lái)速度會(huì)成倍提高。主要的存儲(chǔ)舉例:市話處理存儲(chǔ)過(guò)程pro_sh_qq(將主叫號(hào)碼和被叫號(hào)碼分別截取前4位插入到千群表中),pro_zbjx(將千群表中的數(shù)據(jù)按照目前濮陽(yáng)各局向所包含的千群來(lái)增加主被叫局向同時(shí)插入到局向表中),這兩個(gè)存儲(chǔ)過(guò)程同時(shí)會(huì)處理長(zhǎng)途和對(duì)端入網(wǎng)的數(shù)據(jù),只不過(guò)截取的局向長(zhǎng)度不同,其他相同。有了主叫和被叫局向,我們就可以對(duì)所有的局向通話的總量進(jìn)行計(jì)算,從而得出任意局向間的通話情況。具體存儲(chǔ)過(guò)程代碼省略。
注意事項(xiàng):backuplogngnbillwithno_log的功能是截取數(shù)據(jù)庫(kù)日志文件長(zhǎng)度,因?yàn)閿?shù)據(jù)量比較大,日志增長(zhǎng)比較快,要及時(shí)截取,避免硬盤(pán)空間很快就滿時(shí)造成程序停止向下運(yùn)行。
4.6數(shù)據(jù)存儲(chǔ)
該部分的功能是將數(shù)據(jù)庫(kù)中處理后的數(shù)據(jù),根據(jù)所需保存成exccel文件,以便于形成報(bào)表。具體是利用powerbuilder6.5編寫(xiě),利用數(shù)據(jù)窗口的檢索功能將符合條件的數(shù)據(jù)檢索出來(lái),然后保存成excel文件。
另外值得注意的是如果處理的是對(duì)端入網(wǎng)時(shí)或者是對(duì)全區(qū)的數(shù)據(jù)進(jìn)行保存時(shí),不能保存成excel文件,因?yàn)閑xcel文件最大保存65536條記錄,這時(shí)只能保存成txt文件。
1、NGN話單處理的概念
NGN話單就是功能強(qiáng)大的兩臺(tái)交換機(jī)SS1和SS2生成的話單文件,該文件包括3種類型:市話文件,長(zhǎng)話文件,對(duì)端入網(wǎng)。兩臺(tái)交換機(jī)互為負(fù)荷分擔(dān)。每個(gè)交換機(jī)產(chǎn)生的每種類型的文件數(shù)量相等,一天的文件為96個(gè),兩臺(tái)交換機(jī)每天共產(chǎn)生96*3*2個(gè)文件,這些文件存放在省公司的兩臺(tái)專門(mén)的ftp服務(wù)器上。要想處理話單文件首先第一步要每天下載這些文件,第二步對(duì)話單文件批量更名(轉(zhuǎn)換程序?qū)D(zhuǎn)換前的文件名稱有嚴(yán)格規(guī)定),然后用轉(zhuǎn)換程序?qū)⑦@些二進(jìn)制文件轉(zhuǎn)換成標(biāo)準(zhǔn)文本格式(廠家對(duì)二進(jìn)制文件的格式保密,只提供話單的格式轉(zhuǎn)換程序,將二進(jìn)制文件轉(zhuǎn)換為文本文件),具體話單樣式如下(兩條記錄):
1086A2AD3102393396000000158393481502007/08/2322:00:34.532007/08/2322:01:22.900000048.400062220017300000006000000001001583934815000000000EE
最后,對(duì)文本文件編程讀取內(nèi)容,插入到相應(yīng)的庫(kù)表中,再編寫(xiě)程序?qū)?kù)表中的文件進(jìn)行統(tǒng)計(jì)分析,得到我們需要的內(nèi)容,最終形成報(bào)表。
2、NGN話單處理系統(tǒng)的設(shè)計(jì)
話單處理系統(tǒng)采用兩臺(tái)服務(wù)器,一臺(tái)作為數(shù)據(jù)庫(kù)服務(wù)器,數(shù)據(jù)庫(kù)采用sqlserver2000數(shù)據(jù)庫(kù),根據(jù)原始話單的特征,建立數(shù)據(jù)庫(kù)ngnbill,分配用戶py_ngnser,passwd:zhangfan,考慮到話單數(shù)據(jù)的量比較大,修改庫(kù)文件大小為10G建立原始庫(kù)表6張,ss1市話表ss1_loc,ss1長(zhǎng)途表ss1_tol,ss1對(duì)端入網(wǎng)ss1_tom,ss2市話表ss2_loc,ss2長(zhǎng)途表ss2_tol,ss2對(duì)端入網(wǎng)ss2_tom。
另外一臺(tái)服務(wù)器作應(yīng)用程序服務(wù)器,負(fù)責(zé)運(yùn)行程序,定時(shí)從省公司的ftp服務(wù)器上下載話單文件,然后執(zhí)行一系列程序,直到數(shù)據(jù)入庫(kù),分析出結(jié)果。
我開(kāi)發(fā)程序時(shí)使用的Powerbuilder6.5以及sqlserver2000數(shù)據(jù)庫(kù)。Powerbuilder6.5是Powersoft公司開(kāi)發(fā)的用于開(kāi)發(fā)大型數(shù)據(jù)庫(kù)應(yīng)用的工具,它是以客戶/服務(wù)器體系結(jié)構(gòu)來(lái)開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序,也是一種面向?qū)ο蟮膱D形方式的集成開(kāi)發(fā)工具。
3、NGN話單處理系統(tǒng)的程序簡(jiǎn)要流程圖:
4、各模塊說(shuō)明
4.1文件自動(dòng)下載,利用DOS的批處理程序和WINDOWS的計(jì)劃任務(wù)實(shí)現(xiàn)了自動(dòng)FTP功能,以下為程序部分源碼(略)
該程序主要是利用dos批處理取得當(dāng)前的日期,然后計(jì)算出昨天的日期,合成文件名的共性部分(文件名舉例:SISDN_200708230015.393.PY_01.LOC.04.0001),然后利用mget命令將所有符合條件的文件下載到本地服務(wù)器相應(yīng)目錄,說(shuō)明:利用批處理程序?qū)崿F(xiàn)日期的加減較為繁瑣,上面的程序用到了一個(gè)第三方的小程序date1,用來(lái)取前一天的日期,最終用windows的計(jì)劃任務(wù)定時(shí)運(yùn)行程序即可。本模塊我還提供了另外一種方式手動(dòng)方式下載,具體是利用現(xiàn)有的網(wǎng)絡(luò)下載工具cuteftp,可以時(shí)時(shí)根據(jù)需要下載自己需要的相應(yīng)日期或時(shí)區(qū)的文件,由于是現(xiàn)有的程序,不再介紹。
4.2文件批量更名模塊
上面提到了剛下載的文件的名字比較長(zhǎng),具體文件名舉例如下:
并且不符合轉(zhuǎn)換程序?qū)π枰D(zhuǎn)換文件的文件名的要求,具體要求文件名格式為d********.s12,“*”為任意數(shù)字,轉(zhuǎn)換后的文件名見(jiàn)下
SISDN_200708230245.393.PY_01.LOC.04.0011
SISDN_200708230015.393.PY_01.TOL.04.0001
SISDN_200708230045.393.PY_01.TOM.04.0003
該部分的程序用powerbuilder6.5編寫(xiě),部分主要代碼(略):
該段程序完成的功能是將計(jì)算機(jī)上相應(yīng)目錄下的文件找到,并按照事先規(guī)定的文件名規(guī)則進(jìn)行批量更名,主要用到了windows自帶的api函數(shù)movefile。
4.3文件轉(zhuǎn)換模塊
該程序主要功能是將符合文件名要求的話單文件從二進(jìn)制格式轉(zhuǎn)換為文本格式,另外還將轉(zhuǎn)換后的許多文件合成一個(gè)文本文件。其他不再介紹。
4.4文本文件入庫(kù)
該模塊的主要功能為將文本文件逐條讀取,然后插入到數(shù)據(jù)庫(kù)響應(yīng)的數(shù)據(jù)庫(kù)表中該程序有powerbuilder6.5編寫(xiě),主要是在窗口中的“開(kāi)始”按鈕中編寫(xiě)代碼,代碼省略。
該段代碼主要利用powerbuilder6.5的讀取文本文件的函數(shù)功能,將文本文件打開(kāi),然后循環(huán)逐條讀取,將讀取的字符串按照字段長(zhǎng)度逐級(jí)截取,然后將各個(gè)字符串插入到數(shù)據(jù)庫(kù)表中,直到最后一條為止,頁(yè)面的開(kāi)始時(shí)間和終止時(shí)間用來(lái)觀察所有一天的數(shù)據(jù)處理完成所需要的時(shí)間,判斷處理速度。
4.5話單的統(tǒng)計(jì)分析
話單的統(tǒng)計(jì)主要完成的功能是將話單按主叫或被叫號(hào)碼分析,根據(jù)號(hào)碼段判斷出所屬局向,從而計(jì)算出不同的局向產(chǎn)生的市話,長(zhǎng)途,以及對(duì)端入網(wǎng)的呼叫總時(shí)長(zhǎng),進(jìn)而計(jì)算出話務(wù)量,這在以前是不可能實(shí)現(xiàn)的,通過(guò)對(duì)這些日常話務(wù)量的監(jiān)控,發(fā)現(xiàn)話務(wù)量激增或銳減時(shí)可以立即對(duì)話單進(jìn)行核對(duì),從而做到發(fā)現(xiàn)問(wèn)題及時(shí)應(yīng)對(duì)。
該部分的程序編寫(xiě)主要是數(shù)據(jù)庫(kù)編程,編寫(xiě)好的數(shù)據(jù)庫(kù)存儲(chǔ)過(guò)程用powerbuilder6.5編寫(xiě)程序調(diào)用運(yùn)行,只所以這樣做主要考慮到ngn話單的量特別大,每天都有幾百萬(wàn)條數(shù)據(jù)需要處理,如果單獨(dú)用powerbuilder6.5和簡(jiǎn)單的sql語(yǔ)句處理起來(lái)速度相當(dāng)慢,用數(shù)據(jù)庫(kù)存儲(chǔ)過(guò)程來(lái)處理會(huì)大大加快處理速度,這樣我們用同樣的服務(wù)器處理起來(lái)速度會(huì)成倍提高。主要的存儲(chǔ)舉例:市話處理存儲(chǔ)過(guò)程pro_sh_qq(將主叫號(hào)碼和被叫號(hào)碼分別截取前4位插入到千群表中),pro_zbjx(將千群表中的數(shù)據(jù)按照目前濮陽(yáng)各局向所包含的千群來(lái)增加主被叫局向同時(shí)插入到局向表中),這兩個(gè)存儲(chǔ)過(guò)程同時(shí)會(huì)處理長(zhǎng)途和對(duì)端入網(wǎng)的數(shù)據(jù),只不過(guò)截取的局向長(zhǎng)度不同,其他相同。有了主叫和被叫局向,我們就可以對(duì)所有的局向通話的總量進(jìn)行計(jì)算,從而得出任意局向間的通話情況。具體存儲(chǔ)過(guò)程代碼省略。
注意事項(xiàng):backuplogngnbillwithno_log的功能是截取數(shù)據(jù)庫(kù)日志文件長(zhǎng)度,因?yàn)閿?shù)據(jù)量比較大,日志增長(zhǎng)比較快,要及時(shí)截取,避免硬盤(pán)空間很快就滿時(shí)造成程序停止向下運(yùn)行。
4.6數(shù)據(jù)存儲(chǔ)
該部分的功能是將數(shù)據(jù)庫(kù)中處理后的數(shù)據(jù),根據(jù)所需保存成exccel文件,以便于形成報(bào)表。具體是利用powerbuilder6.5編寫(xiě),利用數(shù)據(jù)窗口的檢索功能將符合條件的數(shù)據(jù)檢索出來(lái),然后保存成excel文件。
另外值得注意的是如果處理的是對(duì)端入網(wǎng)時(shí)或者是對(duì)全區(qū)的數(shù)據(jù)進(jìn)行保存時(shí),不能保存成excel文件,因?yàn)閑xcel文件最大保存65536條記錄,這時(shí)只能保存成txt文件。
欄目分類
熱門(mén)排行
推薦信息
- 高?!耙徽臼健睂W(xué)生社區(qū)協(xié)同育人模式的實(shí)踐研究
- 數(shù)字化轉(zhuǎn)型下的高校美術(shù)教育創(chuàng)新路徑探析
- 扎根現(xiàn)實(shí)——巴蜀鄉(xiāng)土寫(xiě)實(shí)繪畫(huà)淺論
- 多技法運(yùn)用下的油畫(huà)創(chuàng)作及表現(xiàn)分析
- “學(xué)院派”工筆畫(huà)家美學(xué)風(fēng)格研究
- 探新媒體視域下高校動(dòng)畫(huà)教學(xué)改革研討
- 新中式風(fēng)格在茶室空間設(shè)計(jì)中的應(yīng)用研究
- 高校美術(shù)教育中跨學(xué)科融合模式研究
- 課程思政背景下在線精品課程建設(shè)與實(shí)踐 ——以職業(yè)教育國(guó)家在線精品課程《圖形創(chuàng)意》為例
- 讓流動(dòng)的線條成就藝術(shù)美
期刊知識(shí)
- 2025年中科院分區(qū)表已公布!Scientific Reports降至三區(qū)
- 官方認(rèn)定!CSSCI南大核心首批191家“青年學(xué)者友好期刊名單”
- 2023JCR影響因子正式公布!
- 國(guó)內(nèi)核心期刊分級(jí)情況概覽及說(shuō)明!本篇適用人群:需要發(fā)南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的學(xué)者
- 我用了一個(gè)很復(fù)雜的圖,幫你們解釋下“23版最新北大核心目錄有效期問(wèn)題”。
- 重磅!CSSCI來(lái)源期刊(2023-2024版)最新期刊目錄看點(diǎn)分析!全網(wǎng)首發(fā)!
- CSSCI官方早就公布了最新南核目錄,有心的人已經(jīng)拿到并且投入使用!附南核目錄新增期刊!
- 北大核心期刊目錄換屆,我們應(yīng)該熟知的10個(gè)知識(shí)點(diǎn)。
- 注意,最新期刊論文格式標(biāo)準(zhǔn)已發(fā)布,論文寫(xiě)作規(guī)則發(fā)生重大變化!文字版GB/T 7713.2—2022 學(xué)術(shù)論文編寫(xiě)規(guī)則
- 盤(pán)點(diǎn)那些評(píng)職稱超管用的資源,1,3和5已經(jīng)“絕種”了