APP下载

ATP车载设备管理信息系统数据同步策略研究与实现

2015-06-28赵显琼贺广宇康仁伟

铁路计算机应用 2015年9期
关键词:传输层触发器应用层

赵显琼,贺广宇,康仁伟,戴 博

(1.中国铁道科学研究院 通信信号研究所,北京 100081;2.北京市华铁信息技术开发总公司, 北京 100081)

ATP车载设备管理信息系统数据同步策略研究与实现

赵显琼1,贺广宇1,康仁伟1,戴 博2

(1.中国铁道科学研究院 通信信号研究所,北京 100081;2.北京市华铁信息技术开发总公司, 北京 100081)

本文根据ATP车载设备管理信息系统的特点,分析了该系统对同步策略的各类需求,设计和实现了基于Oacle数据库与MSMQ技术相结合的两层分级数据同步策略RAILS-SYN,保证了数据传输的实时性、一致性和完整性,为系统分级分布式管理的数据同步提供了重要支撑。

ATP车载设备管理信息系统;数据同步策略;Oracle

ATP车载设备管理信息系统(以下简称:ATPMIS)是管理ATP运用履历和运维作业流程的管理信息系统[1]。系统涵盖铁路总公司、铁路局、电务段、车间工区的所有业务需求,兼容多种ATP设备类型的管理。为实现ATP全路调配和网络化维修管理,达到智能数据采集、高效无纸检修、作业流程卡控、科学汇总统计,各级数据的全路统一和实时同步共享是重要的基础和保障。

1 ATPMIS结构

ATPMIS由铁路总公司级服务器和各铁路局服务器两级系统构成,是典型的分布式管理信息系统,各铁路局级服务器具有独立运行数据库,并保持与铁路总公司级数据的实时一致性,如图1所示。数据库的正常运行和数据的一致性影响着管理系统的执行效率和可用性。

为解决ATPMIS数据同步的需求,本文提出分层数据同步策略(以下简称:RAILS-SYN)。在ATPMIS对数据同步需求的基础上,提出了RAILSSYN的总体架构设计;选取MSMQ同步策略为基础[2],进行Oracle数据库应答策略的设计改造,完成消息传输层设计;以消息传输层的文件接口协议为输入,实现实时文件解析与Oracle数据打包和解包功能,完成应用层设计。

2 RAILS-SYN架构设计

2.1 ATPMIS数据同步需求

ATPMIS分为铁路总公司和铁路局两级系统,数据库分别独立。为实现数据全路实时一致,需要各独立数据库之间具备实时数据同步传输能力。

由于系统涉及数据范围广泛,通过对ATPMIS不同业务数据的分类汇总,按照对数据同步需求不同,可将数据分为3类:实时同步数据、定时同步数据、即时调用同步数据。

ATPMIS对数据的管理采用Oracle数据库,单个数据模型数据量庞大,要求对数据进行拆分传输。同时,由于数据的不完整将直接影响数据应用和业务的正常执行,应采取相应措施保证同步数据的完整性。

2.2 RAILS-SYN两层架构

通过对ATPMIS数据同步需求的分析,采用应用层和传输层分离机制,设计两层同步策略RAILSSYN,采用应答和定时重传方式,保证同步数据的完整性。

应用层主要负责完成与Oracle直接相关的同步数据识别、抽取、打包、解包、插入、与传输层对接的功能。传输层主要完成指定数据的点对点传输,及数据传输应答重发功能。具体设计如图2所示。

应用层采用方法调用机制,通过实时检测同步需求,调用相应的应用方法执行同步行为;传输层采用MSMQ(消息队列传输协议),通过加入Oracle应答机制,形成RAILS-MQ传输平台。两层配合共同完成ATPMIS业务数据的不同同步需求。

图1 ATPMIS分布式系统结构图

3 RAILS-SYN传输层实现

RAILS-SYN采用MSMQ为基础,为保证同步数据的完整性,加入了基于Oracle数据库的应答和定时重传机制。

图2 RAILS-SYN同步传输机制架构

在MSMQ的基础上,RAILS-MQ加入Oracle数据库的应答策略,如图3所示。在本地Oracle数据库中建立File_Export和File_Receive两张表,在这两张表中各维护一个状态变量: export_file_status和receive_file_status。通过周期检测这两个状态变量的值,决定执行发送和重发行为,通过对方的MSMQ执行接收行为。

WCF(Windows Communication Foundation)是一种构建分布式系统的标准应用接口,能够提供即插即用的基础管道,实现平台无关的远程调用[3]。本文采用WCF实现所有远程调用完成本地数据库的相关操作。

图3 RAILS-MQ原理图

在接收行为完成时,调用对方的WCF方法,对对方Oracle数据库中状态变量进行维护操作;如果在规定时间内,本地已发送文件的变量状态仍没有得到更新,则执行该文件的重发行为。通过应答策略的加入,防止了错发、漏发行为的发生,保证了文件的完整性和一致性。

4 RAILS-SYN应用层实现

在传输层的基础上,应用层主要用于检测需要同步的数据,实时或定时触发消息发送行为。其主要触发信息来源有3种:(1)数据库中出现需要即时同步的数据时,通过实时检测同步数据表同步标志位实现;(2)定时同步表的计时器完成一个周期的计时,通过实时接收定时器的反馈信息实现;(3)通过WCF相关同步方法被调用时,触发相应表的同步行为,通过WCF中的本地或远程方法调用实现。

