图书管理系统与校园一卡通数据同步机制的研究

时间:2022-08-30 06:07:50

图书管理系统与校园一卡通数据同步机制的研究

摘要:随着数字化进程的加快,多种类、多平台数据服务在大学校园或社区交汇。本文针对图书馆的数据服务问题,在研究数据融合理论和相关技术基础上,从解决问题的实际出发,通过对归档日志的解析,给出了跨平台、跨网络异构数据库主从式双向数据同步模型。

关键词:归档日志;数据同步;一卡通

中图分类号:TP393.18

Research on Library Management System and Campus E-card System Based on Data Synchronization

Wang Yong1,Bai Qiang2,Zhou Mi1

(1.Hainan University Sanya College 572022;2.Sanya Polytechnic Vocational College 572022)

Abstract:With the rapid development of digitization, various data service platforms are provided in college or community. This paper analyzes the problems of data service in library on the basis of researching data fusion technology. The thesis is presented from log analysis in the view of the practical problems and it contributes to making master-slave bilateral data synchronization model based on cross-platform application and cross-network heterogeneous databases.

Keywords:log analysis;data synchronization;E-card system

在社区或大学校园,两种或多种数据服务交叉的场点非常多。例如:图书馆。这样的场点,也称为数据服务问题点。由于没有解决好多路ISP数据流整合和同步,出现应用滞后或技术支持缺乏,或者是花了钱没有达到实际效果。硬件兼容和搭配、控制系统高度集成,最终形成多路数据融合,是数据服务的重要功能。本文研究校园一卡通在图书管理系统中的应用,讨论基于解析归档日志模式的数据同步机制,为不同服务间数据融合提供支持。

1 数据同步功能

在图书馆,实现IC借阅功能,涉及两路数据服务,因此,数据同步也是双向的,如图1所示。一是图书馆自动化管理系统数据同步,再就是一卡通系统数据同步,下面对其功能分别描述。

1.1 一卡通数据同步

图书管理系统对每一位借阅者分配唯一的认证编码,或以条形码形式生成。一卡通系统需要完成的功能如下:

(1) 身份认证

通过联机终端上的射频卡机,读取写在卡内存储芯片上专储区域内的认证编码,直接在前端完成和图书管理系统的数据交换。由于毕业、挂失、离校等因素,各自独立的后台数据库需要身份认证的完整性和一致性约束,这就要做系统间的数据同步。

(2) 代扣款项

各个端口的POS机通过采集系统把数据传送到交易平台的前置机,该数据直接提供给财务部门作为核算凭证,完成支付。由于图书管理系统中很多服务涉及到扣款项目,如赔偿、罚款、复印、在线查阅等,需要和一卡通系统支付平台建立数据同步,保证账户数据的准确性。

1.2 图书馆数据同步

完善的图书管理系统,一般采用C/S(数据库-中间层-客户端)、B/S(数据库-Web服务器-浏览器)两种模式的架构。底层数据库采用Oracle、Sql Server等,提供通用的ODBC数据接口,可以实现与第三方软件无缝连接,完成数据交换。

(1) 读卡模式

发卡、写卡(写身份认证到卡的专储区域)由一卡通服务授权方负责,一卡通开发商提供读卡动态链接库。ILAS(自动图书馆管理系统)提供一个读卡程序,将读到的证号发送给ILAS客户端相关程序,完成借、还管理,该模式不涉及扣款等消费功能。

(2) 同步模式

实时接收读者信息、挂失、注销及扣款等功能的实现,需要保持异步数据库表与表项对特征描述的一致性。跨平台数据交换的中心是同步服务程序,也是一个开放的接口服务程序,多路数据服务都可以向该接口发送信息(只要他知道了该接口的地址),只有拥有一定权限的用户才能从接口中收取相关数据并处理该数据。在没有第三方提供标准接口时,只能由数据服务双方或多方开发同步服务程序。

1.3 同步功能描述

