基于ETL的网络认证计费查询系统:网络认证计费系统
发布网友
发布时间:2023-05-12 11:18
我来回答
共1个回答
热心网友
时间:2023-05-14 06:32
摘 要:本文基于ETL技术,实现了网络认证计费查询系统,与现有校园信息平台进行了系统集成,最后就系统的设计与实现进行了小结,指出本系统的实现可提高网络管理工作效率。 关键词:ETL 数据处理 查询系统 效率
中图分类号:TP27 文献标识码:A 文章编号:1672-3791(2012)06(a)-0016-01
随着高校校园网认证计费系统的稳步运行,如何从现有庞大的认证计费数据库提取出用户真正关心的数据进行分析、展示,已成为提高网络管理部门服务质量的重要保证。
本系统以实现灵活的网络认证计费信息查询为目标,重点研究数据ETL[1]技术,从现有认证计费数据库抽取出有用的信息,进行数据集成[2]并长期保留。系统旨在提高用户认证效率、解决关键历史数据不能长期保存、用户自助查询界面不友好等问题,在优化认证计费系统、改善用户交互、增强用户查询体验方面具有重要的应用价值和广泛的适用性。
1 系统使用的技术
1.1 ETL(数据提取、转换和加载)
ETL,Extraction-Transformation-Loading的缩写,中文名称为数据提取、转换和加载。ETL是构建数据仓库[3]的一个环节,负责将分布的、异构的数据源中的数据如关系数据、平面数据文件等进行抽取、清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。
本系统采用Oracle公司的ODI作为数据抽取及集成的工具,ODI最好的特征是提出了知识模块(Knowledge Mole)的概念,如:把文件加载到数据库、从Mysql数据库抓取数据放到Oracle数据库、从DB2把数据抓取出来放到Oracle数据库等,最终被总结为file→Oracle、Mysql→Oracle、DB2→Oracle等一些被反复使用的场景。
1.2 系统服务端技术架构
Java EE(Java Platform,Enterprise Edition)是sun公司推出的企业级应用程序版本,Java EE是在Java SE的基础上构建的,它提供Web服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,即SOA)和Web 2.0应用程序。目前几乎所有高校的数字校园信息平台都采用Java EE架构,因此,采用Java EE架构将最有利于系统与数字校园平台信息共享和整合。
1.3 系统客户端技术
1.3.1 Ajax框架
Ajax全称为“Asynchronous JavaScript and XML”,不管Web应用是采用ASP、PHP、JSP还是.NET,Ajax都能无缝集成。Ajax最大的优点在于将以上各自为政的技术组成一个整体,对于用户而言,在不刷新页面的情况下可以与服务器进行数据交换,从而提高了数据交互速度、改善了用户体验。
1.3.2 jQuery
jQuery由美国人John Resig创建一个优秀的Javascript Ajax框架。它是轻量级的Javascript库,它兼容CSS3,还兼容各种浏览器。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供Ajax交互。因此系统采用jQuery来提高网页的执行效率和响应速度,给用户更好的使用和视觉体验。
1.3.3 FusionCharts
FusionCharts是InfoSoft Global公司的一个基于Flash的图表组件,具有跨平台、跨浏览器的特点,它提供了大量的图表类型,从基本的条形图、柱状图、线图、饼图,到组合图表、滚动图表等。通过FusionCharts图表能够为用户简单明了地展示出各种费用信息、流量信息等。
2 系统实现步骤
2.1 用户登录和认证
校园网已经采用统一身份认证机制,因此,本系统将与校园网的校园信息平台进行集成,采用“单点登录”的技术,只要拥有校园网账号的用户在登录校园信息平台后就可以授权直接访问本系统查询自己的网络认证计费信息。
2.2 数据库
系统采用Oracle数据库存储数据,主要基于以下两个因素:Oracle数据库性能稳定,能够支持更多用户对系统的快速、高效查询;Oracle数据库支持所有主流操作系统,采用Unix作为Oracle数据库的系统平台,系统运行将更加稳定。
2.3 数据处理
2.3.1 数据抽取
ODI定时从源数据库中抽取数据,为了对现有认证计费系统不造成影响,计划在每天凌晨4:00-5:00,认证计费系统最为空闲的时候,对源数据库的用户信息表、账户表、账务流水表、上网明细表等进行数据抽取,因为全量抽取的代价小于执行增量抽取算法的代价,所以采用全表删除插入方式,每次抽取前先删除目标表数据再插入新的数据。
2.3.2 数据转换
从源数据库中抽取的数据不一定完全符合目标数据库的要求,例如数据格式不一致、数据不完整等,因此有必要对抽取的数据进行数据转换和加工。如:用户名、用户状态(正常/暂停)、账号状态(正常/欠费)、账号余额、用户本周期开始时间,用户自周期开始已使用的总流量等,通过ETL引擎进行数据清洗、数据合并、数据转换和加工。
2.3.3 数据加载
当目标数据库是关系数据库时,一般有两种加载方式:一是直接用SQL语句进行insert、update、delete操作;另一种是采用批量装载方法,如bcp、bulk、关系数据库特有的批量装载工具或API。
2.4 用户查询
数据展示和报表输出系统采用了Ajax和FusionCharts技术来提高用户体验,同时减轻服务器的压力。进入系统后,用户能够非常直观地获取自己的账号信息、费用信息、用户当前上网周期已消费的金额、在当前周期内用户已使用的总流量等,用户还可以从丰富多样的曲线图、直方图、饼图等获取自己历史上网周期的消费信息、历史流量信息等。系统根据用户使用不同的计费套餐,适时地为用户提出合理的上网建议,帮助用户了解自己的网络使用习惯,让用户选择更加合理的网络计费套餐。
3 结语
本研究针对校园网实际环境,首先通过使用ETL技术对现有认证计费数据库进行数据抽取、转换和加载,实现与校园网公共数据平台的数据集成;再通过WEB开发,将抽取出的用户信息、上网明细、账务流水等数据以图表的方式统计分析、灵活展现;最后为用户提供人性化、个性化的上网建议和意见,对改善用户网络使用体验,减轻业务系统的查询负担,提高网络管理工作效率有着重要的实践价值和推广作用。
参考文献
[1] 缪嘉嘉,邓苏,*宝.ETL综述[J].计算机工程,2004.
[2] 钟华,冯文澜,谭红星,等.面向数据集成的ETL系统设计与实现[J].计算机科学,2004.