

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 數據挖掘技術在電信計費系統(tǒng)中</p><p><b> 的應用 </b></p><p><b> 學 生: </b></p><p><b> 學 號: </b></p><p> 專 業(yè):信息管理與信息系統(tǒng)</p>
2、;<p> 班 級:2009級1班</p><p><b> 指導教師: </b></p><p><b> 二O一三年六月</b></p><p> 數據挖掘技術在電信計費系統(tǒng)中的應用</p><p><b> 摘要</b></p>
3、<p> 本畢業(yè)論文所介紹的是數據挖掘技術在電信計費系統(tǒng)中的應用。數據挖掘是從大量的、不完全的、有噪聲的、模糊的、隨機的數據中提取隱含在其中的、事先不知道的、但又是潛在有用的信息和知識的過程。隨著網絡的高速發(fā)展,一些大型廠商推出了服務器出租這項業(yè)務。為了使得出租商快捷、方便以及高效的統(tǒng)計出用戶的登錄信息及應繳費情況,本論文開發(fā)了一個電信計費系統(tǒng)。</p><p> 本系統(tǒng)采用C/S架構,在UNIX
4、環(huán)境下以C++為主要的開發(fā)語言開發(fā)完成??蛻舳说墓δ馨ǘ〞r從服務器日志文件采集用戶數據,匹配登入/登出信息,向服務器發(fā)送數據;服務端的功能包括接收客戶端發(fā)送過來的數據,存儲數據和整合數據等。</p><p> 關鍵詞:畢業(yè)設計;電信計費系統(tǒng);數據匹配;數據整合 </p><p> The Application of Data Mining Technology in the Tel
5、ecom Toll System</p><p><b> Abstract</b></p><p> Described in this thesis is the application of data mining technology in the telecommunications billing system. Data mining is impl
6、ied from a large number of incomplete, noisy, fuzzy, random data in which, not known in advance, but potentially useful information and knowledge. With the rapid development of the Network, some large companies such as C
7、hina Telecom launched the server rent business. In order to statistic user login information and charge more fast, conveniently and efficiently, a Te</p><p> This system is programmed by C++ language with C
8、/S architecture in UNIX operating system. The functions in client port include reading user information from server log file ,matching data and sending data to a server. The functions in sever port include receiving data
9、 from client, data storage and integrating data.</p><p> Keywords: Graduation design, the Telecom toll system, Data match, Data integration</p><p><b> 目 錄</b></p><p&g
10、t;<b> 緒論</b></p><p><b> 1.1系統(tǒng)背景</b></p><p> 在電信的業(yè)務中,有一種Unix實驗室出租業(yè)務。只要用戶向電信運營商申請一個Unix帳號,就可以遠程登錄Unix實驗室,并使用Unix系統(tǒng)。用戶使用電信運營商提供的Unix實驗室的服務需要繳納一定的費用,電信運營商需要一套數據采集系統(tǒng),把用戶登錄實
11、驗室的時間長度數據采集起來,便于在指定的時間范圍內作為對用戶的收費依據。要求數據采集系統(tǒng)必須采集如下信息:登錄用戶名,登錄的時間,登出的時間,登錄總的在線時間,登錄的實驗室IP,用戶的終端IP等信息。系統(tǒng)需要開發(fā)這樣一個通用的數據采集系統(tǒng)程序來采集Unix機器記錄的用戶登入和登出的原始記錄,并將這些記錄解析匹配成用戶的登錄記錄,然后發(fā)送給數據采集服務器,在服務器端將這些數據以日期為單位保存在數據庫中,然后整合這些數據形成日報表,月報表和
12、年報表。</p><p><b> 1.2系統(tǒng)原理</b></p><p> 任何用戶登錄Unix系統(tǒng),Unix系統(tǒng)都會記錄用戶的登錄信息,所有用戶登入/登出的信息都保存在Unix的系統(tǒng)日志文件中。數據采集系統(tǒng)就是通過讀取Unix系統(tǒng)日志文件中用戶登入/登出信息,并找出成對的登入/登出記錄,得到用戶登錄實驗室的登入時刻、登出時刻、登錄時間長度等電信用戶收費需要使用
13、的數據,最后把匹配處理好的數據保存成電信工作人員可以閱讀的文本文件,做為電信收費依據。</p><p> 用戶登錄Unix系統(tǒng)的日志記錄文件在Unix的/var/adm目錄下,文件名是wtmpx,日志記錄文件是一個二進制文件,在Unix中可以使用last指令查看,last命令格式為:</p><p> last [-a] [-n number | -number] [-f filen
14、ame] [name | tty]</p><p> wtmpx文件中一條登錄記錄包含372字節(jié),每條記錄包含的數據項格式說明如下表1-1所示: (其中黃色背景標識的數據項就是要采集的數據項) </p><p> 【表1:用戶登錄記錄數據項格式】</p><p> 登錄記錄總數計算公式為:登錄記錄總數=日志文件大小/372。</p><p&
15、gt; 表1-2:要讀取的原始記錄數據</p><p> 表1-3:匹配登錄記錄數據</p><p> 用戶的登錄信息數據在每一臺機器上匹配好后需要發(fā)送到服務器來,服務器接收到這些匹配好的數據記錄后將其保存在數據庫中,形成用戶登錄記錄明細表。然后我們的程序需要定期的整理出日報表,月報表和年報表。在數據庫中保存的用戶登錄記錄明細表結構如下:</p><p>
16、整理成日報表后形成如下數據項:</p><p> 整理成月報表后形成如下數據項:</p><p> 整理成年報表后形成如下數據項:</p><p><b> 第2章 需求分析</b></p><p><b> 功能概述</b></p><p> 系統(tǒng)主要實現(xiàn)以下核心
17、功能:數據讀取,數據匹配,數據發(fā)送,數據接收,數據存儲,數據整合。</p><p><b> 數據讀取</b></p><p> 該功能模塊的主要任務是讀取Unix機器的用戶登錄記錄文件,將文件的信息解析為程序對象,以方便匹配模塊的匹配。</p><p><b> 數據匹配</b></p><p&
18、gt; 該模塊的主要任務是將數據讀取模塊讀取到的數據按照登入/登出的關系匹配成一條完整的登錄記錄。</p><p><b> 數據發(fā)送</b></p><p> 該模塊的主要任務是建立客戶端網絡連接,將匹配好的用戶登錄記錄以字符串的形式發(fā)送到服務器。</p><p><b> 數據接受</b></p>
19、<p> 該模塊的主要任務是建立服務器端網絡連接,從客戶端讀取匹配好的用戶登錄記錄字符串。</p><p><b> 數據存儲</b></p><p> 該模塊的主要任務是將數據接收模塊接收到的數據保存到指定的數據庫表中。</p><p><b> 數據整合</b></p><p&g
20、t; 該模塊的主要任務是將數據庫中保存的用戶登錄記錄明細表的數據整合成日報表,月報表和年報表。</p><p><b> 系統(tǒng)描述</b></p><p><b> 數據采集</b></p><p><b> 數據讀取</b></p><p> 讀取上次未匹配的登入記
21、錄</p><p> 讀取用戶登錄數據文件</p><p><b> 數據匹配</b></p><p><b> 匹配登錄記錄</b></p><p> 保存未匹配的登入記錄</p><p><b> 數據發(fā)送</b></p>&
22、lt;p><b> 數據接收</b></p><p> 第3章 系統(tǒng)概要設計</p><p><b> 總體設計</b></p><p><b> 業(yè)務設計</b></p><p> 這個是項目的大體流程圖,還沒涉及到具體的細節(jié)。大體的流程如圖所示,先讀取數據即
23、把數據從日志文件中讀取出來,之后把放入內存集合中的數據進行匹配成需要的數據,把匹配好的集合發(fā)送到服務端。</p><p><b> 說明:</b></p><p> 業(yè)務流程中幾個存儲文件的命名規(guī)則:</p><p> 1系統(tǒng)日志文件由外部傳遞給程序,程序需要判定是否存在然后才能采集。</p><p> 2 未匹
24、配登入數據項集合的存儲路徑由外部傳遞給程序,文件名采用logins.dat。</p><p> 日志登入/登出數據項讀取規(guī)則</p><p> 1 系統(tǒng)日志文件中的數據項有很多,但并不是所有數據項都需要采集的只有滿足如下條件的數據項才是需要采集的:</p><p> 2 登錄名不能以點號(.)開頭,以點號開頭的一般是登錄程序本身的日志數據項,不需要采集。<
25、;/p><p> 3 登錄類型必須是7(登入)或8(登出),登錄類型具體說明見下面列表:</p><p> 表2-1:登錄類型定義</p><p><b> 系統(tǒng)模塊</b></p><p> 物理上系統(tǒng)分為采集客戶端(被采集機器)和采集服務器兩部分,在采集客戶端包含數據采集模塊,數據匹配分析模塊和數據發(fā)送模塊;在采
26、集服務器端包含數據接收模塊,數據存儲模塊和數據顯示模塊,各模塊的主要功能和職責如下:</p><p> 數據采集模塊:該模塊的主要功能職責是讀取Unix機器上的用戶登錄日志文件的內容,將其轉化為登錄記錄對象,將這些對象存儲在STL集合中并傳給數據匹配合分析模塊來分析。該模塊的輸入數據是Unix機器的日志文件/var/adm/wtmpx,輸出數據是若干個登錄記錄對象(保存在集合中)。</p><
27、;p> 數據匹配和分析模塊:該模塊的主要功能職責是將數據采集模塊采集到的用戶登錄記錄數據按照登錄/登出的關系匹配成一個完整的登錄/登出記錄,并計算出該用戶本次登錄的時長,然后將這些完整的登錄/登出記錄傳送給數據發(fā)送模塊。該模塊的輸入數據是原始的登錄記錄對象,輸出數據是匹配好的登錄/登出記錄對象。</p><p> 數據發(fā)送模塊:該模塊的主要功能職責是將匹配好的登錄/登出記錄用網絡傳送的發(fā)式發(fā)送到采集系統(tǒng)
28、服務器。</p><p> 數據接收模塊:該模塊的主要功能職責是從網絡中讀取采集客戶端發(fā)送來的登錄/登出數據。</p><p> 數據存儲模塊:該模塊得主要功能職責是將數據接收模塊接收到的數據按照指定的格式寫入數據庫中,保存為用戶登錄記錄明細表。</p><p> 數據整合模塊:將數據庫中保存的用戶登錄記錄明細表的數據整理成日報表,根據日報表整合出月報表,根據
29、月報表整合出年報表。</p><p><b> 接口設計</b></p><p><b> 外部接口</b></p><p> 系統(tǒng)讀取用戶登錄記錄文件,獲得用戶登錄信息。</p><p> 系統(tǒng)讀取上次未匹配的登入記錄文件,獲取未匹配的登入記錄數據。</p><p>
30、; 系統(tǒng)將匹配好的數據寫入指定數據庫表中。</p><p> 系統(tǒng)整合出月報表和年報表。</p><p><b> 內部接口</b></p><p> 數據讀取模塊與數據匹配模塊間的接口:</p><p> 輸入:解析好的用戶登入/登出記錄列表。</p><p><b> 輸
31、出:無</b></p><p> 數據匹配模塊與數據發(fā)送模塊間的接口:</p><p> 輸入:匹配好的用戶登錄記錄列表。</p><p><b> 輸出:無</b></p><p> 數據發(fā)送模塊與數據接收模塊間的接口:</p><p> 輸入:匹配好的用戶登錄記錄數據項&
32、lt;/p><p> 輸出:接收成功與否的消息</p><p> 數據接收模塊與數據保存模塊間的接口:</p><p> 輸入:匹配好的用戶登錄記錄列表</p><p><b> 輸出:無</b></p><p> 數據保存模塊與數據庫間接口:</p><p> 輸
33、入:匹配好的用戶登錄記錄列表</p><p><b> 輸出:無</b></p><p> 數據整合模塊與數據庫間接口:</p><p> 輸入:用戶登錄記錄明細</p><p> 輸出:用戶登錄記錄日報表,月報表和年報表</p><p><b> 數據結構設計</b&g
34、t;</p><p> 根據系統(tǒng)需求,設計出如下數據實體:</p><p> LogRec:登入/登出記錄類,用來表示一條原始的用戶登入/登出記錄。</p><p> MatchedLogRec:匹配的登錄記錄類,用來表示一條匹配的用戶登錄記錄。</p><p> 以下分別對這兩個實體類的設計作出說明:</p><
35、p> 登入/登出記錄數據類</p><p><b> LogRec類圖:</b></p><p> LogRec類成員變量說明:</p><p> 第4章 系統(tǒng)詳細設計</p><p><b> 系統(tǒng)架構綜述</b></p><p> 系統(tǒng)由以下幾個功能模塊
36、組成:</p><p> 數據讀取模塊,數據匹配模塊,數據發(fā)送模塊,數據接收模塊,數據保存模塊和數據整合模塊,每個模塊的核心功能如下:</p><p> 數據讀取模塊:負責從用戶登錄記錄文件和未匹配登錄記錄文件中讀取用戶的登錄記錄數據,將其轉化為LogRec對象,然后傳遞給數據匹配模塊匹配。</p><p> 數據匹配模塊:負責將用戶登錄記錄數據,按照登入/登
37、出的關系匹配起來,形成匹配的用戶登錄記錄數據(MatchedLogRec對象),并計算出每次登錄的時間長度。</p><p> 數據發(fā)送模塊:將匹配好的用戶登錄記錄通過網絡發(fā)送到采集系統(tǒng)服務器。</p><p> 數據接收模塊:服務器端接收匹配好的用戶登錄記錄數據。</p><p> 數據保存模塊:將接受到的用戶登錄記錄數據保存到數據庫的用戶登錄記錄明細表中。
38、</p><p> 數據整合模塊:將用戶登錄記錄明細表中的數據整合成日報表,月報表和年報表。</p><p><b> 靜態(tài)結構設計</b></p><p><b> 數據實體類</b></p><p> 根據需求分析,我們設計出以下數據實體類:</p><p>
39、LogRec:登入/登出記錄類,用來表示一條原始的用戶登入/登出記錄。</p><p> MatchedLogRec:匹配的登錄記錄類,用來表示一條匹配的用戶登錄記錄。</p><p> 以下分別對這兩個實體類的設計作出說明:</p><p> 登入/登出記錄數據類</p><p> 登入/登出記錄類(LogRec)類圖:</p
40、><p> 登入/登出記錄類(LogRec)成員變量說明</p><p><b> 總體類圖</b></p><p><b> 【客戶端類圖】</b></p><p><b> 【服務端類圖】</b></p><p><b> Clien
41、t 類</b></p><p> Client類封裝數據采集系統(tǒng)客戶端的所有功能。</p><p><b> Client類定義</b></p><p> Client類方法說明</p><p> 1)sendLogs方法定義:</p><p> -LogReader類定義&
42、lt;/p><p> LogReader成員變量說明</p><p> LogReader類方法說明</p><p> readLogs方法:</p><p> readLogs方法活動圖:</p><p><b> backup方法:</b></p><p> r
43、eadFailLogins方法:</p><p> readFailLogins方法活動圖:</p><p> readBackupFile方法:</p><p> matchLogRec方法:</p><p> matchLogRec方法活動圖:</p><p> saveFailLogins方法:<
44、/p><p> LogSender類 </p><p> LogSender類定義</p><p> LogSender類成員變量說明</p><p> LogSender類方法說明</p><p> 1)sendMatches方法:</p><p> sendMatches方法活動圖:
45、</p><p> 2)initSocket方法:</p><p> 3)readSendfailed方法:</p><p> 4)saveSendfailed方法:</p><p><b> Server類</b></p><p><b> Server類定義</b&g
46、t;</p><p> Server成員變量說明</p><p> Server類方法說明</p><p> initSocket方法 </p><p> startService方法 </p><p> DataReciveThread類說明</p><p><b> 成
47、員說明:</b></p><p> threadid 創(chuàng)建線程時使用 標示一個線程對象</p><p><b> 方法說明:</b></p><p> run 完成具體的數據接收工作</p><p> start 完成線程的創(chuàng)建和啟動線程</p><p> reciveD
48、ata(void *) 創(chuàng)建線程時調用的線程函數</p><p> DataSaveThread類說明</p><p><b> 成員說明:</b></p><p> threadid 創(chuàng)建線程時使用 標示一個線程對象</p><p> logDao 向數據庫中存儲數據的對象</p>&l
49、t;p><b> 方法說明:</b></p><p> run 完成具體的調用dao的工作</p><p> start 完成線程的創(chuàng)建和啟動線程</p><p> saveData(void *) 創(chuàng)建線程時調用的線程函數</p><p><b> LogDao類說明</b>&l
50、t;/p><p><b> 方法說明:</b></p><p> connect 連接數據庫</p><p> saveData 存儲數據 根據日志記錄的退出時間放入相應的日志表中</p><p> 如退出時間是8日 則放入logdetail08日志表中</p><p
51、> commitData 提交事務</p><p> disconnect 斷開連接</p><p> UserData類說明</p><p> UserData成員變量說明</p><p> UserData類方法說明</p><p> push_data方法:</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電信計費系統(tǒng)畢業(yè)設計
- 數據挖掘技術在電信crm中的應用
- 數據備份與容災技術在電信計費系統(tǒng)中的應用.pdf
- 數據挖掘技術在電信運維支撐系統(tǒng)中的應用.pdf
- 數據挖掘技術在電信行業(yè)中的應用.pdf
- 數據挖掘技術在電信網絡管理系統(tǒng)中的應用.pdf
- 數據挖掘在電信結算系統(tǒng)中的應用.pdf
- 數據挖掘技術在電信網管系統(tǒng)中的應用研究.pdf
- 數據挖掘技術在電信IP決策支持系統(tǒng)中的應用.pdf
- 數據挖掘技術及其在電信系統(tǒng)應用的研究.pdf
- 數據挖掘技術在湖南電信經營分析系統(tǒng)中的應用.pdf
- 數據挖掘技術在電信行業(yè)的應用.pdf
- 數據挖掘在電信信息化系統(tǒng)中的應用.pdf
- 數據倉庫和數據挖掘技術在電信行業(yè)中的應用.pdf
- 數據挖掘在楚雄電信經營分析系統(tǒng)中的應用.pdf
- 數據挖掘技術及其在電信客戶服務系統(tǒng)中的應用研究.pdf
- 數據挖掘技術在電信企業(yè)crm中的應用與實現(xiàn)
- 數據挖掘技術在電信企業(yè)存量經營中的應用.pdf
- 數據挖掘技術在電信客戶欺詐分析中的應用.pdf
- 數據挖掘技術及其在電信CRM中的應用研究.pdf
評論
0/150
提交評論