校园辅助决策平台中数据采集及同步方法研究*
2016-03-15张仕华刘志超曹桂红
张仕华,蔡 毅,刘志超,曹桂红
(1.湖南工程学院 网络信息中心,湘潭 411104;2.湖南工程学院 风力发电机组及控制湖南省重点实验室,湘潭 411104)
校园辅助决策平台中数据采集及同步方法研究*
张仕华,蔡 毅,刘志超,曹桂红
(1.湖南工程学院 网络信息中心,湘潭 411104;2.湖南工程学院 风力发电机组及控制湖南省重点实验室,湘潭 411104)
分析了目前高校信息化发展需要的数据采集及数据同步需求,提出了根据高校数字校园的特点而设计的一种新颖的数据同步方法,该方法采用灵活的SQL语句设置数据来源,通过映射关系交换与同步数据,采用Quartz自动调度任务实现自动同步,并在实践中证明了该方法的有效性和系统的可扩展性.解决了在辅助决策平台中数据采集及同步的实际需求.
数字校园;数据同步;Quartz
0 引言
随着信息化技术的发展,高校信息化建设异常快速.21世纪初我国大多数高校的校园网已经建成,高校都在自行研发或采购信息化商业软件应用系统,如高校教务管理系统、财务系统、学生管理系统、一卡通系统等,这些系统的应用在很大的程度提高了高校的信息化管理水平和工作效率,实现了校园的网上教学和管理,在有利的同时,也带来了系统之间的管理问题.由于这些业务系统都是由学校各个职能部门在不同时期建设和完成的,他们的开发商、编程语言、数据库等都没有统一规划,这就导致各个业务系统没有统一的数据标准,系统之间没有实现数据共享与同步,从而没有形成一个有机的整体.
但随着这些“信息孤岛”系统的投入使用,信息共享问题便随之而来,相同的信息在不同系统中需要重复采集与维护,不同系统之间信息不能共享,不同部门上报的信息不一致.因此,尽快建设统一标准的“数字化校园”是各高校面临的一个迫切问题.
数字校园建设的一大难点就是如何在不同业务系统之间统一标准及在统一标准前提之下的数据共享及同步.目前一种公认做法就是实现所有数据的集中管理,即建立一个“中心数据库”,虽然这是一种彻底的做法,但是面对大量分散的业务应用系统,这种方法实施难度和风险都很大,各个职能部门都持不同的观点,目前国内外基本上没有高校采用.
另一种做法就是建立公共数据的“共享数据库”,实现相关公共数据和代码的共享,此法对已有应用系统的改动降到最低,从而可以快速实施和部署.
综上所述,本文以Quartz和Java技术为基础,提出了一种在数字校园中进行数据采集和交换的实现方案,将多个应用系统的数据按照来源方式和用途分别进行归类,应用系统的数据为来源的设置为数据提供者,其将提供权威数据存放于中心数据库,其他要使用中心数据库数据的业务系统,将其归类为数据使用者,数据提供者和数据使用者通过中心数据库进行数据交换,最后中心数据将保存一份所有应用系统数据的完整归档数据,此完整数据即可以用于各应用系统数据的完整映像,又可用于数据挖掘及决策分析使用.通过实际使用证明,该方案在数据交换的效率和数据传输的安全性等方面有较大优势,并且该方案从根本上解决数字校园中业务系统间信息孤岛的问题,让各个业务系统的各种异构数据源能够通过该方案实现业务系统数据的互联互通,避免数据的重复输入和重复处理,实现不同数据库之间数据信息的采集与同步,并且形成了校园信息化的中心数据库.
1 数据采集与同步方法设计
1.1 数据采集与同步系统体系结构
整个系统分为三个部分:首先是主数据库服务器的数据源及数据库驱动封装,将主流的数据源,如Mysql,SQL SERVER,Oracle等数据源驱动全部打包并调试好连接,以便系统能处理各种异构的数据源;第二部分是设计数据采集,根据业务系统类型及需求,设计业务系统源数据录入模块及数据导入模块,导入模块有相应的模板,根据模板整理好业务系统数据,再导入到系统中;第三部分是数据交换部分,也是系统的核心模块,根据数据的来源和用途,将数据源分别命名为数据提供者和数据使用者,在数据提供者中创建一个原始提供源,为保持使用的灵活性,所提供的数据来源于创建数据的SQL语句,这样的设计,在使用的难度上有所增加,但在数据交换的灵活性方面,几乎可以满足用户或系统的所有需求,数据提供者创建后,下一步是创建数据使用者,数据使用者创建过程中选择相应的数据源及数据表,程序将自动列出所有表项供管理员选择要交换的数据列,并且可设置一列或多列为主键,第三步是设置数据提供者与数据使用者之间的数据映射关系,创建数据映射,选择数据提供者和数据使用者,设置表列的数据对应关系,数据提供者与数据使用者表列的关系可以是一对一关系,也可以是一对多的关系,可以设置仅插入的列,重复数据只更新,第四步是设置数据交换,程序设计中提供了两种方式的实现,第一种是辅助数据交换,在辅助数据交换中,列出了所有的数据映射,选择其中的一个点击“数据交换”,此条映射的数据立即开始进行数据的交换与同步,第二种是自动数据交换,程序引入Quartz来实现数据映射的自动同步,数据同步的间隔可以按分钟、小时、天、月等,完全可以按需实现数据的交换与同步,Quartz是一个完全由java编写的开源作业调度框架,在Job接口实现类里面,添加一些用户逻辑到execute()方法.配置好Job实现类并设定好调度时间表,Quartz将密切注意剩余时间.当调度程序确定是通知作业的时候,Quartz框架将调用Job实现类(作业类)上的execute()方法并允许做它该做的事情.无需报告任何东西给调度器或调用任何特定的系统调用.仅仅执行任务和结束任务.如果配置作业在随后再次被调用,Quartz框架将在计划调度的时间再次调用它.
1.2 数据采集及交换模型
数字校园中各个业务系统之间的数据交换最方便的办法是通过数据采集及交换系统来实现,数据交换系统为异构的数据库、文件系统等数据源提供数据提取、转换、传输和存储等操作的数据服务.设计的本系统基于程序的SQL及Quartz任务调度,实现自动、方便、快捷地进行数据的交换与同步,完成基于数据的交换应用及集成.
数据采集系统主要用于业务部门目前还未使用网络业务系统,其数据不能通过交换系统进行数据交换获取,只能由设计的前端Form页面收集用户数据,存储于中心数据库,或者由专门的数据采集模板,由用户按模板进行数据的收集,再由程序设计的专用数据导入模块进行数据的导入来采集.
数据交换模型主要由数据源、数据提供者、数据使用者、数据映射、辅助数据交换和自动数据交换等组成.程序设计中包括数据源连接模块、任务管理模块、数据源管理模块、任务处理模块、调度管理模块、日志管理模块等部分组成.数据采集及交换系统中的任务处理支持数据提取、转换、传输和加载过程的操作,通过任务定义的方式定义数据处理流程,完成在各种网络条件下的数据提取和传送操作.任务可以通过辅助数据交换手工执行和自动数据交换自动执行,特别是可以灵活定义自动执行的条件,如确定时刻触发、确定时间间隔触发,实现数据的自动交换.用户一旦定义了自动执行的任务,就不再需要人工干预,系统会根据设定的条件自动地根据数据映射将数据从数据提供者交换到数据使用者,并进行自动加载.数据交换完成之后,日志管理模块会自动将数据交换的结果存入数据库表,包括数据交换的开始时间、结束时间、总记录数据、完成的记录数、交换的状态,交换的状态分为“成功”和“失败”,如果为“失败”,将包含一个导向包含失败原因的超链接,点开可以查询失败的具体原因.
1.3 数据交换流程
1)设置数据源,配置连接的IP地址、端口、用户名与密码等,并点击“测试”,如果成功则设置完成.
2)设置数据提供者,配置数据提供者的SQL查询语句,设置表列及关键字等信息.
3)设置数据使用者,此为业务系统或中心数据库要接受数据的表列的相关设置.
4)设置数据映射关系,也就是设置数据提供者与数据使用者表列的对应关系,对于重复列,可以设置为更新或覆盖等操作.
5)自动数据交换设置,设置同步计划,同步开始时间,结束时间,重复的频率等.
其中的辅助数据交换为手动同步,点击“数据交换”立即进行数据的交换与同步.
2 数据交换系统安全性分析
数据采集及交换系统在数据操作和传输过程中提供了完善的安全机制,系统提供用户权限管理和身份认证功能,只有合法的并且有权限的用户才能通过系统进行数据的采集及交换,并进行与其权限相应的操作.本系统必须保证数据的安全性,为了确保本系统重要数据的安全性,对重要数据的进行加密处理.目前主要有两种数据加密技术,分别为 “非对称式”和 “对称式”两种.非对称式加密技术即加密和解密使用的是不同的密钥,这两个密钥分别称为 “公钥”和 “私钥”,它们两个只有配对使用才能打开加密文件. “公钥”是指可以对外公布的,而 “私钥”则不能,只能由持有人知道,这就是它安全的优越性.本系统采用“非对称式”加密方法,对交换系统的数据进行加密传输,保证了系统的安全.
3 实验与分析
为了测试数据采集及交换系统在校园网中对不同的业务系统进行数据的采集、同步及交换的准确性及效率,采用该系统对学生教务管理系统、中心数据库系统、一卡通系统和财务管理系统的业务流程中所涉及的业务数据交换和同步进行验证,其中以上4个系统的数据库均采用JAVA数据适配器,不同的数据连接源及驱动来进行连接与交换.学生教务管理系统为Sql server 2005,中心数据库系统为Oracle 12c,一卡通系统为Oracle 11 g、财务管理系统为Sql Server 2000.数据交换系统主数据库服务器的配置为Vmware5.0虚拟机:4核心CPU2.0,RAM6G,操作系统Windows server 2008R2,数据库为Oracle 12c.实验提取了20000多条在校学生信息、专业、院系等进行数据交换与同步处理,自动同步设置每天同步一卡通消费信息,学生住宿信息、学生异动信息、同步财务缴费信息,平均同步时间为5-6秒/万条记录,数据采集系统可以采集学校院系及部门基本信息、专业班级及教职工个人信息,也可实现导入功能,实验结果表明达到了设计的功能要求,响应时间也达到了预期设计的性能要求.
4 结束语
针对校园网中不同业务系统数据进行数据交换与同步及数据综合分析的现实需求,提出了利用 程序设计方式及Quartz的任务调度功能,在校园网中的不同业务系统之间进行数据同步与交换,并主要通过Quartz进行数据自动交换的方案,这样既屏蔽了数据库的异构性问题,又解决了安全性的问题.同时该方案采用数据提供者和数据使用者进行数据的提供和使用,保证了数据来源的权威性及使用的灵活性.实验结果表明新的数据采集与交换方案满足了辅助决策平台中数据的管理需求.
[1] Liu YL, Liu XM,Yang L. Analysis and Design of Heterogeneous Bioinformatics Database Integration System Based on Middleware[A]. Chengdu, China:IACSIT[C]. IEEE,2010:272-275.
[2] 丁 铖,张新华.数字校园中数据同步方法的研究与实现[J].计算机工程,2006,32(20):270-272.
[3] Aji A, Wang F, Vo H, Lee R, Liu Q, Zhang X, Saltz J. Hadoop GIS: a High Performance Spatial Data Warehousing System Over Mapreduce, Proceedings of the VLDB Endowment, 2013, 6(11), 1009-1020.
[4] 张西山,连光耀.基于XML原生数据库技术的维修保障信息存储和交换研究[J].计算机测量与控 制, 2011, 19(12):3099-3101.
[5] 任开银,胡昊伟. 分布式数据交换平台设计与实现[J]. 计算机与数字工程, 2013,40(11): 1850-1852.
Research on Data Collection and Synchronization in Campus
Auxiliary Decision-making Platform
ZHANG Shi-hua, CAI Yi, LIU Zhi-chao, CAO Gui-hong
(1. Network Information Center, Huan Institute of Engineering, Xiangtan 411104, China;2. Hunan Provincial Key Laboratory of Wind Generator and Its Control, Hunan Institure of Engineering, Xiangtan 411104, China)
This article analyzes the development requirements of the data collection and synchronization information technology needs. According to the characteristics of digital campus, a novel data synchronization method is proposed. The method adopts flexible SQL statements set the data source. Through the mapping relationship between exchanging and data synchronization, automatic scheduling of tasks are nealized to achieve automatic synchronization. Scalability of the system and effectiveness of the method are proved by using quartz in practice. The data and synchronization of the actual demand in the auxiliary decision-making platform are satisfied.
digital campus; data synchronization; quartz
2016-06-30
湖南省教育厅科研资助项目(15C0331).
张仕华(1976-),男,硕士,工程师,研究方向:计算机科学及应用技术.
TP311.1
A
1671-119X(2016)04-0051-04