应用层通过数据库触发器触发或内置定时器触发,执行定时检查数据库、定时执行同步;通过RAILS-MQ接收完成命令触发,将接收到的数据包解包,插入到数据中;将需要同步的数据,打包放入本地文件容器中,并通知RAILS-MQ执行发送。

RAILS-SYN应用层框图如图4所示。

在应用层实现过程中,捕捉变化的数据是同步数据抽取的关键和难点,目前最常用的捕捉变化数据的方法有触发器方式、时间戳方式、全表删除插入方式、值班表对比方式、日志表方式等。本文采用触发器和时间戳相结合的方式。

图4 RAILS-SYN应用层

在要抽取的表上建立需要的触发器,一般要建立插入、修改、删除3个触发器,源数据表中的数据发生变化时,相应的触发器就会执行操作。

当触发执行向另一个表中定稿数据时,在该表中另外增加时间戳和操作类型字段,系统中更新业务表数据时,同步在该表中定稿时间戳以及所执行的操作类型(添加、删除和修改)。

应用层是RAILS-SYN同步策略的核心,所有同步触发逻辑都集成在应用层中,与之相比,传输层仅用于保证通道畅通,传输无误。

5 RAILS-SYN特点与展望

RAILS-SYN同步策略已在ATPMIS中运用,实现了铁路总公司级系统和铁路局系统的履历数据、故障数据、检修数据、专项任务数据、备品备件数据、技术资料数据的同步共享。

5.1 RAILS-SYN特点

(1)实时性:RAILS-SYN能够根据同步需要,对变化的数据实时同步。(2)适应性:RAILS-SYN预留配置接口,能够根据不同的同步需求进行灵活定制,如:即时同步、定时同步、调用同步等,通过配置相应的表,或直接调用WCF方法实现。(3)松耦合性:RAILS-SYN通过两层设计,将传输层与应用层独立分开,实现了松耦合性。(4)可扩展性:不仅仅局限于在ATPMIS的应用,对相似同步需求的系统都可进行应用。

5.2 RAILS-SYN展望

随着电务系统信息化的需求越来越迫切,全路统一信息化管理已经提上日程,除了对ATP设备信息化管理需求,其他相关的设备管理和作业流程规范信息化管理的需求也逐步加入到总体信息化建设规划中,而无论是哪一种建设,都离不开数据同步共享技术的支撑,RAILS-SYN将在信息化进程中发挥重要作用。

6 结束语

数据同步技术是铁路信息化的一项重要支撑技术,它可以保障应用信息的可靠传递,达成业务流程信息的相互连通,促成铁路局范围乃至全路范围的完整集成,实现分布式应用的顺利部署。本文提出的RAILS-SYN同步策略,充分考虑了不同数据的不同同步需求,设计具有实时性、易配置性、松耦合性和易扩展性,能够充分适应ATPMIS及其它铁路信息系统的数据同步需求,对推进铁路信息化进程具有重要的现实意义。

[1] 原铁道部.铁路电务管理信息系统ATP车载设备管理子系统总体方案[Z]. 2013.

[2] 朱晓冬,耿国华,周明全. MTS和MSMQ 技术及其应用[J].西北大学学报:自然科学版, 2002,32(1).

[3] 刘黎志,吴云韬. 应用WCF分布式框架实现移动数据同步[J]. 计算机应用,2011,31(12).

责任编辑 陈 蓉

Data synchronization strategy of ATP On-board Equipment Management Information System

ZHAO Xianqiong1, HE Guangyu1, KANG Renwei1, DAI Bo2
( 1.Signal&Communication Research Institute, China Academy of Railway Sciences, Beijing 100081, China; 2.Beijing China Railway Information Technology Development Corporation, Beijing 100081, China )

Based on the characteristics of ATP On-board Equipment Management Information System, this paper analyzed the demands for the current synchronization strategy of the System, designed and implemented two hierarchical classifed data synchronization strategy RAILS-SYN based on Oracle database and MSMQ technology, which ensured the real-time data transmission, data consistency and integrity, provided important support for data synchronization of the System’s classifed distributed management.

ATP On-board Equipment Management Information System; data synchronic strategy; Oracle

U284.48∶TP39

A

1005-8451(2015)09-0027-04

2014-12-30

中国铁路总公司科技研究开发计划课题(2014X008-H);中国铁道科学研究院基金课题(2013YJ046)。

赵显琼,助理研究员;贺广宇,助理研究员。

猜你喜欢

传输层触发器应用层
浅谈时序逻辑电路的成长记忆
基于Python语言的网络传输层UDP协议攻击性行为研究
ZnO电子传输层在有机无机杂化钙钛矿太阳能电池中的应用
触发器在酒店管理系统中的应用
物联网无线通信传输层动态通道保障机制
基于物联网GIS的消防智能巡检系统设计与实现
基于分级保护的OA系统应用层访问控制研究
物联网技术在信息机房制冷系统中的应用
Current advances in neurotrauma research: diagnosis, neuroprotection, and neurorepair
几种常见触发器工作方式的讨论