《ODIN集成引擎技术文档201608.docx》由会员分享,可在线阅读,更多相关《ODIN集成引擎技术文档201608.docx(13页珍藏版)》请在第一文库网上搜索。
1、Oodinhea1thOdin集成引擎技术文档ODINHEA1THDATAINTEGRATION-ENGINE2016年8月版权声明本文档版权归ODINHEA1TH有限公司所有,并保留一切权利。未经本公司书面授权许可,任何公司和个人不得将此文档中的任何部分复制、公开、转载或以其他方式散发给第三方。否则,必将追究其法律责任。免责声明本文档仅提供阶段性信息,所含内容可根据产品的实际情况随时更新,恕不另行通知。如因文档使用不当造成的直接或间接损失,本公司不承担任何责任。目录系统架构设计3介幺召3彳本4核心引擎.4、作,面.5具体产品设计5项目配置架构.6辅助配置模块7再已置监控管理界面,8契合实际业
2、务流程.10可视化直观配置界面.10内置测试功能10用户友好监控管理界面.10组件说明11终端11、终端模式11终端类型.12处理器13H17处理器.13消息属性处理器.13其他处理器14系统架构设计介绍OD1N集成引擎(ODINHEA1THDATAINTEGRATION-ENG1NE)是一款具国际水准的专注医疗的多用途集成引擎(平台),遵循包括H17在内的国际医疗标准,具有本土化、高性能、高可靠性、高可用性、高度模块化和低资源占有量等特点,能在全院范围内、区域中、跨网络、跨协议、支持应用集成和数据集成的开放平台软件。ODIN集成引擎遵循应用服务总线架构(SOA)设计,基于JaVa平台开发,可
3、以在不同的操作系统,包括1inUX及WindoWS系统中安装运行。同时ODIN引擎也使用了最新的No-SQ1数据存储方式和搜索引擎技术,在保证了对大数据量消息快速存储的同时,也提供了通用的数据界面,并且为集群部署提供了架构上的支持。ODIN集成引擎能够实现同步及异步的消息处理流程。数据的处理方式可以简单分类为: 数据的抽取,转换,传送。一般是定时一次性的数据库中的数据上传。 实时的服务发布,处理实时请求和响应,发送端在请求失败后再次发送请求。比如SOAPWebService,Restfu1Service的使用。 异步消息处理,发送方在消息被引擎成功接受后立即会收到确认,发送方工作即完成,引擎负
4、责确保消息到目的地的传输。消息传输失败时可以通过引擎追踪、排错和重试。主要使用场景为H17消息交互。总体架构C)D1N集成引擎能够实现同步、异步的集成,满足复杂的医疗集成需求,实现医疗机构内部系统之间、医疗机构之间和区域的互联、互通、互操作。操作界面基于Java支持Windows,1inux高性能支持集群开发监控界面统一基于网页支持多种浏览器核心引擎C)DIN集成引擎可以进行非常简单的部署,也能进行设置实现复杂集群部署,不同医疗机构可以根据实际的需求选择最适合的部署方案。集成引擎的核心是整个引擎的关键,是用来处理与外部系统的连接,执行数据的内部交换处理,映射,资源的分配,对整体流程进行详细的跟
5、踪记录。集成引擎的核心包括下面几个组成部分: 引擎的内核 消息存储库 消息搜索引擎 消息队列操作界面OD1N集成引擎为技术工程师和实施人员及管理人员提供了对引擎进行配置,监控,管理的统一界面。基于Web2.0技术开发,支持多种浏览器。系统特点引擎部署简单快速,无需进行大量安装设置。软件运行支持WindoWS,1inux等多种操作系统。集成平台软件本身开发和关联模块开发是基于当前主流开发语言。系统稳定性高,同时支持虚拟机和云部署,并支持热备容灾方案,技术上支持集群部署,可满足大数据量的复杂处理需求。引擎接受到消息,或和外部系统进行消息交互时,所有的消息都会被保存至引擎数据库中。在消息发生错误时,
6、用户可以查看在整个流程中的所有消息,对消息进行更改重发。外部系统发生错误时,引擎可以发送失败的消息进行重试并进行存储。这样使得引擎的消息不会丢失,需要时可以将消息进行恢复并重新处理。系统主要有以下特点:架构先进,可扩展性强 设计合理,灵活稳定 支持热备,高可用性强 技术支持集群部署 简单易用,迅速实施 功能强大,满足复杂集成需求 维护简单,节省成本 具本土化特性具体产品设计总体方案产品设计的目的在于支持所有不同医疗系统技术和所有信息格式,提供给医疗机构一个共享的简单易用的平台来集成所有的系统,实现复杂的集成。引擎主要以核心的项目架构,辅助的配置功能模块及配置、监控管理界面组成。项目配置架构为更
7、好地体现、对应实际项目的业务流程,我们在配置中设计了“项目”的概念,“项目”可以有多个终端和多个路由组成,以全局视图设计显示整个实际项目的完整流程。配置架构图示如下: 项目(PrOjeCt)一由多个终端和多个路由组成 终端(EndPOim)一用来与外部系统相连或发布服务,如数据库终端,TCP服务端,TCP客户端。具体引擎包含的终端见下面终端章节。 路由(ROUte)一路由内可配置多个处理器,对前面节点输入的消息进行逻辑处理,格式变换,数据变更后通过输出端口输出至后续节点 处理器(PrOCeSSor)一在路由内对消息进行具体操作处理的节点。具体引擎包含的处理器见下面处理器章节。注意: 一个终端可
8、以在多个项目中使用。 一个路由只能在一个项目中使用,在其它项目中需要用到同样的路由时可以将此路由复制到其它项目。辅助配置模块为帮助用户进行配置,引擎内包含了很多额外的辅助配置功能模块,主要有: 资源一支持WSD1,XSD和JS0N_SCHEMA等定义文件的资源管理。用户可选择上载或用界而向导配置定义文件。资源可被终端,处理器或数据转换映射引用。数据库终端结果可自动生成JSON_SCHEMA方便进行数据映射。 数据源一用来统一设置和管理与数据库的连接。建立的数据源可被数据库终端和代码映射模块引用。目前支持H2,MicrosoftSQ1Server,MySQ1和Orac1e数据库。 数据转换一处理
9、不同格式消息之间的转换,将一种类型的数据转换为另一种类型,比如将H17消息转换为XM1消息。在路由中配置数据转换的处理器引用创建的数据转换配置文件。 H17库一内嵌H17库,目前包含有H17V2的2.3到2.6版本的消息定义库帮助用户对H17进行直观解析,读取,编辑。在H17消息处理器或数据转换配置时可以引用。并会根据市场需要加入H17最新版消息定义库。 消息追踪一配置管理的H17业务层的追踪、重试、报错机制。使用在路由中的消息追踪起始处理器和消息追踪结束处理器,一般与H17双工模式B1directiona1的终端一起使用。 全局变量一全局变量管理,全局变量可被终端或处理器引用,更改全局变量可
10、动态更新引用变量的组件。 代码映射一支持手动输入,并可与数据库映射表同步,在不需要重启引擎的情况下支持映射数据的动态更新。配!监控管理界面引擎提供了开发配置,监控管理界面来帮助技术实施人员和管理人员来实现项目的具体配置,控制流程中的各个节点,进行查错,维护和监控的工作。通过常用浏览器,一次登录就能访问引擎的全部界面,包括配置,管理,及监控界面。极大的方便了配置工作及日常管理和维护,高易用性使医疗机构可不依赖厂商自行做些简单的配置及日常管理和维护工作。配置功能 全局图形化显示整个项目流程 项目设计图缩放 拖放式配置项目中终端和路由 简化用户配置界面 终端路由复制,减少重复工作 节点单元测试功能
11、图形化配置数据映射,帮助自动生成映射脚本 整合帮助文档 中英文界面随时切换管理功能 配置导出导入 许可导入,更新,激活 历史数据清理 通知提醒规则设置 查错消息存储开关设定 管理编码集映射 数据源及资源管理 数据转换映射管理 数据库序列值管理 全局变量管理监控功能 仪表盘展示引擎小结及系统运作概况 警告和警报提示 数据清理结果提示 查看节点消息及错误队列消息、,可编辑重发 同时以树状及图形显示消息处理完整信息 查看消息在每个节点的完整详细处理情况 消息搜索功能 等待消息,处理完成消息统计 图表展示节点消息处理状况 每个节点性能统计,提供耗时最大消息列表 事件日志访问产品特点快速安装、快速配置、
12、易于测试、简单部署,开发者在不具备复杂的开发能力的情况下也能利用ODIN集成引擎实现集成的要求。契合实际业务流程以全局视图设计项目,显示整个流程完整流通线路,轻松对应实际业务流程进行配置,方便用户。可视化直观配值界面统一的BS构架的用户界面,配置界面在线就可以访问使用,方便实施人员和管理人员。图形化的开发界面,可以实现拖拉式的配置方式。内置大量医疗业务相关处理器,在不需编程情况下,即可满足大部分的医疗集成需求,在业务需求比较复杂的情况下,也可以通过配置脚本实现。简化的H17标准支持可同步、异步调用面向事务的消息系统。支持H17v2、FHIR、XM1.国家卫生部门数据标准和规范。内嵌可配置的H1
13、7业务层的追踪、重试、报错机制(messagetracking)0提供了针对H17消息处理特别内置的处理器方便用户自动解析H17消息,自动生成回应。另外还有消息编辑器方便用户对H17消息进行修改。本土化数据降集成支持主流关系型数据库数据抽取,更改,插入功能,如H2,MS-SQ1,Orac1e,MySQ1o可添加新JDBC驱动支持其他数据库操作。平台支持数据库事务,一库多表操作时可回滚。也可将多个数据源不同事务同时提交以满足特殊业务需求。数据库终端提供测试功能,可代入测试消息进行测试运行,立时返回测试结果以及详细运行日志,极大方便用户排查配置问题。数据库终端本土化设计符合用户使用习惯和实际业务需
14、求。内置测试功能引擎的很多组件包括处理器以及数据映射都提供了内置的测试功能。容许用户在实现完整配置之前,独立测试单独的组件,大大加快开发测试进程。用户友好监控管理界面统一的配置和监控网页界面。提供实时系统运作概况,性能报告和统计数据,列表及图形显示项目终端和路由运行状况。提供了树状和图形两种展示方式显示消息处理的流程,方便用户查看在各个阶段的消息转换传输情况。通知提醒功能在问题产生前就能及时提醒用户。组件的通知提醒阙值可以根据实际项目的需求进行配置。组件说明终端终端(EndPoint)是引擎中的一个关键组件,用来与外部系统相连或发布服务,是项目配置中的消息来源和发送对象。引擎提供了可满足绝大部
15、分系统集成所需要的终端和通信协议以实现系统之间的互联互通、互操作。在终端连接的外部系统突然断线的情况下,终端能保持运行状态,在外部系统重新工作后,引擎可以自动重新连接外部系统发送消息,不需手动干预启动终端。终端在引擎的界面中有独立的页面进行配置和管理。在项目配置界面内可以管理项目与终端的连接,同时也可以添加或修改终端。终端模式终端的模式是根据对消息接受和回应处理方式的不同来区分的。主要分为下面几种模式: IN-输入模式,服务端模式用来被动接受消息、或主动抽取数据来形成消息(如数据库库表轮询),此模式不会发送回答到外部系统。 OUT一输出模式,客户端模式用来将引擎的消息发送到外部系统,不会等待外部系统的回答。 IN_0UT-输入模式,服务端模式用来被动接受消息并发送回复给请求端。与IN模式的主要区别在于,请求端会一直处于等待状态直到接收到回复。例如发布