基于教务管理系统新旧版本的数据库同步系统

2020-11-23 04:48佘彦超冉耀宗
无线互联科技 2020年17期
关键词:教务异构管理系统

申 毅,佘彦超,冉耀宗

(铜仁学院 大数据学院,贵州 铜仁 554300)

0 引言

随着大数据技术的发展,越来越多的分布式单元需要进行数据库的同步。例如,银行各个网点之间的数据同步,医院不同部门数据之间的同步等。现有的数据同步方法有两种,分为同构数据库的同步和异构数据库的同步。同构数据库的同步与不同网点MySQL数据库之间的同步相同。由于采取相同的存储机制,相同数据库的同步较容易实现,数据库厂商针对各自数据库系统开发的同步方案[1],如Oracle、结构化查询语言(Structured Query Language,SQL)Server。异构数据的同步与MySQL与SQL Server数据库之间的同步相同。由于采取不同的存储机制,不同数据库的同步较难实现。学者们提出利用数据库触发器和存储过程实现的数据同步系统[2-5]。由于学院教务处旧版系统采用MySQL数据库,新版系统采用SQL Server数据库,两个版本都在使用,两者之间需要进行异构数据库同步。采用基于触发器的机制捕获变化数据,耗损资源较大,故采用基于时间戳增量变化捕获方式[6],耗损资源较小。设计教务管理系统新旧版本的数据库同步系统,一个数据库的信息产生变化,采用可扩展标记语言(Extensible Markup Language,XML)作为中间件,将这个数据库的增加、删除、修改等信息写入XML文件,将这个XML文件传递给另一个数据库,另一个数据库通过解析XML文件获得相应变化的信息,从而获得信息同步。

1 系统同步原理

该系统分为同步规则定义、数据扫描、XML文件生成、文件传输、XML文件解析5个过程。

同步规则定义包括异构规则声明和数据扫描周期。异构规则声明包括源数据库和目的数据库相互对应的数据库名、表名、字段名、字段数据类型、主键标识。如源数据库的“Course-Information”表对应于目的数据库的“Course”表,通过异构规则声明,使目的数据库知道两者的对应关系。数据扫描周期可以分为一小时、一天、一周、一月。

数据扫描根据扫描周期进行相应间隔时间的数据扫描,并生成相应的XML文件如下:

...重复M多行(比如M等于10万条记录)

主键值课程名称为“数字电路基础”的记录其opt属性值为“I”,说明其是源数据库新增的数据,当目的数据库解析时,将该记录写入到数据库中。

异构规则声明文件和XML文件通过内部网络进行传输。根据异构规则声明,目的数据库端通过解析XML文件进行相应的数据操作,完成源数据库和目的数据库的同步。

2 系统实现

系统采用Java技术,通过Web界面显示旧版教务管理系统的课程信息、考试信息和调课信息,课程信息界面如图1所示。

图1 旧版教务管理系统的课程信息

通过Web界面显示新版教务管理系统的课程信息、考试信息和调课信息,课程信息界面如图2所示。

图2 新版教务管理系统的课程信息

同步参数设置实现了异构数据库同步的用户可操作配置。设置好同步周期和同步模式,源数据库和目的数据库就可以自动同步。同步参数设置如图3所示。

图3 同步参数设置

同步后的新版教务管理系统的课程信息如图4所示。

图4 同步后新版教务管理系统的课程信息

3 结语

设计学院教务管理系统新旧版本的数据库同步系统,采用基于时间戳的增量变化捕获方式,将XML作为中间件,将源数据库的增加、删除、修改等信息写入XML文件,将XML文件传递给目的数据库。目的数据库通过解析XML文件获得相应变化的信息,获得信息同步。采用Java技术实现了同步系统的界面操作,便于管理同步进程。

猜你喜欢
教务异构管理系统
基于James的院内邮件管理系统的实现
试论同课异构之“同”与“异”
教务排课对高等院校教学运行的作用分析
浅析高校教务管理存在的问题及对策
基于LED联动显示的违停管理系统
海盾压载水管理系统
异构醇醚在超浓缩洗衣液中的应用探索
overlay SDN实现异构兼容的关键技术
LTE异构网技术与组网研究
浅谈新形势下高校教务管理人员的素质与培养