数据交换系统设计思路

关键词: 地震

数据交换系统设计思路(精选九篇)

数据交换系统设计思路 篇1

本系统的设计遵循可配置、可伸缩、高性能3大宗旨。本系统为上层程序提供高效的数据访问Http接口,功能涵盖数据库访问、缓存访问、搜索引擎服务几大块,考虑到各种上层程序的数据源的不同,缓存使用率的差异以及数据检索的需求不同,系统必须做到可灵活配置,包括以下几个重要方面:可配置数据库类型(Oracle或My SQL,可配置数据库连接池的容量、时间等参数,可配置缓存服务的个数,可配置缓存失效的时间,可配置搜索引擎的字段索引方式、索引类型、索引个数等等。并且系统要能确保数据库连接的稳定,确保数据库连接能够中断重连,确保缓存数据的均衡分布,确保数据搜索的高效,确保整个服务无单点故障。

2 总体设计

2.1 需求

本系统提供上层程序,如:PHP、ASP、JSP、.NET等数据操作(含增删改)及数据查询功能。本系统与上层程序采用Http方式进行通信,采用UTF-8编码以XML或JSON传输数据。

2.2 运行环境

硬件环境:CPU T5870,800/内存,2G,硬盘40G以上

软件环境:Cent OS releas5.4,Nginx0.8.49,Tomcat6.0.18,Memcache1.1.12

2.3 系统结构

在整个Web应用中,本系统部署在页面程序(如:PHP)与数据源(如:My SQL或Memcached)之间。浏览器终端向Web服务器发出请求,Web服务器将请求转发给中间件系统,中间件系统对请求分析后,自动选择最高效的数据源(缓存或者DB)获取数据,数据经过封装返回给Web服务器,Web服务器再对用户作出响应,参考图1。

本系统主要可分为以下几大模块:请求接受模块、请求分析模块、缓存访问模块、缓存维护模块、数据检索模块、索引维护模块、数据库访问模块、数据库连接池以及数据处理和封装等辅助模块。

为了降低系统各模块之间的耦合度,并考虑到服务的单点故障问题,本系统采用集群+分布式的部署方式。Tomcat的部署:集群方式,采用多个Tomcat上部署相同的请求处理程序,Tomcat前端采用Nginx实现负载均衡。当有请求到达,Nginx将根据各个Tomcat服务的负载情况分发请求。

负载均衡部分配置参数如下,Nginx运行于172.17.1.172的81端口,4个Tomcat分别运行于172.17.1.172和172.17.1.173的90及100端口。外部请求统一由172.17.1.172的81端口接收,然后转发至上述4个Tomcat之一,Tomcat处理成功后交由Nginx返回结果给上层程序。

3 接口设计

3.1 外部接口

本系统对外提供两个Servlet作为Http访问接口:QueryServlet和Execute Servlet。

Query Servlet接收数据查询请求,Execute Servlet接收数据操作(含增删改)请求。请求的数据格式为String类型的XSQL语句。

XSQL实际上就是标准SQL末尾追加附加参数。“nocache”表示不使用缓存及搜索引擎而直接强制到数据库查询数据。“lucdb”表示不使用缓存,而选择搜索引擎或者数据库为数据来源。“luc”表示不使用数据库,选择缓存或搜索引擎为数据来源。若不含有附加参数则由中间件系统智能判断使用何种数据源。

3.2 内部接口

内部一个最主要的接口是IController,IController是请求响应的控制中心。所有对外数据的进出都将通过本接口,该接口还承担了请求参数的安全正误验证以及数据源的选择工作。

整个查询请求的处理过程如图2所示,首先控制中心接收请求,第一步交由请求分析器分析请求参数,然后交由缓存模块获取数据,若缓存没有命中,则根据配置或者参数需求到搜索引擎获取数据,如果索引失败或者索引中无数据,最后交由数据库模块获取数据。

除控制中心外,还有几大模块,第一个模块是缓存模块,含两个重要接口:ICache Server,ICache Updater。ICache Server是缓存服务接口,任何缓存的存取操作都通过该接口进行。该接口包含以下方法:stop,停止缓存服务;contains Key,缓存中是否含有该Key;put,将数据存入缓存服务器;remove,将数据从缓存服务器中移除;update,更新缓存中服务器中的某对应数据;get,从缓存服务器中得到某数据;key Set,返回缓存服务器中的所有Key;persistence,持久化某缓存。I-Cache Updater接口管理者缓存数据的更新工作,当数据库中数据更新后,该接口在一定时间内会把最新数据同步到缓存。

第二个重要模块是数据库模块,包含以下几个接口和对象:IDBSql Processor,SQL处理转换接口,根据数据库的类型,对SQL进行针对性的处理;DBSearcher,数据库搜索对象,负责到数据库检索数据,并返回特定格式;IDBEditor,负责对数据库进行增删改操作,含同步操作和异步操作;IPool Con FAC,连接池工厂,负责管理所有的数据库连接池。

第三个重要模块是搜索引擎模块,该模块核心部分基于开源框架Lucene实现。包含以下接口和对象:Luc Searcher,搜索入口;ILuc Sql Processor,Lucene提供搜索API但并不支持直接用SQL查询,所以程序需要对SQL进行分析转换,该接口就是进行SQL的预处理,过滤掉Lucene不支持的数据及查询类型;ISql To Map Processor,该接口对预处理后的SQL进行搜索条件的提取并转换成Hash Map,方便下一步的处理。IMap To QBPro,转换Hash Map为自定义的查询对象QueryBean;IQuery Builder,负责把查询对象Query Bean解析封装成Lucene的查询对象Query;IRs Processor,对查询结果进行格式转换,方便输出。

第四个模块是索引维护模块,有两个重要接口:IIndexUpdater,索引更新周期的控制,索引更新类型的控制,如重建索引或增量索引;IIndex Creater,索引的创建对象,索引的创建由该接口实现。

我国VTS系统数据交换格式实践 篇2

我国VTS系统数据交换格式最新实践

结合欧盟SSN研究报告和我国有关VTS数据格式标准化研究成果,分析了我国VTS数据交换的`具体内容.针对船舶动态位置信息、船舶静态信息和船舶航程相关信息,定义了基于电文和XML的两种数据交换格式.

作 者:刘月胜 黄习刚 何荣希 作者单位:刊 名:中国水运(上半月)英文刊名:CHINA WATER TRANSPORT年,卷(期):“”(5)分类号:U6关键词:VTS 数据格式 电文 XML

数据交换系统设计思路 篇3

关键词:数据流;交换共享

中图分类号:TP311.52文献标识码:A文章编号:1007-9599 (2011) 07-0000-02

Data flow Design and Research in Information Resources Exchange Sharing System

Chang Xianfa

(Heyuan Vocational and Technical College,Heyuan517000,China)

Abstract:The process of information exchange and sharing of resources,focus on information exchange platform given model and the advantages of three-tier structure,and described the shared data collection and use of data flow process,the data stream of information exchange and sharing of resources System provides a feasible solution.

Keywords:Data flow;Exchange and sharing

一、引言

随着现代计算机和通讯技术的飞速发展,为了避免资源浪费,实现资源共享,那么数据在各业务部门实现共享就成了一个非常重要的技术。信息交换平台是数据在各业务部门实现共享的基础;共享数据的数据流的采集是实现信息资源交换共享系统的前提;共享数据的数据流的使用是实现信息资源交换共享系统的最终目的。

二、信息交换平台的计算模型

信息交换平台的核心技术是应用集成代理。集成代理主要有统一访问构件和源适配器组成。统一访问构件根据不同的业务数据库都有一套规则去访问。源适配器主要有数据抽取构件、数据转换构件和数据出版构件组成。而目的适配器是源适配器的逆向转换,包括数据订阅构件、数据转换构件和数据保存构件。然后再通过统一访问构件把从业务数据库抽取到的数据放到中心数据库里。信息交换平台的计算模型如图1所示。

图1 信息交换平台的计算模型

从图1可以看出,信息交换平台的计算模型主要有3层:数据访问层、数据抽取层和数据交换层。在数据访问层中,主要是实现对各个不同的业务数据库(包括SQL Servler、Oracle和MySql等)的对接和无缝访问;数据抽取层是在数据访问层的基础上,把业务数据库有用的数据抽取出来,放到资源交换平台中;数据交换层相当于数据交换中心,把业务数据库的数据通过适配器转发给中心数据库,也可以把中心数据库的数据转发给业务数据库,实现数据库间的交换共享。

三、共享数据的数据流的采集

共享数据的数据流的采集是信息资源交换共享系统实现数据交换共享的基础。我们的目的就是最大限度的使用原有的资源,使各个数据库的数据资源达到共享。共享数据的数据流采集包括两部分:一部分是业务部门;一部分是数据中心。业务部门可根据需要定义自己的部分共享数据,定义的共享数据包括哪些数据需要共享,以及把这些数据共享给谁等等。而数据中心主要是存储各个业务数据库需要使用的基础数据,这样可以避免资源重复建设,最大有效的利用资源。

图2 共享数据采集流程

从图2的流程中可以看出数据流采集的过程。业务数据库不但对应于自己的业务应用系统,而且通过数据镜像子系统,可以把数据库里的数据抽取到采集库。采集库通过数据适配器把共享数据发送到数据中心。从而与数据交换中心的数据库里的数据进行交换。

四、共享数据的数据流的使用

共享数据的数据流的使用是信息资源交换共享系统实现数据交换共享的最终目的。通过数据交换中心,我们就可以把业务数据库里的共享数据抽取到共享数据库里。数据交换中心和承担着为业务数据库访问共享数据库的重任。

从图3我们可以清晰的看出共享数据流在业务部门中的使用流程。在业务部门放一个前置机,主要是通过数据交换适配器完成对共享库的访问和通过数据比对子系统比对共享数据库里的数据进行筛选、抽取和使用。业务部门不但可以有效使用共享库里的共享数据,还可以在基础数据一致性的基础上,对抽取的共享数据的使用具有选择性。

图3 共享数据流在业务部门中的使用流程

五、小结

本文介绍了信息交换平台的计算模型、业务部门和数据中心的交换流程和业务部门使用共享数据流程。通过数据交换中心,共享数据被发布到共享数据库里。通过数据交换适配器和前置机,方便各业务单位对共享数据库的访问和分发。

参考文献:

[1]宋继革.我国发电企业信息资源整合问题的研究[D].华北电力大学,2005,3,1

[2]黄萃.基于门户网站的电子政务信息资源整合机制研究[D].武汉大学,2005,4,1

[3]孙琳.企业信息资源整合的目录服务系统及应用研究[D].大连理工大学,2005,12,1

[4]杨传健.LDAP在政务资源整合中的数据一致性应用研究[D].合肥工业大学,2007,6,1

[5]May,Wolfgang,and Lausen,Georg.Auniform framework for integration of information from the web.Imformation Systems,2004,29(1):59-61

病理信息系统的数据交换设计 篇4

关键词:病理信息系统,HIS,数据交换,触发器

病理学诊断为临床医师进行疾病诊断、制定治疗方案、评估疾病预后和总结诊治疾病经验等提供重要的、有时是决定性的依据,并在疾病预防,特别是传染病预防中发挥重要作用。它是病理医师应用病理学知识、有关技术和个人专业实践经验,对送检的患者标本(或称检材,包括活体组织、细胞和尸体等)进行病理学检查,结合有关临床资料,通过分析、综合后,作出的关于该标本病理变化性质的判断和具体疾病的诊断。病理诊断报告不是影像学的描述,而是明确的疾病诊断,临床医师主要根据病理报告决定治疗原则、估计预后以及解释临床症状和明确死亡原因,病理诊断在所有诊断手段中具有核心作用和权威性。病理学诊断报告书(或称病理诊断报告)是关于疾病诊断的重要医学文书。在医、患间医疗争议时,相关的病理学诊断报告书具有法律意义。

病理信息系统(Pathology Information System,PIS),作为医院信息系统(Hospital Information Sysytem,HIS)的重要部分,它属于实验室信息系统范畴。早期的病理信息系统重点围绕图文诊断报告的形式来组织数据和功能,一般为单机版本。当前的病理信息系统主要围绕病理检查工作流程,成本、质量控制来组织数据和功能,主要实现了病理检查申请、病理标本登记、取材信息登记、切片信息登记、图文诊断报告、特检信息登记、档案管理、病理检查工作流程的管理和科室管理。使得标本进入科室后与之发生的所有活动都成为电子数据,为病理诊断、科研和教学提供了良好的工作平台,同时也在质量管理的各个层次,如质量控制中的流程管理、诊断管理、档案管理;质量保证中报告的及时性,诊断的错误率,冰冻切片诊断的准确性,病理报告中有关肿瘤分期的内容(如肿瘤的大小、切缘情况)是否完整等;以及相应的质量改进中发挥着重要的作用。但还存在着忽略以大体标本检查、拍摄、取材为核心的规范化操作实现,忽略环节质量控制对信息系统的要求,忽略病理检查业务流程与外部网络平台的交互缺陷。

未来病理信息系统将是外部病理会诊、内部工作平台的结合,以互联网为工作平台,具有标准结构和编码,实现智能管理的信息系统。

病理信息系统作为医院信息系统的子系统,在系统设计和建设如何与医院其它信息系统融合,实现流程上与上、下游系统衔接,数据共享,预留未来升级的数据接口都是需要解决的问题。

1 问题分析

病理检查工作主要围绕患者标本进行,标本又称检材,它可能是活体组织、细胞和尸体等。要完成一次病理检查主要操作步骤有:

开病理检查申请单→取材并完善申请单内容→大体标本照相→标本登记并收费→取样并制作切片→读片并书写检查报告→签发(确认)报告→报告阅读。

病理检查申请单主要包含患者基本情况,如姓名、性别、年龄、送检单位(医院、科室)、床位、门诊号/住院号、送检日期、取材部位、标本数量等。患者临床情况如病史(症状和体征)、化验/影象学检查结果、手术(包括内镜检查)所见、既往病理学检查情况(包括原病理号和诊断)和临床诊断等。为了提高手术医生的开单速度,允许手术前开出检查申请单,发出申请单时补录手术所见。大体标本照相使用CCD摄像机对手术取材的大体标本进行照相,采集的图像保存到影像服务器中,供后续检查过程核对,避免大体标本差错,在大体标本不再保存期间作为核查原始信息的依据。

病理检查的每一进展状态、确认后的诊断报告等信息,通过接口程序回填到HIS系统中,所采集的病理影像归档到PACS服务器中,供临床医生阅读。

临床医生通过住院医生工作站、门诊医生工作站开出病理检查申请后,对于手术病人在手术过程中取得标本材质并补充手术所见,然后发出申请;非手术病人的取材,主要通过活检方式。尸检病人的申请需相关部门批准,登记较为特殊,仍以手工申请为主,病理信息系统进行备案。临床医生通过医生工作站查阅病理检查状态和病理报告,通过PACS浏览工作站查阅病理检查图像。

病理医生通过取材工作站完成标本取材登记,对取材部位及相关信息进行标记;通过图文报告工作站完成病理涂片图像的采集、书写诊断报告,在需要时出诊断补充报告,提出进一步的检查申请等。

病理技师通过切片工作站,按切片列表完成涂片的制作,并打印标识条码,制作合格的病理涂片。

管理工作站提供环节控制和质量控制信息,可追踪每一检查申请的进展情况,查询每一检查的完成时间、完成人、完成内容,统计工作人员的工作数量和质量。

2 系统组成

病理信息系统由硬件部分、网络部分和软件部分组成,如图1所示。硬件部分主要由服务器、检查申请工作站、登记工作站、取材工作站、切片工作站工作站、图文报告工作站、特检工作站工作、档案管理工作站、维护工作站构成。收费工作融入登记过程中,不单独设立收费工作站。

数据库使用大型关系型数据库管理系统,采用C/S结构。

软件可划分为服务器端部分和客户端部分,客户端部分主要由检查申请模块、标本登记模块、取材管理模块、切片管理模块、特检管理模块、档案管理模块、费用管理模块、图文报告管理模块、科室管理模块、统计查询模块、细胞学管理模块、尸检管理模块、会诊管理模块及流程、质量控制部分等。

大体标本摄像工作站由带有标尺的摄像台、CCD摄像机、图像采集卡、计算机等组成。其中,CCD摄像机为动态200万像素,静态500万像素。图像采集卡分辨率最高达1600×1200,脚动触发,自动保存;对采集卡可编程控制图像尺寸、图像质量、亮度、增益、曝光时间、对比度、饱和度、清晰度等。使用该工作站对取材前的大体标本摄像,使组织直观可视;在标本组织图片上,可快速准确测量样本尺寸,准确指示出取样区(点),并对取样区(点)做标记;具备放大功能,可以更清晰的了解组织的表面结构;支持口头描述,具有定标及标注功能;可对病理图像的长度、周长、面积、形态学参数进行测量。

图文报告工作站由病理医生使用,图文报告管理模块通过扫描玻片上条码提取病理检查的信息如申请单信息、检查所见、取材记录、标本原始影像、历次病理检查等;采集涂片影像、书写诊断报告、向二线医生提交、报告的确认;通过对标本的图文报告管理模块医生可提出进一步的检查要求,如深切、补取、重切、特染、免疫组化、分子病理、电镜等,提供玻片归档功能。

3 需交换的数据

病理信息系统作为医院信息系统范畴,在架构上是一个独立系统,不可避免地要与医院其他信息系统交换和共享病人信息、费用信息、检查文字信息和图像信息。交换数据的目的是为了最大限度地共享信息,减少数据的重复录入,及时在不同岗位之间传递信息,使得工作流程顺畅。在交换中既要满足存储格式要求,还要满足语义不变的要求,在交换时间点的选择上要满足应用需求。在医院信息系统中,PACS统一存储、管理、应用医学图像,病理信息系统应能传输病理图像到PACS系统,并从PACS系统中调用医学图像。

病理信息系统和HIS系统的数据都是以表的形式存储在不同的关系型数据库中。

需共享的病人信息有病人自然信息,如病人ID、姓名、性别、出生日期等;费用信息有收费价表、收费项目、费别类型、计费金额等;检查信息有申请项目、申请科室、检查所见、检查报告等。其中,病人信息、检查申请单、检查项目、收费价表信息由HIS系统的挂号工作站、医生工作站产生,在病理系统的相关工作站使用。病理图报告信息由图文报告工作站形成,在HIS的医生工作站需要调阅。

需要交换的数据主要涉及HIS系统中的PATS_IN_HOSPITAL、PAT_MASTER_INDEX、EXAM_APPOINTS、EXAM_PATHOLOGY_EXTENSION、EXAM_MASTER、EXAM_ITEMS、PRICE_LIST、INP_BILL_DETAIL八张表中,病理系统的PATH_TEST_MASTER、PATH_ITEMS、PATH_BILL_ITEMS、PATH_SPECIAL_ITEMS、EXAM_PATHOLOGY_EXTENSION、PATH_ITEM_DICT六张表中。

数据的交换时机应选择在两个系统的流程交接处。在进行标本登记时,将HIS中的相关信息提取并写入到病理信息系统中,在病理检查报告确认后将病理报告提取并写入到HIS系统中,检查费用信息在产生后即写入HIS系统。

病理信息系统与PACS交换影像数据使用DICOM3协议。

4 数据交换方法

数据交换示意图如图2所示。

数据库链接(Data Base Link,DBLINK)是数据库之间的连接,它建立了用户注册数据库到另外一个数据库的存取路径,使得用户注册到本地数据库后可以透明地访问多个远程数据库。透过DBLINK注册到病理数据库的用户可以像存取病理信息数据库中的表一样存取HIS数据库中的表,通过DBLINK的定义可以屏蔽HIS数据库内部的实现细节,保证HIS数据库的安全。

同义词(SYNONYM)的引用,使得数据库用户可以通过同义词使用不同数据库中的表,在客户程序中屏蔽了远程数据库表与本地数据库表的引用差异,数据库链接和同义词的联合使用使得软件的开发不用考虑同步数据的表所在数据库,都作为本地数据库表处理。

触发器是一组预先定义并编译好的PL/SQL语句,作为数据库的一部分存储在服务器端,用来对表中数据的某种变化进行自动响应,实现保护表中的数据或按一定规则同步表之间数据的目的。表上可以定义三种操作类型的触发器:Insert触发器、Delete触发器、Updata触发器,触发时机有操作发生前或发生后。

存储过程(Stored Procedure)是预先定义并编译好的一组PL/SQL语句,作为数据库的一部分存储在数据库的服务器端,它作为在数据库后台运行的可编程代码,具有运行速度快、可共享等优点。

触发器的使用可以跟踪表中记录数据的变化,并且将变化记录下来保存到相应数据库表中,同步交换程序定时同步变化的数据到其它数据库中。

登记、记费程序从HIS系统中提取相关记录,完成记费数据录入后,将登记数据和费用数据写入HIS数据库和病理数据库中。

5 数据交换的实现

在病理数据库服务器上建立别名Orcl,用于客户端访问HIS数据库的通信,该别名指向HIS数据库的网络地址;在病理数据库上建立数据库链接Orcl,建立中间表Path_Bespeak_Tmpbof,在表Path_Report上建立Insert触发器、Updata触发器、Delete触发器。编制交换同步程序Path_Swith Data,在病理系统的客户端程序中实现登记和收费程序的数据同步。数据交换处理流程如下。

检查申请项目处理:在病理检查标本送到病理科登记室进行登记时,在客户端登记模块中,通过病理号提取HIS系统Exam_Appoints表中的检查申请单记录,完成标本登记后,将检查申请单信息转记为检查主记录(EXAM_MASTER)、检查病人主索引(EXAM_PAT_MI)、检查项目(EXAM_ITEMS);同时填写病理数据库中的病理检查主索引(PATH_PAT_MASTER_INDEX)、病理检查主记录(PATH_TEST_MASTER)、病理申请扩展表(EXAM_PATHOLOGY_EXTENSION)。

检查费用处理:在计费模块中,通过病理号提取HIS系统的病人信息、费别信息、检查项目及相关的价表,形成收费项目、计价金额、实收金额,存入HIS系统的病人住院费用明细表(INP_BILL_DETAIL)、检查计价项目表(EXAM_BILL_ITEMS)中;同时,存入病理数据库中的病理计价项目表(PATH_BILL_ITEMS)中。

检查报告处理:在病理系统中,医生通过报告管理模块创建、修改和确认病理检查报告,报告内容和报告状态保存在病理诊断记录表(PATH_DIAGNOSIS_RECORD)、病理检查报告表(PATH_REPORT)、病理报告扩展表(PATH_REPORT_TYPESETED_RECORD)、图像索引表(EXAM_IMAGE_INDEX)等相关表中。在写入、改变病理报告后,建立在Path_Report表上的触发器将病理号写入中间表Path_Bespeak_Tmpbof中,同步程序Path_Swith Data定时将Path_Report表中未同步或未同步成功的病理检查报告记录转换、写入HIS数据库中的检查图像索引表(EXAM_IMAGE_INDEX)、检查报告表(EXAM_REPORT)中,并将同步成功的检查记录从中间表(Path_Bespeak_Tmpbof)中删除,对同步过程中成功与否都记录在同步日志表中。

在接口程序设计中,将同步间隔时间、数据库用户等作为配置参数;同时对接口程序发生挂起故障时,在图文报告工作站进行提示,方便管理员及时发现问题。在网络中断后,能自动重新连接并恢复数据同步。

6 结束语

随着医院信息化的深入,不同信息系统在医院的应用,系统之间的数据交换是系统成功应用的前提。要实现系统之间在流程、功能和操作平台的无缝连接,在正确的时间进行正确的数据交换是基础。本文论述了通过创建数据库的存储过程及触发器、数据库链接等完成数据库间的数据交换,具有交换时机易选择、易实现、效率高、连接用户数可控等优点。通过前端程序同步数据的方法具有设计简单,实时同步等优点。在到病理信息系统与HIS的数据交换中,两种方法的综合应用,成功实现了两个系统的无缝连接,取得了良好的社会效益和经济效益。

参考文献

[1]李向红.病理信息系统在质量管理中的作用[J].中国肿瘤,2007(6):399-401.

[2]钮罗涌,汪觉民.医院病理信息系统与全院PACS信息交换设计[J].医疗装备,2006(4):14-16.

[3]何松,张建正,张建兵,等.病理信息网络和图像分析系统的研制[J].中国医疗器械杂志,2005(5):334-335.

[4]杜祥,施达仁,李小秋,等.临床病理诊断结果分类信息代码系统的设计和应用[J].复旦学报(医学版),2004(6):623-624.

[5]陶瑜,邓宝琼,李润梅,等.病理信息管理系统的编码设计[J].医学信息,2002(11):640-641.

[6]邱志涛,虞礼贞.在远程医疗系统中实现病理信息的通信与存储[J].南昌大学学报(工科版),2002(1):41-43.

[7]黎明.基于XML的数据交换中间件的研究与实现[D].苏州:苏州大学,2005.

[8]洪天安.基于Web Services数据交换的研究与实现[D].南京:东南大学,2006.

数据交换系统设计思路 篇5

一、系统需求分析

由历次地震现场的震害可知, 在中等破坏性地震的震中区, 有线通信网络基本破坏, 在应急期 (几天时间) 内难以恢复[2] (张毓丰等, 2005) 。目前, 地震现场通信通常采用配备了卫星通信、无线3G4G, 以及短波等各项通信手段的应急指挥通信车作为通信保障。然而, 3G通信的基站众多, 覆盖面广, 一般偏远地区地可使用, 但其信道最高可为2Mb/s (兆比特每秒) , 容易影响数据的及时传输;4G通信具有超过2Mb/s的非对称数据传输能力, 对高速移动的用户提供150Mb/s的高质量的影像服务[3], 但覆盖面主要集中在城镇。当破坏性地震发生后, 在现场有线通信短时间内不能恢复的时候, 现场通信面临考验:一是卫星通信优先用于保障前、后方远程视频会议, 大量文件数据传输受限;二是现场无线通信环境复杂, 却急需进行前、后方交换的现场数据却不断增加。为此, 需要根据实际需求, 科学优化、灵活应用各项通信手段, 提升现场办公网络环境, 并组建高效的现场数据交换系统。

二、系统设计

2.1系统总体组成

系统主要由双通道链路、现场无线办公局域网和双网卡文件交换服务器等三部份组成。地震应急时, 来自各单位的救援工作组集中到现场指挥部办公, 如采用单通道的3G或4G链路作为密集的前后方数据共享与交换, 将很容易产生堵塞现象, 传输数据等待时间长, 影响现场办公效率。因而, 采用双网卡文件服务器, 并配备双通道链路, 即A、B两套无线路由器, 使得主要现场数据的进与出所走链路分开, 提高传输效率。

2.2组建双通道的通信链路

系统设计两通道链路减少现场网络信道带宽的影响, 尽可能满足应急通信服务需求。如图1所示, 链路A采用VPN虚拟隧道, 虚拟私有IP地址, 作为后方地震应急指挥部 (远端) 获取存共享在前方现场指挥部 (近端) 文件服务器的灾情数据的独立通道, 保障后方地震应急指挥部可通过固定IP地址连接文件服务器, 交换灾情数据;链路B作为前方地震现场应急指挥部无线办公人员共享产出数据至文件服务器, 以及对外连接互联网搜索信息的主要通道。

2.3组建现场无线办公局域网

根据不同影响的地震事件, 现场应急指挥部将会集结来自不同单位的工作人员开展应急处置工作, 如秘书协调组、宣传报道组、抢险救灾组等等。无线办公局域网为现场办公网络化, 可以有效的提高各工作组的办公效率。如图1所示, 系统采用较为稳定的企业级“AC+FIT AP” (无线控制器+瘦无线热点) 的无线热点组网架构。此组网架构便于网管数据的统一收集和管理, 可以由AC合理地配置所下挂的AP, 以满足高用户密度, 需要多AP连续覆盖的场景[4]。物理上, 采用一个AC (无线控制器) 管理多个无线热点, 并且多个无线热点发射统一的信号识别源, 能方便统一管理与使用。

其中, 现场工作人员通过接入无线热点, 组成地震现场无线办公局域网, 获得具有数据共享资源的无线办公环境。

2.4架设双网卡文件服务器

FTP (文件传输协议) 服务是信息化建设的一个高效的工具, 也是网络中传输文件的骨干协议[5]。系统采用双网卡文件服务器作为数据存储与共享的中转载体。既有助于各工作组之间对数据的集中管理与共享, 还为前、后方提供统一的数据交换平台, 改进传统各自为战的传输模式。其中, 文件服务器系统为Windows Server 2008, 配置FTP服务器端。由于文件服务器配置了双网卡, 顾名为双网卡文件服务器。如图1所示, 网卡A配置链路A的IP地址, 网卡B配置链路B的IP地址, 组成两个不同的网络, 实现一台服务器在两个独立网络中同时使用的特性。实际中, 近端可以通过链路B快速上传数据到服务器进行共享, 重要的是近端上传1兆字节数据到服务器所耗的时间可以达到忽略不计;远端可以通过链路B进行离线下载, 互不占用有限的网络通信资源, 有效的避免了双方同时在线收发数据等待时间过长的问题。

三、结束语

现场应急通信指挥车集成了多种通信手段, 并且机动性强, 可快速部署到地震现场指挥部, 是地震应急现场通信网的重要技术支撑。考虑到地震现场网络与办公环境的复杂性, 系统充分利用现场应急通信指挥车集成的通信手段, 结合实际需求, 构建一套灵活、稳定、实用的地震现场数据交换系统, 有效增强现场网络通信服务水平, 提升现场灾情数据在前、后方的共享与交换能力。

参考文献

[1]苗崇刚, 聂高众.地震应急指挥模式探讨[J].自然灾害学报.2004, 13 (5) :48-54.

[2]张毓丰, 邓民宪.地震现场应急救援的通信系统设计[J].灾害学.2005, 20 (04) :48-54.

[3]刘洪雷, 王瑛玉.浅析第四代移动通信技术[J].网络与信息.2010, 24 (05) :25-26.

[4]陶志强, 王劲.关于WLAN网络规划的探讨[J].现代电信科技.2011, 41 (04) :73-76.

数据交换系统设计思路 篇6

医院手术室作为医院外科系统核心业务的主体,是医院管理的重要部门,而围手术期管理则是保证患者手术安全的重要阶段[1]。手术麻醉是医疗行为的重中之重,涉及手术室、麻醉科和各临床科室。而手术麻醉部分又是整个医疗环节中最容易出现纠纷的地方,如何有效规范手术麻醉环节操作、监控手术麻醉过程,合理提高手术室的利用率,尽可能避免医疗纠纷已成为临床面临的一大难题[2,3,4]。从20 世纪80 年代起,麻醉信息系统即开始研究及投入应用,随着临床信息系统的使用越来越深入,手术麻醉系统已经成为医院信息化建设的重要组成部分[5,6]。

1 手术麻醉系统功能

手术麻醉系统是用于医院手术及麻醉科室对手术病人的手术和麻醉信息进行记录和管理的计算机软件系统。手术麻醉系统通过与相关医疗仪器集成,与医院信息系统整合,实现覆盖患者围手术期的全过程[7,8,9]。

我院的手术麻醉系统与医院信息系统(HIS)、检验信息系统(LIS)、图像存储与传输系统(PACS)等系统实现真正的无缝连接,使医患充分共享医嘱、病历、检验结果、医学影像、医疗费用、药品消耗等信息[10,11,12](图1)。

2 数据集成交互平台简介

医疗信息化过程是一个漫长的逐步发展、逐步演变的过程,不可避免地造成了医疗业务系统之间存在着种种的差异。医院的各个信息化系统由不同的应用程序开发商分别在不同的时间进行设计、安装部署,其数据定义及存储方式有着各自的特点,这些都给医疗业务数据的共享与交换带来了一定阻碍。

为解决日益突出的信息孤岛现象,确保各系统之间数据共享和流通的稳定、高效、安全,2007 年江苏省中医院创造性地率先研制开发具有自主知识产权、国内第一家基于开放源代码技术和面向服务的体系结构(SOA)的数据集成交换平台(DIP)。该平台以实用性、安全性、稳定性和先进性为基本原则,采用SOA结构,基于企业服务总线架构(ESB)实现全院所有医疗信息系统之间的数据共享和信息交互。通过HL7、SNOMED、DICOM、ICD10 等国际标准通信接口与医院各种医疗信息(影像、文字、视频、检验数据等)系统进行连接,将所有医疗信息集成起来,实现了实时临床医疗数据交换平台。平台包含了临床医疗业务数据交换标准集,临床医疗业务数据交换标准体系及规范的临床医疗业务流程。

DIP平台提供Java客户端jar包调用或其他语言的动态链接库(DLL)调用。主要方式包括:ETL方式和GET方式。

ETL方式:子系统批量获取数据接口,一般一次获取数据为100 条,相当于整表复制。当子系统发出ETL请求,服务端接收到请求后,从业务数据库中查询最新的100 条未被同步过的数据,查询后组成对应的数据格式(Java—传输对象,DLL—传输XML结构字符串),子系统接收到数据后,服务端将查询到的100 条数据打上已经读取的标志;子系统保存数据成功后,服务端把同步的100 条数据打上同步完成的标志。

GET方式:子系统提供获取1 条数据或1 组数据的方法,一般GET方法会暴露若干个查询参数,这些参数可确定1 条或1 组数据。

3 基于数据交换平台的流程设计及接口实现

3.1 围手术期业务流程

住院医生通过HIS医生工作站提供的手术申请功能下达手术电子申请;手术室护士长通过HIS提供的排班软件安排手术时间、手术间,术前下达手术通知给手术室、住院科室等,并将安排好的手术信息从HIS传输至手术麻醉系统。

手术前一天或一段时间麻醉医生进行术前访视,确定手术是否可以进行以及麻醉方法、体位、注意事项等,签署麻醉知情同意书。麻醉医生术前根据手术室大屏显示的排班信息进入手术间,开启手术麻醉系统,可浏览手术病人的检验检查等相关信息,并在手术过程中记录手术信息、麻醉记录(体征或事件等)、麻醉总结等。术中由麻醉医生进行麻醉预计费,由HIS进行结算。

术后病人进入复苏室,复苏室麻醉医生和护士使用手术麻醉系统的复苏模块对病人术后的复苏情况进行记录。完成复苏后,病人送回病房。麻醉医生每过一段时间对术后病人做术后随访,记录病人的情况。我院的围手术期的业务流程,见图2。

3.2 流程接口设计

根据上述业务流程,手术麻醉系统接口设计,见图3。HIS自带手术预约与排班功能,排班完成之后,将手术预约排班信息通过HIS提供的v_operation_Schedule和v_scheduled_operation_name两个视图传送给手术麻醉系统。手术麻醉系统根据病人的住院号和病案号码,通过DLL的GET方式从数据交换平台调用该手术病人的各种基本信息,包括:病人档案、病历信息、检验信息、检查信息等。这些基本信息均是由HIS、EMR、LIS、PACS、UIS等各个系统上传给数据交换平台,手术麻醉系统仅需从平台读取,无需与这些系统单独交互。具体方式是:手术麻醉系统在接口程序中增加一个Win Form(命令),通过Webservice调用该Win Form,然后Win Form调用DLL生成数据,再返回到Webservice中。人员、科室等基础字典表,则通过DLL的ETL方式,定期从数据交换平台同步获取相应信息。如果遇到急诊手术的病人,因为没有预约和排班的信息,所以设置了急诊病人专用模块,仅需手动输入病案号码,激活数据交换平台的接口,即可通过GET方式调用急诊病人的档案。

手术过程中,手麻系统能够采集病人的各项体征数据。通过接入中央监护系统的网络,获取各手术室、恢复室的监护仪数据。通过中央监护系统获取病人体征数据,能有效避免客户端程序或电脑出现故障时造成的病人体征数据丢失,大大提高了采集系统的稳定性和安全性,并且能够保留监护仪之间相互访问的功能,便于在麻醉师人手不足时,对多个手术间进行监控。

麻醉机、呼吸机、血气分析仪等仪器的数据,通过仪器自带串口、并口或者网口,使用专用的数据采集元件进行一对一采集,或者网络中央采集。由此实现了围手术期患者信息的自动采集与共享。

4 运行情况和小结

我院是全国首批成立的省级中医医院之一,具有手术室22 间,其中南院11 间,北院11 间;复苏室床位14 个,其中南院8 个,北院6 个。泌尿外科、内镜中心、整形科、妇科、急诊等科室还具有专科手术室若干。项目建设分三期进行。

(1)一期主要完成手术麻醉系统与各系统的接口设计;各类表单的设计和各种功能模块的本地化;中央监护系统对接麻醉机、呼吸机、血气分析仪等设备,实现数据稳定传输。一期建设于2012 年底完成,在南院手术室和复苏室上线,并稳定运行。

(2)二期建设主要在南院手术麻醉系统的基础上,进行升级和完善,在北院手术室和复苏室进行推广;在一期建设的基础上,增加毒麻药管理模块、手术分级和工分统计模块等;配合新的电子病历系统与CA认证系统上线,完成手术麻醉系统的CA认证,目前正在实施中。

(3)三期建设将根据各专科的实际情况,逐步在专科手术室建设具有专科特色的手术麻醉系统。

最终在全院范围内逐步形成完善的手术麻醉系统。

摘要:针对我院数据集成交换平台的特点以及实际的医疗流程,设计了手术麻醉系统与数据集成交换平台的接口。手术麻醉系统利用动态链接库方式,包括数据加载转换(ETL)和逐条获取(GET)两种交互模式,来获取数据仓库中的患者诊疗信息,再通过视图方法与医院信息系统对接,获取手术预约排班信息,中央监护系统通过实时获取患者体征数据,保证了围术期患者信息的自动采集与共享。

关键词:手术麻醉系统,数据集成交换平台,医院信息系统,围手术期管理

参考文献

[1]靳萍.信息系统实现围手术期精细化管理[J].中国医疗设备,2013,28(1l):73-75.

[2]王忠庆,邵尉.数字化医院手术麻醉信息系统设计与应用[J].中国数字医学,2014,9(2):46-48.

[3]魏丽娜.数字化智慧医疗病区质量管控研究[D].广州:南方医科大学,2014.

[4]王海林,陈金雄,鲜荣华.创建以电子病历为核心的智能型数字化医院[J].中国数字医学,2010,5(7):14-16.

[5]李黎明,成华,孙岚.手术麻醉信息系统的临床应用[J].中国数字医学,2008,3(2):51-53.

[6]李维,沈韬.手术麻醉系统对提高医院运营效率的作用[J].中国数字医学,2010,(2):85-87.

[7]严静东,陈昆,古妙宁.与医院信息系统集成的手术麻醉信息系统[J].中国医院管理,2007,27(9):41-43.

[8]张晓祥.临床麻醉与监护信息系统的设计应用[J].中国数字医学,2008,3(2):43-44.

[9]程勇.麻醉信息管理系统的临床应用[J].临床麻醉学杂志,2010,(12):35-36.

[10]王孟琳,洪建,张洁,等.基于HL7的围术期手术麻醉系统临床应用研究[J].中国数字医学,2011,6(4):58-60.

[11]杨燕,陈功,沈宫建,等.医疗数据交换平台在医院信息化中的应用[J].中国医疗设备,2011,26(8):38-42.

数据交换系统设计思路 篇7

关键词:第三方物流,数据交换平台,系统架构,通信接口数据报文

第三方物流是物流渠道中的专业化物流中间人,以签订契约的方式,在一定时期间内,为其他公司提供所有的或某些方面的物流业务服务[1]。第三方物流的实质是指物流企业借助现代信息技术,在约定的时间、空间、按约定的价格向物流消费者提供约定的个性化、专业化、系列化物流服务的过程。

随着第三方物流企业业务范围的不断拓展,信息技术在企业中的不断深入应用,各种信息系统被开发、上线并运用到第三方物流企业的生产与管理工作中来。一家第三方物流企业要服务于多家发货企业与收货企业,就需要解决与多家企业进行在线数据通信的问题。企业会开放各种各样的通信接口,通过接口对接与第三方物流企业的信息系统。站在各种企业中间的第三方物流企业迫切需要有一种通用的、统一的数据交换平台来对接其他各方的信息系统。

1总体架构设计

平台要解决异构环境下、跨平台、基于Internet、大量并发数据交换压力的情形下的各种复杂问题,面对各种外联、内联系统,通信报文,通信方式,需要从整体上考虑系统的总体架构设计。如图1所示的是系统总体架构的设计思想。

平台具有平台管理系统和监控系统,平台管理系统管理与协调着平台中的各种插件(报文拆包打包插件、接口通信插件、外联单位驱动插件)。中间数据总线,报文转换模块,以及物流服务流程控制模块。物流服务流程控制模块是平台最核心的功能模块,控制了报文的路由、以及物流业务流转与状态转换的过程。平台与企业内部通过接口通信插件的方式接入,如果有新的系统需要加入则只需要根据平台的接口标准开发通信插件;如果有外联单位接入则需要开发相对简单的外联单位驱动插件。

2平台与其他系统的对接

对于平台来说,来自于企业内部的系统与企业外部的外联单位系统的数据交换请求统称为外部请求,如图2所示。通过中间件、TCP(Transmission Control Protocol,传输控制协议),同步短连接、异步短连接、同步长连接、异步长连接;消息通信,自定义通信等方式对接后,以平台定义的特定的通道字标志方式采取单一通道、复用通道或自定义通道的方式识别与内部交换数据的系统,根据各种不同方式的协议配置来区分来自于哪个系统,再封装成企业定义的标准XML报文,交报文分发子系统作分发处理。如果需要回传数据而采用协议回送的方式。

2.1通信接口

平台需要与各种企业外联及内联信息系统通信以交换数据,点对点的连接会增加众多的连接链路,由于各个系统的数据格式、描述语法并不统一,连接方式有长连接、短连接,交换消息时有采用同步方式的,也有采用异步方式,因此系统将变得特别复杂,通信程序的设计任务异常艰巨。能不能统一一个通信接口标准,通过一个数据通信的中间软件来实现统一的数据格式和路由分发?可以建设一个通用的通信管理子系统负责与各种业务系统交互,实现单点接入,它们之间的关系及位置如图3所示。

现有成熟的通信中间件产品有许多,如支持消息通信的Websphere MQ、Tonglink,支持分布式应用处理的BEA Tuxedo,支持MDB数据交换的MT。此外还有简单常用的TCP Socket方式。通过产品的组合,以及少量的本地化应用开发,即可基本达到平台的通信要求。

但在通信接口中并不能解决统一成某种报文的问题,因为其他单位开放的接口并不一定采用同种数据报文,常见的有字符串报文、MDB报文、甚至还有采用数据库直接数据交换方式的,这就需要屏蔽异种数据报文之间的差异。

2.2数据报文

为解决异构的、跨平台的Internet情形下的数据交换需要,XML(eXtensible Markup Language,可扩展的标记语言)成为了首选的平台数据交换报文描述语言。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识,它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言[2,3]。

XML格式的报文具有如下优点[4]:(1)数据带有数据结构,可以方便地和数据库转换;(2)能表示数据的层次关系;(3)打包、拆包相当方便,有相当多的开源第3方组件提供支持;(4)文件尺寸较数据库文件报文小得多,并且可以用压缩算法进行压缩处理;(5)报文易于扩充和修改。

但是用XML定义的数据元素值不能过于随意,为此可以用DTD(Document Type Definition,文档类型定义)和XML Schema来作约束,物流企业之间约定的数据标准、格式定义就可以在DTD和XML Schema中作出清晰的定义,而且支持XML解析与检查的接口也相当多,如DOM、SAX、JAXP、JDOM等。

平台采用XML数据交换报文后,在第三方物流企业通信接口处相应的处理过程如图4所示。

外部通信的报文以各种方式通过通信接口进入平台后,再用XML打包器将异种报文转换成XML报文,其间用DTD、XML Schema作数据检验,再分发到其他需要的内部系统;外发的报文通过XML解包器将内部系统发来的XML报文在用DTD、XML Schema作数据检查后,再用XML解包器解包为外部系统所需的报文。这就要求与内部系统的通信尽量采用纯XML报文方式,以统一报文格式,并逐步形成企业内部统一的XML数据规范。已有的企业内部系统可在作二次开发后转换成XML通信。

仅用DTD不足以对数据有效性规则进行约束[5]。使用DOM、XSLT、XPATH等技术无法处理DTD,为自动化文档处理带来了困难;DTD数据类型有限,没有布尔、日期时间等数据类型,也不能自由扩充;DTD不支持命名空间,所有元素、属性都是全局的。

XML Schema则解决了DTD的上述问题,但也有不足之处,比如XML Schema必须位于XML文档之外,语法冗长,不支持一般实体,不能定义基于元素或属性取值的结构约束条件[6]。可见,需要结合DTD和XML Schema。在需要简单快速处理,或约束相对较少的情况下可以使用DTD,如系统配置文件的约束,简单的数据报文约束等;在数据交换且需要自动校验的情况下应尽量使用XML Schema,总的说来原则是优先使用XML Schema。

3实验情况

为测试系统架构的有效性,先在湖南现代物流职业技术学院物流综合实训基地作了系统开发与实验工作。目前综合实训基地已建成的系统有第三方物流企业综合业务系统(主要包括仓储管理与运输调试管理子系统);基于Internet的电子商务信息系统(以下简称电子商务系统)模拟互联网企业和生产企业;超市管理信息系统(以下简称超市系统)模拟零售商;再使用本文所述的平台软件作为系统对接的中间件软件,如图5所示。

不失一般性,来看一笔具体的业务的数据流转过程。客户从电子商务系统下了订单以后,订单被打包成XML文件并作加密处理,通过单线程Socket客户端调用平台的多线程Socket服务以同步方式发送给多线程Socket服务;平台解密XML文件,再运用Schema作数据校验,如果通过则转换为第三方物流综合业务系统所需的数据结构形式直接存入数据库中;平台不断轮询订单的处理状态,如果已调度完毕,进入运输状态则将第三方物流综合业务系统生成的运单通过轮询的方式取出,打包成XML并作加密处理,如果收货单位为超市则通过单线程Socket客户端调用超市管理信息系统的Socket服务,以同步方式发送出运单,如此一笔运输业务在委托方、第三方物流企业、收货方这三方之间进行协同合作。

作为技术人员需要为XML报文定义节点的相关情况,设置界面如图6所示,还需要定义规范。这样数据交换的双方就约定了报文定义的基本格式标准,以便于保证数据的规范和准确。

相应地,其中一笔订单的XML文件如下所示。

最终,在电子商务系统、超市系统和第三方物流综合业务系统三者之间通过平台初步建立起了有效的运输业务的数据交换与业务流程整理,将基于供应链管理的物流业务贯穿起来,为下一步系统的全面开发与企业应用实施打下了良好的基础。

4结束语

第三方物流企业数据交换平台的系统总体架构中包括平台管理系统、监控系统、中间数据总线、报文转换模块、以及物流服务流程控制模块等部分,接入外联与内联单位时均采用插件的方式。完成与其他系统的对接采用统一的通信系统,并采用XML报文,以解决异构、跨系统、异种通信方式与通信报文的问题。平台为第三方物流企业与其它企业架起了沟通的桥梁,对接入平台的各方的业务发展都具有重大的促进意义。

参考文献

[1]赵林度.供应链与物流管理理论与实务.北京:机械工业出版社,2003

[2]程国全,张庆华,王转,等.物流信息系统规划.北京:中国物资出版社,2004

[3]左伟明.即用即查XML数据标记语言参考手册.北京:人民邮电出版社,2007

[4]邓子云,王如龙.一种网上银行的通信接口及其应用.江汉大学学报(自然科学版),2006;34(3):73—77

[5]Wen-Yen Chien;Heiu-Jou Shaw;Shen-Ming Wang.Applying XML Data Exchange Technology to the Supply Chain Management Systemof the Yacht Industry.Journal of Ship Production,2006;22(1):9—14

数据交换系统设计思路 篇8

关键词:数据交换,XML,RDBMS,XSLT,查询翻译器

随着Internet的迅猛普及和发展,互联网已从一个信息浏览平台转变为Web应用平台。以电子商务、电子政务为核心的互联网应用程序的开发使人们足不出户就可享受互联网带来的便捷。但是,信息化建设者们同时也发现了一个问题,企业大型Web应用系统都有很多分支系统,而各分支系统可能采用不同平台、不同数据库管理系统,从而给数据的一致性、信息共享和决策支持带来了阻碍。如何共享这些数据,使数据能够为企业领导的决策进行服务是企业进一步发展所亟需解决的问题。XML是Web公用数据格式定义语言。数据交换是XML最重要的用途之一,XML使不同应用系统之间的数据交换变得容易起来,这是因为它的可扩展性和自描述性[1]。因此,针对Web应用的孤立性、异构性等特点,可以建立数据交换中心,通过开发企业级Web应用系统来转换、收集企业现有各部门级Web应用系统所产生的数据,最终建立一个以数据中心为基础的集业务操作、领导决策功能为一体的新型应用系统,以此来解决目前企业应用系统所面临的问题。本文在深入研究国内外数据交换技术的基础上,有效结合XML,Servlet以及MVC构建B/S三层数据交换体系结构,为Web应用间数据共享提供了一种实用的解决方案。

1 基本框架

1.1 总体设计思想

通过XML与应用系统的数据交互有许多手段,从CGI,DOM到目前主流的JDOM技术都能满足要求。这里认为,采用JavaBean数据组件和Servlet控制组件可以构建具有扩展性的数据交换方案。本文总体的设计思想是以XML格式作为中间格式,进行企业数据抽取和存储,采用JDOM技术实现对XML文档的解析,利用XML格式完成Web应用间数据的共享。图1为数据交换系统流程图。

1.2 框架结构划分

整个数据交换系统划分为三层体系结构,第一层是Web应用程序,充当表示层由最终用户使用。第二层是业务层,负责将关系型数据与XML文档相互转换,其中XML转化器负责将关系型数据转换为XML文档,DB转换器作用反之。第三层是数据层,为Web应用程序提供关系数据并交由数据转换系统进行转换,实现Web应用间数据共享。系统构架见图2。

1.3 通信机制

本文利用Java Servlet和JDBC访问数据库的机制,如图3所示。这样与客户之间通过HTTP通信,客户端传来的XML文档被解析成相应的JDOM对象,Servlet通过对JDOM的引用来访问每个XML元素,并进行相应的后台数据库操作,按照数据库访问的结果设置相应的JDOM节点,然后根据最终的JDOM对象生成相应的XML文档并返回到客户端。

2 实现方法

2.1 DB到XML转换

数据转换系统对Web应用中所使用的关系数据库都设计了一个XML转换器。当该系统接收到用户的查询请求后,XML转换器从关系数据库中抽取符合条件的数据,并把获得的数据转化为XML文档。

将关系数据库的数据转换为XML文档步骤如下:

(1)对应每一个表,创建1个元素;

(2)对表中的每一列,创建1个属性或者是1个只有PCDATA内容的子元素;

(3)根据表中的每一主键/外键关系,创建该表元素的子元素,通过关系表的主键、外键将各元素、子元素串接成树状结构的XML文档,然后合并属性;

(4)删除关系数据库中因规范化而导致的冗余,优化XML文档。

2.2 XML到DB的转换

XML文档与数据库的转换由DB转换器负责。XML文档包含简单元素和复杂元素,简单元素包含的内容是简单内容,也就是其元素不存在嵌套情况。复杂元素可以包含属性、子元素,而且可以包含多个相同子元素,其中子元素还可以是复杂元素[2]。

将XML文档转换为关系数据库数据,采用下面的映射规则:

(1)简单元素和单值属性直接映射到表的列。

(2)复杂元素形成表,对复杂元素包含的内容分类处理:单值属性和简单子元素映射采用规则(1);若是复杂子元素,形成对复杂子元素对象的引用,当该元素形成表后,把这个引用改成PK-FK(这里把用指针连接起来的数据关系改用关系数据库中的Primary keys和Foreign keys之间的等值连接联系起来);若是用*,+形成的多个子元素,则该元素形成一个表,在父元素和子元素的表之间添加PK-FK。

(3)对有多值属性需要创建一个单独的表来存储这些值,包含FK,其与包含它的父元素所在表的PK形成链接。

2.3 XML查询转化为SQL查询

XML文档可以实现Internet上的数据共享,但查询速度慢,而关系数据库的优点是查询速度快。该系统结合关系型数据库和XML技术的优点,把针对XML文档的查询转换为对关系数据的查询。XML查询到SQL查询的转换技术主要有两种:开发一个查询转换引擎,以支持应用系统中XML查询到SQL的查询转换;在现有的关系数据库管理系统中增加对XML查询的支持[3]。本文采用第一种方法。设计查询翻译器,使XSLT查询和SQL查询产生等价的输出,即根据XS-LT指令类型将XPath路径表达式对节点的匹配转换成对RDBMS中表的操作。查询转换的细化过程为:将针对XML的查询语句重写为一个查询XML文档。在查询文档中分别定义节点表示查询的内容、查询内容所在的表和查询条件;将查询XML文档转换成SQL语句。提取查询文档中的查询内容、所在的表及查询提交,组织成SQL语句。用户提出的XML查询通过查询翻译器转换成SQL查询,RDBMS执行SQL语句并将结果通过XML转换器封装成XML文档呈现给用户。用户无须了解数据实际存储位置和存储结构,只须提交XML查询即可得到XML文档,从而实现用户和不同RDBMS之间的透明访问。

2.4 XML文档表示技术

将XML转换为HTML,是目前XSLT最主要的功能。XSLT在转换XML文档时分为明显的两个过程:第一是转换文档结构;其次是将文档格式化输出。这两步可以分离开来单独处理。为了便于用户更方便地浏览数据,数据交换系统中设计了XSLT转化器,其功能分为两部分:一是类似于CSS的数据样式表,用于格式化数据;二是用Xpath表达式指定数据项和排序条件,便于用户定制查看自己所需的数据。

3 结语

本文提出一个基于XML的Web数据交换模型。该模型在企业不同异构Web应用系统中构建XML转换系统,借助基于文本的结构化XML文档,可以更精确地用一种通用语言来描述数据库信息。同时,用XML转换器、DB转换器、查询翻译器改进了数据交换效率,满足用户数据共享的要求。当然,在该数据交换系统中只考虑了存储、查询和转换操作,未涉及到数据通过XML共享的安全性和行业数据的标准化内容,这也是下一步将要研究的问题。随着XML技术的不断发展,基于XML的数据交换解决方案会更加日趋完善。

参考文献

[1]闵洁,蒋廷耀,王敏.基于Web 2.0的XML数据交换技术[J].电脑知识与技术,2008(35):7-8.

[2]朱珊娜,李书琴,安福定.XML文档到关系数据库的转换研??究[J].计算机工程与设计,2008,29(21):5507-5509.

[3]魏衍君,唐培林.基于XML的关系型数据源包装器的设计[J].工程地质计算机应用,2006(2):23-27.

[4]牛杰,黄东.SQL Server 2000 XML技术及应用[J].计算机技术与发展,2006(7):242-244.

[5]冯敬娥,黎建辉.XML集成中关系数据的动态转换方法[J].计算机工程,2010,36(7):30-32.

[6]孟小峰,王宇,王小锋.XML查询优化研究[J].软件学报, 2006,17(10):2069-2086.

[7]莫佳.XPath在XML查询中的应用[J].重庆三峡学院学报,2008,24(3):51-53,67.

[8]牟青,陈松乔.异构数据集成采集交换平台中安全审计技术的设计与实现[J].计算机应用研究,2007,24(9):25-27.

[9]金洪伟,苏厚勤.查询表达式优化的研究与实现[J].计算机应用与软件,2008,25(6):123-125.

[10]卜莉,李军怀,张璟.基于DTD的XML与SQL查询转换算法[J].计算机工程,2007,33(16):41-43.

数据交换系统设计思路 篇9

虚拟设计技术是利用计算机辅助技术, 在计算机环境中实现产品的开发过程, 是计算机图形学、人工智能、计算机网络、信息处理和机械设计与制造等技术综合发展的产物。通过对产品从设计到装配整个过程的模拟, 达到提高产品设计质量、降低产品开发周期和成本的目的。

1 虚拟设计技术在机械产品开发中的重要意义

目前, CAD软件的应用提高了设计效率, 在产品设计同时进行零部件的受力分析、加工仿真、预装配、运动仿真及动力学分析。但由于CAD软件开发是基于传统的产品开发模式, 不支持多用户并行工作模式, 不能实现产品开发过程的并行化, 产品的设计质量取决与某个工程师的经验。虚拟现实技术在机械产品设计中的应用, 为产品开发提供了新的设计和验证手段。虚拟设计系统支持多用户并行操作, 不同领域的工程师可以在同一个设计环境中对产品的虚拟原型从不同方面进行分析, 避免了在传统产品开发模式下各部门对设计的孤立修改和交流困难。由于虚拟现实技术自身的特点, 在虚拟设计环境中操作者可以进入产品模型的内部, 分析产品在工作状态下的性能, 同时虚拟现实技术具有适时交互功能, 对产品开发的全过程计算机模拟, 实现产品开发一次性成功的目的, 避免传统开发方法中采用物理样机验证设计所带来的人力和财物的损耗, 达到缩短产品开发周期、降低开发成本和提高用户满意度的目的。产品模型的数据分析是虚拟设计系统重要组成部分, 是进行各种仿真的基础, 需要用CAD软件创建产品模型并通过模型数据处理程序实现模型几何拓扑信息的提取和保存。下文就对虚拟设计环境中的模型数据结构以及CAD软件和虚拟设计系统的模型数据交换进行探讨。

2 虚拟环境中模型的数据结构

虚拟现实系统中采用三角面片模型进行产品信息的表达, 该数据格式在模型显示和碰撞检查方面具有处理简单、计算量小的优点, 它是对产品的外形描述, 没有与设计和制造相关的信息, 模型精度通过三角面片划分密度来控制。且现有的图形硬件大部分支持三角形绘制的加速, 所以三角面片模型可以很好地满足虚拟现实系统的实时性要求。常用的有两种方法实现虚拟现实应用系统的模型创建, 一是用专业的建模软件如3DS Max、Multigen等创建模型, 这些软件都能生成虚拟现实系统支持的三角面片文件, 可以直接载入虚拟现实应用系统中, 但是建模环境复杂, 不易于掌握, 只是模型的形状描述, 对于机械零部件复杂和精确模型的描述和表示比较困难。三角面片模型不含有特征和几何信息, 只能用于一般的展示和运动仿真, 不可以进行更深入的设计分析。另一种是用CAD系统进行产品的建模, 再利用模型转换功能将模型转化为三角面片格式文件, 在虚拟设计系统中编写文件读取功能模块实现模型的载入和拓扑重构。

3 CAD系统与虚拟现实系统的模型数据交换分析

CAD系统和虚拟现实系统模型的不同特点决定了CAD系统创建的模型不能直接运用于虚拟现实系统中。CAD系统中的模型具有精确的几何描述, 侧重于模型几何形状的表达。虚拟现实系统的模型侧重于模型在虚拟场景中的渲染速度和模型在虚拟场景中的碰撞检测需要, 虽然有一些专业的建模软件可以生成虚拟现实系统直接支持的模型, 但是对于复杂的模型还是在机械CAD系统中比较方便, 所以对于机械产品虚拟设计系统的开发, 模型的创建工具一般是选择CAD软件。在虚拟设计系统的开发中, CAD系统向虚拟现实系统的模型转换是系统设计的一个重要部分。下面对两种常用的数据转换方式进行分析。

3.1 利用CAD系统的模型导出

在CAD系统中通过vrml和STL两种文件将模型转化为虚拟现实系统支持的模型。STL是用于快速成型的数据文件, 有固定的格式, 每个CAD系统都支持这种形式模型的输出。vrml文件是虚拟现实文件, 现在的版本是vrml97即vrml2.0, 该模型的语法复杂, 且不同系统生成的模型数据格不一致。通过对这两种模型的比较, 选择STL模型作为CAD和虚拟设计系统的交换文件。下面将详细分析STL文件的语法和虚拟设计系统中STL文件的载入。STL模型是一种离散的实体表面三角面片模型, 该模型记录了将实体表面离散处理后得到的所有三角面片信息, 包含了每一个三角面片的顶点坐标及其法矢。STL文件格式规定了三角面的方向、顶点法则和量纲, 其描述如下:

面的方向。由于这些三角面片定义的是三维实体的表面, 所以每个三角面片同时也可看作是三维物体内部与表面的分界面, 它的法矢始终朝外, 它与三顶点连成的矢量方向构成右手法则。

顶点法则。每一个三角面片中必须有两个顶点与其相邻的三角面片共用, 即一个三角面片中的顶点不能落在另一个三角面片的边上。

量纲。三角面片数据是无量纲的, 各顶点坐标值均必须是正数。模型中包含的三角形面片的个数则按STL文件的类型, 有的直接给出, 有的不给出。文件中还包括其它一些信息, 如文件名, 文件描述等等。STL文件有两种类型:ASCII格式和二进制格式。

3.2 通过API函数对CAD系统二次开发

利用CAD系统提供的二次开发接口对CAD创建的模型进行三角面片离散化。这种方法可以直接使用CAD的建模环境, 进行模型信息的提取。

Solid Works二次开发方法。Solid Works是基于Windows平台的三维机械设计软件, 它通过COM技术为用户提供强大的二次开发接口, 凡支持OLE和COM编程的开发工具。其二次开发分两种, 一种是基于自动化技术的, 另一种开发方式是基于COM的。COM技术可以使用最多的Solid Works API函数, 并可控制Solid Works的运行方式, 生成dll文件, 即以Solid Works插件的形式生成用户的自定义功能模块。由于Solid Works是以Visual C++作为主要开发工具, Solid Works2006采用了ATL COM Appwizard向导, 并且EDS公司推荐使用ATL方法进行程序的开发。在此采用Visual C++6.0和ATL向导进行程序开发。可以最多地使用Solid Works提供的API函数和Visual C++6.0的MFC类库, 方便程序的开发。特征提取是在Solid Works2006软件平台上通过二次开发实现的。

模型信息的提取和存储。信息提取的基本思路是:遍历零件的拓扑树, 对特征进行判断是否是几何特征, 若是则提取其拓扑信息与几何参数信息, 对特征中的几何面逐个进行三角化离散, 记录每个面片的顶点信息与法线信息, 将零件的面片信息以自定义文件.v rd保存。在对模型进行三角化离散后, 为模型的近似描述。在虚拟设计系统中不能通过对三角面片的计算获取精确的模型几何信息, 同时需要进行大量计算, 但是在虚拟设计系统中需要获取模型的精确几何信息进行分析, 这就需要在CAD软件中进行特征提取时提取所有的属性信息。对于模型信息的存储采用了先遍历模型中的所有特征, 形成特征链表, 再遍历特征中的几何面形成几何面表, 最后对每个面进行三角面片离散化后用顶点链表保存顶点数据, 形成模型的数据存储结构。

小结

虚拟设计技术是虚拟现实技术在机械产品设计中的应用, 通过对开发过程的模拟, 减少了产品的开发周期, 是CAD技术的发展趋势。一些应用已经表现了其巨大的优势, 将是产品设计方法的一个重要的研究方向。

摘要:模型是虚拟设计系统的基础, 对于机械产品, 通常使用CAD软件创建零部件模型, 并进行预装配, 再进行模型的转换或特征信息的提取。本文介绍了虚拟设计技术在机械产品开发中的重要意义, 并对CAD软件和虚拟设计系统的模型数据交换的进行了探讨。

关键词:模型,虚拟设计,机械产品,CAD

参考文献

[1]陈琪, 产品开发与虚拟设计制造技术, 机电产品开发与创新, 2002

[2]黄成洋机械产品虚拟设计建模方法的研究, 机电产品开发与创新, 2004

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:66553826@qq.com

上一篇:定制数据安全交换技术 下一篇:数据交换与交换平台