通用数据挖掘系统.docx
- 文档编号:26158862
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:20
- 大小:143.65KB
通用数据挖掘系统.docx
《通用数据挖掘系统.docx》由会员分享,可在线阅读,更多相关《通用数据挖掘系统.docx(20页珍藏版)》请在冰豆网上搜索。
通用数据挖掘系统
学号:
4108032019
泰山医学院毕业设计(论文)
题目:
数据挖掘系统中数据匹配的设计与实现
院(部)系
信息工程学院
所学专业
电子信息科学与技术
年级、班级
2008级本科1班
完成人姓名
宋霞
指导教师姓名
专业技术职称
李新约讲师
2012年6月10日
论文原创性保证书
我保证所提交的论文都是自己独立完成,如有抄袭、剽窃、雷同等现象,愿承担相应后果,接受学校的处理。
专业:
电子信息科学与技术
班级:
08级本科一班
签名:
2012年06月10日
摘要
本文档的目的是明确DMS3.0项目的业务背景、业务范围、定义项目的专业名词,分析项目的核心功能和系统需求,并根据分析写了需求说明书。
在明确系统需求的基础上划分系统的功能模块,进行系统开发的分工,明确各模块间的接口,为进行后面的详细设计和实现作准备。
接着描述系统结构,数据实体,类的定义,类功能的实现,部署要求,运行环境等内容,进而指导程序员完成程序代码实现。
最后,根据对类的定义以及类功能等的描述完成代码:
通过vi编辑器、oracle数据库、QTCreator、Pro*C/Pro*C++等开发工具,完成了对整个系统的设计。
期望读者包括:
项目发起人、最终用户、项目投资方、项目管理团队、项目执行团队,以及其他项目干系人。
关键词:
标准C/C++;UC;Qt;Oracle;PLSQL;Pro*C/Pro*C++
Abstract
ThepurposeofthisdocumentistomakeclearDMS3.0projectbusinessbackground,businessscope,thedefinitionofprojectspecializedterms,analysisthecoreoftheprojectfunctionandsystemneeds.Accordingtotheanalysisresults,Iwrotetherequirementsspecifications.Basedonthis,Idividedthesystemfunctionmodules,carryonthedivisionofthesystem,cleartheinterfacesamongvariousmodules,prepareforthenextthedetaileddesignandrealization.Thendescribethesystemstructure,dataentity,Classdefinition,therealizationofthefunctionofclass,deploymentdemands,runningenvironmentandsoon.Andthenguidanceprogrammerstocompleteprogramcoderealization.Atlast,accordingtothedefinitionofclassandthefunctionofclass,completetheprogram.Briefly,bymeansofvi,oracle,QTCreator,Pro*C/Pro*C++,Icompletedthedesignofthewholeprogram.Expectreadersincluding:
theprojectsponsor,endusers,projecttheinvestor,projectmanagementteam,theprojectexecutionteam,andotherstakeholders.
Keywords:
StandardC/C++;UC;Qt;Oracle;PLSQL;Pro*C/Pro*C++
目录
第一章课题研究的背景1
1.课题研究背景1
2.课题研究原理1
3.课题研究的方法1
第二章理论基础2
1.标准C语言技术2
2.标准C++技术2
3.UnixC语言技术2
4.Qt技术2
5.Oracle数据库技术2
6.PLSQL技术2
7.Pro*C/C++技术3
第三章系统分析4
1.总体分析4
2.功能需求分析4
2.1.数据读取4
2.2.数据匹配4
2.3.数据发送4
2.4.数据接收5
2.5.数据存储5
2.6.数据整合5
3.可行性分析5
第四章系统设计6
1.系统总体设计6
2.数据库表设计7
3.功能测试设计8
3.1数据采集8
3.2数据读取8
3.3读取上次未匹配的登入记录9
3.4读取用户登录数据文件9
3.5数据匹配9
3.6匹配登录记录11
3.7保存未匹配的登入记录11
3.8数据发送11
3.9其它11
第五章小结12
参考文献13
致谢14
第一章课题研究的背景
1.课题研究背景
在电信的业务中,有一种Unix实验室出租业务。
只要用户向电信运营商申请一个Unix帐号,就可以远程登录Unix实验室,并使用Unix系统。
用户使用电信运营商提供的Unix实验室的服务需要缴纳一定的费用,电信运营商需要一套数据采集系统,把用户登录实验室的时间长度数据采集起来,便于在指定的时间范围内作为对用户的收费依据。
要求数据采集系统必须采集如下信息:
登录用户名,登录的时间,登出的时间,登录总的在线时间,登录的实验室IP,用户的终端IP等信息。
DMS3.0项目需要开发这样一个通用的数据采集系统程序,来采集Unix机器记录的用户登入和登出的原始记录,并将这些记录解析匹配成用户的登录记录,然后发送给数据采集服务器,在服务器端将这些数据以日期为单位保存在数据库中,然后整合这些数据形成日报表,月报表和年报表。
2.课题研究原理
任何用户登录Unix系统,Unix系统都会记录用户的登录信息,所有用户登入/登出的信息都保存在Unix的系统日志文件中。
数据采集系统就是通过读取Unix系统日志文件中用户登入/登出信息,并找出成对的登入/登出记录,得到用户登录实验室的登入时刻、登出时刻、登录时间长度等电信用户收费需要使用的数据,最后把匹配处理好的数据保存成电信工作人员可以阅读的文本文件,做为电信收费依据。
3.课题研究的方法
调查研究法:
在网上针对电信业务的相关需求进行调查,对电信业务中出现的问题进行分析,并结合用户实地考察。
对比研究法:
对电信业务功能进行分析,并结合用户对电信业务的意见反馈进行对比研究。
建模法:
为本课题的开发和设计划分模块,分工协作,共同完成课题研究。
在进行研究的同时,读书、查阅与此课题相关的资料,并收集相关问题和经验,为撰写论文打好基础。
另外经常与指导教师研究讨论,并归类整理自己遇到的问题,让自己不仅做好设计,并牢牢掌握住需要用到的技。
第二章理论基础
1.标准C语言技术
C语言是一种底层语言,一种小型语言,有限的语言特性,依赖标准函数库,C语言是一种包容性语言,更广阔的自由度,不强制进行详细的错误检查,C语言不是一个强类型的语言。
但类型检查机制已经得到了加强。
C语言的优点:
高效,可移植,功能强大,灵活(从嵌入式到商业数据处理;限制少),依赖标准库,与Unix系统集成。
2.标准C++技术
C++是强类型语言,对类型检查更严格。
C++比C更丰富,支持面向对象;支持泛型编程;支持异常;运算符重载等。
3.UnixC语言技术
Linux是一种自由和开放源码的类Unix操作系统。
gcc(GNU CC)是一个功能非常强大的跨平台C编译器,它对标准C(ANSI/ISO C)进行了很多扩展,这些扩展对优化目标代码布局安全性的检测方面提供很强的支持,我们把支持GNU扩展的C语言称为GNU C。
4.Qt技术
QT是图形用户程序框架,一个基于C++语言的框架,一个专注于用户图形界面的框架,一个跨平台的框架,一个艺术级别的图形开发工具。
选择Qt的理由:
基于C++简易、面向对象;优良的跨平台特性;Qt架构健壮,性能强大;Qt使用起来简便高效;Qt是开源软件。
5.Oracle数据库技术
ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。
但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
6.PLSQL技术
PL/SQL(ProceduralLanguage/SQL)是在标准SQL的基础上增加了过程化处理的语言。
Oracle客户端工具访问Oracle服务器的操作语言。
Oracle是对SQL的扩充。
优势:
结构化模块化编程;良好的可移植性;良好的可维护性;提升系统性能;不便于向异构数据库移植应用程序。
7.Pro*C/C++技术
Pro*C把过程化语言C和非过程化语言SQL最完善地结合起来,具有完备的过程处理能力,又能完成任何数据库的处理品任务,使用户可以通过编程完成各种类型的报表。
在Pro*C程序中可以嵌入SQL语言,利用这些SQL语言可以完成动态地建立、修改和删除数据库中的表,也可以查询、插入、修改和删除数据库表中的行,还可以实现事务的提交和回滚。
在Pro*C程序中还可以嵌入PL/SQL块,以改进应用程序的性能,特别是在网络环境下,可以减少网络传输和处理的总开销。
第三章系统分析
1.总体分析
在软件工程的发展过程中,需求分析在很长一段时间里被人们认为是整个软件工程中最简单的一个步骤,但在过去十几年中人们逐渐认识到软件工程是整个过程中最为关键的一个部分。
虽然在可行性研究阶段已经粗略了解了用户的需求,甚至还提出了一些可行的方案,但是,可行性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行的解法,因此许多细节被忽略了。
然而在最终的系统中却不能遗漏任何一个微小的细节,所以可行性研究并不能代替需求分析,它实际上并没有准确地回答“系统必须做什么?
”这个问题。
所以进行软件设计之前,必须先进行需求分析,才能保证软件设计顺利完成。
假如在需求分析阶段分析者们未能正确地认识到顾客的需要的话,那么最后的软件实际上不可能达到顾客的需要,或者软件无法在规定的时间里完工。
系统的需求分析是需要开发人员和用户一起完成。
需求分析主要是对管理信息系统的需求进行分析,分析在设计系统时可能遇到的问题,及其解决方案,对目标系统提出完整、准确、清晰、具体的要求。
需求分析的结果是系统开发的基础,关系到系统的可利用价值,是开发软件所不可缺少的重要环节。
电信数据挖掘系统的实现需要从实际出发,对实际情况进行客观的分析,深入了解需求。
系统利用oracle与数据库结合的技术建立数据库管理系统。
同时需求分析也是进行概要设计和详细设计的基础,是进行内部维护和测试的依据。
2.功能需求分析
DMS3.0系统主要实现以下核心功能:
数据读取,数据匹配,数据发送,数据接收,数据存储,数据整合。
2.1.数据读取
该功能模块的主要任务是读取Unix机器的用户登录记录文件,将文件的信息解析为程序对象,以方便匹配模块的匹配。
2.2.数据匹配
该模块的主要任务是将数据读取模块读取到的数据按照登入/登出的关系匹配成一条完整的登录记录。
2.3.数据发送
该模块的主要任务是建立客户端网络连接,将匹配好的用户登录记录以字符串的形式发送到服务器。
2.4.数据接收
该模块的主要任务是建立服务器端网络连接,从客户端读取匹配好的用户登录记录字符串。
2.5.数据存储
该模块主要任务是将数据接收模块接收到的数据保存到指定的数据库表中。
2.6.数据整合
该模块的主要任务是将数据库中保存的用户登录记录明细表的数据整合成日报表,月报表和年报表。
3.可行性分析
该系统名称是“电信数据采集管理系统”,通过此系统可以实现三个方面的功能:
一、对客户端来说,是进行数据的采集、匹配和发送。
二、对服务器来说,是进行数据的接收、保存、并整合成报表。
三、定制定时整理系统,对报表进行定时的更新和整理。
经过研究分析,在我们的能力范围之内,系统具有很高的可行性。
第四章系统设计
1.系统总体设计
该系统主要实现以下核心功能:
数据读取,数据匹配,数据发送,数据接收,数据存储,数据整合。
其业务流程如图4-1业务流程图所示。
图4-1业务流程图
说明:
(1)业务流程中几个存储文件的命名规则:
系统日志文件由外部传递给程序,程序需要判定是否存在然后才能采集。
未匹配登入数据项集合的存储路径由外部传递给程序,文件名采用logins.dat。
(2)业务规则说明:
日志登入/登出数据项读取规则
系统日志文件中的数据项有很多,但并不是所有数据项都需要采集的,只有满足如下条件的数据项才是需要采集的:
登录名不能以点号(.)开头,以点号开头的一般是登录程序本身的日志数据项,不需要采集。
登录类型必须是7(登入)或8(登出),登录类型具体说明见下面列表:
表4-1:
登录类型定义
登录Type值
登录type值说明
C定义的宏
0
#defineEMPTY
1
#defineRUN_LVL
2
#defineBOOT_TIME
3
#defineOLD_TIME
4
#defineNEW_TIME
5
--初始化进程
#defineINIT_PROCESS
6
--登录进程
#defineLOGIN_PROCESS
7
--用户进程(登入)
#defineUSER_PROCESS
8
--终止进程(登出)
#defineDEAD_PROCESS
2.数据库表设计
用户的登录信息数据在每一台机器上匹配好后需要发送到服务器来,服务器接收到这些匹配好的数据记录后将其保存在数据库中,形成用户登录记录明细表。
然后我们的程序需要定期的整理出日报表,月报表和年报表。
(日报表数据项见表4-2,月报表见表4-3,年报表见表4-4)
表4-2日报表
数据名
数据含义
备注说明
logname
用户登录名
logip
登录终端的ip地址
DAY_TIME
日登录时间长度
Labip
用户登录的实验室IP
Month
用户登录月份
表4-6月报表
数据名
数据含义
备注说明
logname
用户登录名
logip
登录终端的ip地址
MONTH_TIME
月登录时间长度
Labip
用户登录的实验室IP
Year
用户登录年份
表4-7年报表
数据名
数据含义
备注说明
logname
用户登录名
logip
登录终端的ip地址
YEAR_TIME
年登录时间长度
Labip
用户登录的实验室IP
根据需求,设计出如下数据库表结构:
用户登录记录明细
用户登录记录日报表
PK
登录记录编号
PK
用户ID
PK
实验室IP
用户ID
实验室IP
登入时间
登出时间
登录时长
用户终端IP
日登录时长
登录月份
用户登录记录月报表
用户登录记录年报表
PK
用户ID
实验室IP
PK
PK
用户ID
实验室IP
PK
月登录时长
登录年份
年登录时长
表4-8数据库表结构
3.功能测试设计
3.1数据采集
略
3.2数据读取
数据的读取主要分为以下几个步骤:
1.根据系统配置信息确定上次未匹配的登入记录文件的位置。
2.读取上次未匹配的登入记录,形成用户登录记录列表。
见图4-2读取上次未匹配的登入记录流程图
3.根据系统配置信息确定用户登录数据文件的位置。
4.读取数据文件,将文件内容解析成用户登录记录。
见图4-3读取数据文件流程图
5.将上一步中解析得到的用户登录记录添加到列表中。
6.返回用户登录记录列表。
图4-2读取上次未匹配的登入记录
图4-3读取数据文件流程图
3.3读取上次未匹配的登入记录
略
3.4读取用户登录数据文件
略
3.5数据匹配
数据的匹配主要分为以下几个步骤:
见图4-4数据匹配流程图
1、访问用户登入/登出记录列表,按照登入/登出的对应关系匹配登录记录。
2、将未匹配的登入记录写到文件中。
图4-4数据匹配流程图
3.6匹配登录记录
匹配登录记录主要分为以下几个步骤:
1.定义两个列表分别用来保存登入记录和登出记录。
见图4-5登入/登出记录类(LogRec)类图
2.循环访问用户登入/登出记录列表,将登入记录和登出记录分检出来,分别存入登入记录列表和登出记录列表。
3.循环访问登出记录列表,每找到一条登出记录后循环访问登入记录列表,找到与之对应的登入记录,将两条对应的记录组合成用户登录记录,并将这两条记录从列表中删除。
循环直至所有的登出记录都处理完成。
图4-5登入/登出记录类(LogRec)类图
3.7保存未匹配的登入记录
略
3.8数据发送
略
3.9其它
略
第五章小结
该数据挖掘系统是一个通用的数据采集系统程序,来采集Unix机器记录的用户登入和登出的原始记录,并将这些记录解析匹配成用户的登录记录,然后发送给数据采集服务器,在服务器端将这些数据以日期为单位保存在数据库中,然后整合这些数据形成日报表,月报表和年报表。
首先,根据当前现状写了需求说明书,在明确系统需求的基础上划分系统的功能模块,进行系统开发的分工,明确各模块间的接口,为进行后面的详细设计和实现作准备。
接着描述系统结构,数据实体,类的定义,类功能的实现,部署要求,运行环境等内容,进而指导程序员完成程序代码实现。
最后,根据对类的定义以及类功能等的描述完成代码:
通过vi编辑器、oracle数据库、QTCreator等开发工具,完成了对整个系统的设计。
用户使用电信运营商提供的Unix实验室的服务需要缴纳一定的费用,该数据采集系统,把用户登录实验室的时间长度数据采集起来,便于在指定的时间范围内作为对用户的收费依据。
参考文献
[1]范磊.从新手到高手C++全方位学习(零起点范例教学)[M].北京:
科学出版社,2009
[2]谭浩强.C语言程序设计[M].北京:
清华大学出版社,2004
[3]黄志强,王新民.电能量采集系统在电网管理中的应用[J].自动化技术与应用,2006,04:
70-72
[4](加)布兰切特(Blanchette,J.),(英)萨默菲尔德(Summerfield,M.).C++GUIQt4编程[M].闫锋欣等译.第2版.北京:
电子工业出版社,2008
[5]杜敏.以用电信息采集系统为基础的营销信息化管理[J].安徽电气工程职业技术学院学报,2011,04:
58-61
[6]StanleyB.Lippman.C++Prime(4thEdition)[M].李师贤等译.第四版.北京:
人民邮电出版社,2006
[7]王晓峰,李庚清.用电信息采集系统发展新趋[J].《电力需求侧管理》,2010,5:
59-61
[8]熊晓铃.浅谈电信原始数据采集系统[J].《科技情报开发与经济》,2009,25:
108-110
[9]吴信东,朱兴全,陈琪君,王飞跃.UbiquitousMiningwithInteractiveDataMiningAgents[J].Journal of Computer Science & Technology,2009,06:
1018-1027
[10]宋劲杉.Linux编程一站式学习[M].第二版.北京.:
北京亚嵌教育研究中心,2009
[11]RossD.King;AshwinSrinivasan;LucDehaspe.Warmr:
adataminingtoolforchemicaldata[J].JournalofComputer-AidedMolecularDesign,2001,02:
173-181
[12]TannisthaNandi;ChandrikaB-Rao;SrinivasanRamachandran.Comparativegenomicsusingdataminingtools[J].JournalofBiosciences,2002,01:
15-25
致谢
首先,我要想感谢百忙之中抽时间对本文进行审阅,评议和参与论文答辩的各位老师。
从最初的选题到最终完成毕业设计,经过几个月的时间,在指导老师李新约老师的悉心指导下,我们终于完成了。
在整个开发过程中,各位老师都给予了我们极大的帮助和全面的指导,也让我们学到了很多以前没接触过的知识。
对于我自己,也让我充分了解软件系统的设计流程,掌握各个阶段所需要的技术能力,为以后的工作提供了更大的帮助。
真诚的谢谢你们!
在本次论文设计过程中,各位老师给予了我细心的指引和教导,使我得以最终完成系统设计和毕业论文。
在学习中,老师严谨的治学态度、丰富渊博的知识、敏锐的学术思维、精益求精的工作态度以及诲人不倦的师者风范是我终身学习的楷模,导师们的高深精湛的造诣与严谨求实的治学精神,将永远激励着我。
这四年中还得到众多老师的关心支持和帮助。
在此,谨向老师们致以衷心的感谢和崇高的敬意!
最后,当我写完这篇毕业论文的时候,有一种如释重负的感觉,在经历了培训的紧张、为工作的忧虑、写论文的煎熬之后,感觉好像一切都尘埃落定。
即将给自己的学生时代和校园生活画上一个分号,之所以说它是一个分号,是因为我对无忧无虑的学生生活还有无比的留恋,对单纯美好的校园生活还有无比的怀念。
这只是我生命中的一个路口,并不是终点,我始终相信青春不散场,将继续用积极向上的心态去工作生活,去延续这种快乐和幸福。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通用 数据 挖掘 系统