由于讨论的是基于两种服务的数据同步,因此要建立各自的同步软件,功能描述如下:

(1) 一卡通中心软件方实现功能如下:

一卡通服务程序实时将请求(新增读者、修改读者记录、换卡、挂失、注销等)发送给ILAS服务程序,如果操作失败(或网络不通、超时等异常发生时),一卡通服务程序需将该次请求(相关信息)记录下来(采用文件,或数据库方式);然后定时将这些失败请求重新发送给ILAS服务程序进行处理。

(2) ILAS系统实现功能如下:

ILAS系统将接收到的服务请求进行分析,进行相应的处理(新增读者、换卡、挂失、注销等操作),并将操作结果返回给一卡通服务程序。

2 基于解析归档日志的数据同步

由于一个校园或一个社区,存在多种类数据服务交织,不同的开发技术和后台数据库,造成它们之间数据分离。另一方面,整体行政管理带来电子数据交换需求,这就要求实施数据同步。

解析归档日志这种技术现在应用的比较广泛,Quest公司的shareplex软件、DSG公司的realsync和Oracle的Stream都是这样的产品。那么,它能做什么呢?实现数据库容错和异构、异地数据库完整性和一致性。

2.1 归档日志的概念

数据库系统提供记录对库操作的所有DML语句的日志文件组,该文件组采取循环重写,只要数据库运行在归档模式并且设置自动归档为“真”,才能产生永久保存的归档日志。它的内容包括:数据库的更改历史、更改类型(INSERT、UPDATE、DELETE、DDL等)、更改对应的SCN号以及执行这些操作的用户信息等。

2.2 归档日志解析

归档日志的解析首先要确定数据库间的主从关系,目的是随着主数据库逻辑结构的改变而重置从数据库,保持异构或异地数据库的同步,这里的逻辑结构包含表、表项及记录等。解析过程其实就是源操作的分解过程,重构等价的SQL语句。具体如图2所示。

2.3 Oracle的Stream

Oracle Stream利用高级队列技术,从库与主库可以是不同的操作系统平台,也可以是多对一的建立关联。通过解析归档日志,将归档日志解析成DDL及DML语句,对从数据库组实施追加操作,实现数据库之间的同步。这种技术可以将整个主数据库、数据库中的对象备份为一个新库,对归档日志和关联的备份库进行数据解析,进而在对主库及相关一卡通支付平台没有任何采集与更新压力的情况下,实现对主数据库组及表、对象、表项,甚至整个数据库组的同步。

2.4 系统配置示例

(1) 一卡通数据平台和交易平台

服务器(IBM小型机9133-55A)配置:IBM P6 55A(4×2.1GHz CPU、16GB内存、2×146G硬盘、2×4GB HBA光纤卡、DVD、磁带机、双口网卡、显卡、异步卡AIX6.1操作系统、HA软件)

后台数据库:Oracle Database 10G FOR IBM AIX 5L

(2) ILAS系统

服务器:浪潮英信NF5280(Xeon E5520/2GB/146GB)

系统:SCO(UNIX)OPEN SERVER RELEASE 5.0.7

3 结束语

基于异构平台的数据同步方法很多,如消息队列法、触发器法。比较各种方法,考虑数据传输、交换的瞬时性和突发性,需要加强对数据平台的保护,特别是对由数据平台和支付平台组成和一卡通系统尤为重要。双向数据同步,源数据和目标数据具有动态性,归档日志解析,通过建立多级备份,实现对联动操作的限制和过滤,保证了数据安全。本文是我们完成图书管理系统和一卡通系统数据同步工作的总结,被立为三亚市科信局2009年批准项目。

基金项目:2009年三亚院校专项资金项目

作者简介:王涌(1964-),高级实验师,硕士,获军队科技进步三等奖两项,各级刊物25篇,研究方向:计算机应用。

上一篇:Google Buzz三个高级使用技巧 下一篇:浅析色彩设计在地图中的应用