圖書管理系統與校園一卡通數據同步機制的研究
文章出處:http://5052h112.com 作者: 人氣: 發表時間:2011年09月16日
摘 要:隨著數字化進程的加快,多種類,多平臺數據服務在大學校園或社會交匯。本文針對圖書館的數據服務問題,在研究數據融合理論和相關技術基礎上,從解決問題的實際出發,通過對歸檔日志的解析,給出了跨平臺、跨網絡異構數據庫主從雙向數據同步模型。
在社區或大學校園,兩種或多種數據服務交叉的場點非常多。例如:圖書館。這樣的場點,也稱為數據服務問題點,由于沒有解決好多路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)一卡通數據平臺和交易平臺:服務器(舊M小型機9133—55A)配置:IBM P6 55A (4 X 2.1GHz CPU、16GB內存、2 X 146G硬盤、2 X 4GB HBA光纖卡、DVD、磁帶機、雙口網卡、顯卡、異步卡AIX6 1操作系統、HA軟件)后臺數據庫:Oracle Database 1OGFOR lBM Al×5L
(2)ILAS系統服務器: 浪潮英信NF5280(XeonE5520/2GB/1 46GB)系統:SCO(UNIX)OPEN SERVER RE—LEASE 5 O 7
圖1一卡通借閱同步服務示意圖
圖2主從式歸檔解析示意圖
3 結束語
基于異構平臺的數據同步方法很多,如消息隊列法、觸發器法。比較各種方法,考慮數據傳輸、交換的瞬時性和突發性,需要加強對數據平臺的保護,特別是對由數據平臺和支付平臺組成和一卡通系統尤為重要。雙向數據同步,源數據和目標數據具有動態性.歸檔日志解析,通過建立多級備份,實現對聯動操作的限制和過濾,保證了數據安全。本文是我們完成圖書管理系統和一卡通系統數據同步工作的總結,被立為三亞市科信局2009年批準項目。
【稿件聲明】:如需轉載,必須注明來源和作者,保留文中圖片和內容的完整性,違者將依法追究。