要满足上述业务上的需求,采用常规的数据库复制方式和一般的应用方式是难以达到的。原因在于无论是数据库复制方式还是一般的应用方式,其通讯处理方式都过于简单,低层通讯的正确性、资源的有效利用和网络故障的处理应对、主机故障的处理应对等缺乏很好的机制来加以保障。所以,就有可能出现乱码,或者当网络抖动或拥塞时,数据集中业务过程无法有效进行等问题。
目前,针对此类应用(非联机事务处理系统,强调可靠性,非关联性?实时性要求不高)特点,各行各业广泛采用消息中间件来实现。消息中间件是一种基础软件,在操作系统之上和应用之下,它可用来隔离应用系统对操作系统和网络的直接关联和依赖。东方通科技公司的消息中间件产品TongLINK/Q,负责网络资源的有效利用、消息数据传输,为应用屏蔽网络故障、通过内部的自动压缩/解压功能减少网络通讯量等。其典型使用是异步方式调用,此时地市数据发送方只要将数据交给本地的中间件TongLINK/Q,而TongLINK/Q负责将数据高效、可靠地传输到省中心,并提交给相应的目标程序进行入库处理。
PICC财险数据集中系统
省级数据集中方案是当市级公司数据库数据发生变化时,对其所在省的省级的数据库数据做相应同步的过程。PICC财险数据集中系统结构图1。
此时,对于数据集中备份过程而言,它是一个必须要完成的工作,而在时间上只求尽快而可靠地完成,并无严格的时间限制,采用消息中间件产品TongLINK/Q来实现。另外,在应用层面,为了使集成商开发的应用系统相对独立,对数据集中备份过程建议采用一套独立的应用来完成。
在市级公司数据中心编写一个定时启动程序或守护进程,用来采集数据库的变化数据,一旦有数据它将以业务处理单元为单位,把它投给TongLINK/Q的可靠队列中。在省级数据中心,编写对应服务程序,它在接收到数据后将在本地执行相应的数据库处理,以达到数据同步。TongLINK/Q还可以保障服务处理的可靠,即如果服务程序在执行相应的数据库处理时意外失败,TongLINK/Q将记住这一问题,再次提请相关服务程序进行处理,直到成功。
消息中间件TongLINK/Q在PICC财险数据集中系统中的部署图如图2所示。
系统由地市客户程序、地市TongLINK/Q运行系统、省级TongLINK/Q系统和省级服务程序四部分组成。地市客户程序负责对地市需要上传集中的数据做识别和提取,并形成数据包或文件,然后通过TongLINK/Q的API接口作为一项任务消息提交给TongLINK/Q。客户程序的启动运行可以外部触发(如:数据库trigger)执行,也可以交由TongLINK/Q作为定时程序按一定时间间隔进行调度。消息数据的传输以及相关效率、可靠等问题由TongLINK/Q解决。省级对应的服务程序可以由TongLINK/Q在有数据需要处理时进行调度,并将相关数据交给服务程序进行处理。在有多条消息数据到达时,也可以同时调度起多个服务进程同时进行多个消息数据的处理。数据从省级中心到总部中心的工程与上面的处理类似。
系统特点
· 提供异步处理接口。为了使数据备份复制过程不影响原来应用系统(相对独立、不直接双向依赖),采用异步通讯方式。
· 提供可靠传输能力。依靠消息中间件TongLINK/Q的可靠队列传输功能,使地市增量备份数据可以尽快、可靠地到达省数据中心主机。在传输期间,消息中间件TongLINK/Q可以应对各种故障的发生,如通讯网络故障、主机宕机等情况,可以做到断点续传,使备份数据“一次传递、可靠到达”。
· 可以提供备份过程数据库操作的事务性处理。即除了数据的传递是可靠的之外,在省级数据中心数据的数据库备份操作也是可靠的。在对备份数据进行数据库插入或修改操作时,如果操作失败(例如,当时数据库状态不对引起数据库操作失败),消息中间件TongLINK/Q将会保留这一信息和数据,重复执行相应处理过程,直到成功。
· 维护和保持通信通畅。TongLINK/Q对通信通道具有自动维护功能,当网络出现抖动影响通信时,TongLINK/Q可以自动监控和重建链路来保障通信的快速恢复。
· 保障通信效率。TongLINK/Q通过以下手段来保障通讯效率:维护通讯畅通和自恢复;支持断点续传;根据网络带宽情况有不同传输策略来保障网络带宽的充分利用;支持自动压缩功能,减少通讯数据量。
· 支持服务端程序的并发调度和控制。上传数据自动提交相应的处理程序进行处理,对多个地市同时上传的数据可以并发调度多个服务程序进行处理,提高处理效率。
中国人民保险公司的业务数据集中已经于2002年7月开始运行,业务数据已经由地市集中到省或总部。这为中国人民保险公司的商业智能应用、客户关系管理、风险管理等打下了良好的数据基础,数据可以发挥更大的作用。
文章来源于领测软件测试网 https://www.ltesting.net/