医院互联互通测评咨询、规划、建设、监理等测评支持服务
国家医疗健康信息互联互通标准化成熟度测评(简称“互联互通测评”)现已成为衡量医疗机构信息化建设水平的重要测评之一。而在医院的互联互通测评中,其指标最核心的测评对象则是聚焦于医院平台的信息交换层,而这对于平台的技术架构和功能上均提出了要求。
图1 医院信息平台参考技术架构
图片来源:WS/T 447-2014 基于电子病历的医院信息平台技术规范
本文将会以2020互联互通测评评审内容3.1.2“信息整合技术”和3.1.5“平台功能”为例,对互联互通测评备注中提到的关于集成平台的技术架构和平台功能等概念进行梳理和解读。
技术架构
互联互通评审标准3.1.2“信息整合技术”
2020互联互通测评中,提出的信息整合技术是总线技术架构,即基于信息平台架构,通过企业服务总线 (ESB)或消息中间件实现服务注册、服务发布和服务适配。不过在互联互通测评3.1.2“信息整合技术”的备注中也指出:在总线技术基础上,可进一步探索基于微服务架构的环境搭建,实现服务注册、应用配置、服务监控、API 网关、服务安全、资源调度等方面的系统化管理,实现院内外部分业务的微服务化互通。
其中,微服务、服务注册、API网关和资源调度对于医院平台的数据交换中间件都是非常重要或是在互联互通测评中提出的架构建议。
图2 2020互联互通测评评审内容3.1.2信息整合技术
1.1 微服务
对于医院信息平台的中间件而言,微服务架构可以分为业务应用级微服务和自身架构级微服务。
业务应用级微服务,是将平台上运行的业务拆分为多个可独立开发、设计、部署运行的小应用和接口服务,提高对需求的快速响应能力,并能根据不同应用进行灵活组合,对业务进行合理解耦,这是对于微服务这个概念较为基础的应用,是SOA的典型技术场景。
自身架构级的微服务,则是指中间件自身的模块组件和功能是微服务化,通过基于Kubernetes(K8s)分布式容器化技术,搭建“云原生平台”,从原本平台架构对于微服务的适配,变为架构与微服务融为一体,充分展现微服务和云原生的特性及优势。
Odin NeXT云原生平台就具备自身架构级的微服务,能充分发挥PaaS云计算环境下的动态调动、弹性延展、精细化资源配置等特性,更好地支撑超大规模云计算,而这些能力也都是传统IT架构的引擎在部署到云环境时所无法实现的。
1.2 服务注册
在了解服务注册之前,我们需要明确对于医院集成平台而言,什么是“服务”?
狭义服务指的是HTTP、SOAP等接口服务,广义的服务还包括数据库对接、HL7、MQ、Kafka、FTP等多种数据交换模式的交互服务等。
在服务注册中,医院平台的数据交换组件需要支持各类应用的接口服务(WebService, HTTP)或者HL7 v2等服务进行注册,并且对以注册的服务可进行管理和查看。可以设置注册服务的地址、端口、以及访问上下文等,同时如果涉及到SSL传输,则可上传证书实现接口支持。另外也提供重试策略设定,在运行中如果发现注册服务联不通时,可根据间隔频率进行重试。
1.3 API网关
API网关是用于接收、整合、处理客户端调用后端请求的API管理工具,常常需要对集成平台进行二次开发才能实现该功能。医院平台中的API网关服务应用,需要具有鉴权管理、流量控制、黑白名单、访问控制等API管理功能,不仅需要起到聚合接口,降低了客户端与后端的耦合度的作用,还需要能统一整合后台服务,并提高整体性能。
Odin引擎集群版不仅具备上述API网关的功能,还打通和服务终端的对接环节,通过服务终端目录进行界面化配置选择,实现API网关路径同服务的绑定。灵活调整需要系统化管理的服务项目,操作方便,提升用户体验(如图3所示)。
图3 API网关聚合客户端接口,统一整合后台服务
1.4 资源调度
资源调度,架构层面上一般是指集群或云原生架构下,对于资源的合理利用,根据架构不同其利用和管理的颗粒度也不同。在集群架构下可以做到虚拟机级别的资源配置,而在云原生架构下则可以实现单集成业务级的资源利用,灵活根据实际需求来合理分配资源。
如果是采用了一体化集群(如Odin引擎集群版),可以通过自定义容灾策略,根据业务实际情况对计算资源进行灵活配置,实现定向隔离计算和负载、精细化故障转移等功能,还能达到智能资源分配的效果,让多台服务器同时运行并进行统一运维监控管理,实现高可用、高稳定、高性能等特点,为大规模集成提供能力支撑。
如果是采用了基于Kubernetes的云原生平台(如Odin NeXT云原生平台),则可以通过Kubernetes提供的水平自动扩展(Horizontal Pod Autoscaler)来根据CPU占用率或其他性能指标参数来进行自动扩展。当CPU占用率过高时,Kubernetes会自动创建新的Pod来满足运行需求。通过部署单元,可以灵活地根据实际需求来合理分配资源。其中,各集成业务在云原生架构下的各节点中运行,当出现业务负载过高时,能通过对不同业务的负载检查,找出过度忙碌的业务,并通过合理的资源调度分摊至有多余资源的节点中运行。
平台功能
互联互通评审标准3.1.5“平台功能”
集成平台一般由数据交换组件(信息整合系统)、CDR、主数据管理系统、患者主索引、统一认证、患者门户、平台管理系统等构成。
在2020互联互通评审标准3.1.5提到的平台功能中,包括“共享文档配置与管理、数据脱敏配置管理、交互服务配置管理、交互服务订阅管理、服务运行状况监控管理”均可由数据交换组件来直接或间接提供。
图4 2020互联互通测评评审内容3.1.5平台功能
2.1 共享文档配置与管理
测评标准中的备注释义:共享文档配置与管理是指通过配置的方式生成、解析并浏览共享文档。
解读及相关策略:
由测评中的备注释义可知,实现共享文档的关键在于共享文档的生成、解析和浏览。
生成:一般是通过数据交换系统对不同格式和标准的数据按照CDA的要求进行转换输出,其转换代码需要在数据交换系统中进行配置和管理。
解析和浏览:此功能是对于生成的CDA文档能够进行页面展示。由于CDA文档为XML格式,建议采用Web方式进行展示,可单独开发CDA浏览器来实现,此功能需独立与数据交换系统本身。可以对生成的CDA文档进行统一存储管理和检索。
2.2 数据脱敏配置
测评标准中的备注释义:数据脱敏配置管理是指临床数据用于第三方使用或其他需要脱敏或匿名化使用时,能够实现可视化脱敏配置。根据互联互通测评标准中的要求,数据脱敏功能
解读及相关策略:
数据脱敏用于对消息体内某些敏感数据进行脱敏处理,可选择对XML、JSON、HL7消息进行处理,其中包含多种脱敏的规则处理。通过Odin引擎提供的对称加密和非对称加密相结合的方式,消息中的个人隐私等敏感信息也能在数据流转的过程中实现实时脱敏,并提供数据内容级加密保护。
图5 数据脱敏实现效果示意图
2.3 交互服务配置
测评标准中的备注释义:交互服务配置管理是指具有配置界面对交互服务内容进行配置和维护。
解读及相关策略:
平台的配置界面中,可通过数据交换组件发布HTTP、WebService以及HL7等协议的服务, 并且可配置同步或异步两种模式,并且在配置界面中能实现服务的开启或停止,包括定时开关和手动开关两种模式。
同时,Odin引擎的配置界面中还能查看到交互服务在调用中的消息量以及异常错误数量,以及该服务的处理速率等信息,并通过二维图表清晰直观地展示出来。
2.4 交互服务订阅
测评标准中的备注释义:交互服务订阅管理是指根据集成场景对平台已发布服务的可视化订阅管理。
解读及相关策略:
服务订阅最早是指的对于消息队列服务的订阅,比如IBM MQ、Rabbit MQ、Active MQ等,是基于Topic的方式进行消息交互。现在更多的是广义的服务订阅,除了MQ方式以外,更多是以HTTP、SOAP等接口方式进行的服务发布和订阅,由服务发布方开放服务目录,由消费方选择或为消费方指定服务目录,并提供给消费方API访问权限,另外服务发布方可对已订阅的服务进行监控以及API授权管理,例如可以设置订阅的服务目录组作为访问策略,然后提供给消费方进行Token方式的授权调用。在具体实施过程中,在医院平台中发布服务可通过数据交换组件提供的访问控制功能实现服务订阅,支持选择多个服务打包成服务策略组,并对策略组进行定义。
通过Odin引擎内嵌的功能还可定义API客户端账号,并为每个客户端设置多个服务访问策略组,绑定策略组后,可为客户端设定唯一Token,同时此Token可定期进行更新。定义API客户端账号后,下发给服务的消费主体,由消费主体在请求中设置API客户端和Token后,即可实现服务的调阅。另外,API客户端可以被开启或停止,方便对服务订阅功能进行控制。
2.5 服务运行状况监控管理
测评标准中的备注释义:服务运行状况监控管理是指能够对服务数量、消息总数、出错消息统计、基于平台的接口服务的运行日志等进行直观的统计、检索、展示。
解读及相关策略:
由于服务运行状况指标众多,除了上述备注中提到的主要指标,还包括不同类别的业务项目(包括集成项目,ESB服务协调和ETL任务等)、队列警报、CPU负载等,这些都需要用户在用户统一的界面上直观地获取相应信息,对上述指标进行统一监管。Odin引擎中还嵌入了态势感知等功能,能通过分析过往历史数据对可能出现的异常情况提前做出预警,助力医院对集成平台服务运行状况的监控管理。
结语
从技术架构上看,医院信息平台的数据交换层需要以集成平台的数据交换组件作为核心支撑,实现互联互通测评中提到的服务注册、API网关、资源调度等功能。而对于微服务架构环境的探索,则需要进一步关注与之相适配、甚至是从设计之初就融入了微服务概念的相关集成产品架构。
从平台功能上看,医院想要从“建平台”阶段迈向“用平台”阶段,实现互联互通,需要对平台功能和医院业务场景都有着深入的理解和认识,才能把集成平台真正“用到实处”,达到以评促建、以评促用。
2018年度国家医疗健康信息互联互通标准化成熟度测评结果公示名单
一、区域名单
单位名称 | 测评结果 |
南通市卫生健康委员会 | 五级乙等(地市级) |
无锡市卫生健康委员会 | 五级乙等(地市级) |
南京市江宁区卫生健康委员会 | 五级乙等(区县级) |
宁波市鄞州区卫生健康局 | 五级乙等(区县级) |
北京市昌平区卫生健康委员会 | 四级甲等(地市级) |
天津市北辰区卫生健康委员会 | 四级甲等(地市级) |
太原市卫生健康委员会 | 四级甲等(地市级) |
吕梁市卫生健康委员会 | 四级甲等(地市级) |
南京市雨花台区卫生健康委员会 | 四级甲等(区县级) |
南京市溧水区卫生健康委员会 | 四级甲等(区县级) |
苏州市吴中区卫生健康委员会 | 四级甲等(区县级) |
太仓市卫生健康委员会 | 四级甲等(区县级) |
盐城市盐都区卫生健康委员会 | 四级甲等(区县级) |
湖州市卫生健康委员会 | 四级甲等(地市级) |
德清县卫生健康局 | 四级甲等(区县级) |
安吉县卫生健康局 | 四级甲等(区县级) |
宁波市江北区卫生健康局 | 四级甲等(区县级) |
宁波市镇海区卫生健康局 | 四级甲等(区县级) |
宁波市北仑区卫生健康局 | 四级甲等(区县级) |
余姚市卫生健康局 | 四级甲等(区县级) |
象山县卫生健康局 | 四级甲等(区县级) |
嵊州市卫生健康局 | 四级甲等(区县级) |
桐乡市卫生健康局 | 四级甲等(区县级) |
绍兴市卫生健康委员会 | 四级甲等(地市级) |
嘉兴市卫生健康委员会 | 四级甲等(地市级) |
衢州市衢江区卫生健康局 | 四级甲等(区县级) |
湖州市吴兴区卫生健康局 | 四级乙等(区县级) |
湖州市南浔区卫生健康局 | 四级乙等(区县级) |
宁波市海曙区卫生健康局 | 四级乙等(区县级) |
宁波市奉化区卫生健康局 | 四级乙等(区县级) |
慈溪市卫生健康局 | 四级乙等(区县级) |
宁海县卫生健康局 | 四级乙等(区县级) |
丽水市卫生健康委员会 | 四级乙等(地市级) |
天长市卫生健康委员会 | 四级甲等(区县级) |
淮南市卫生健康委员会 | 四级甲等(地市级) |
淮北市卫生健康委员会 | 四级乙等(地市级) |
济宁市卫生健康委员会 | 四级甲等(地市级) |
荣成市卫生健康局 | 四级甲等(区县级) |
寿光市卫生健康局 | 四级甲等(区县级) |
宜昌市卫生健康委员会 | 四级甲等(地市级) |
武汉经济技术开发区(汉南区)卫生和 计划生育局 | 四级乙等(区县级) |
武汉市黄陂区卫生健康局 | 四级乙等(区县级) |
深圳市龙岗区卫生健康局 | 四级甲等(区县级) |
重庆市南川区卫生健康委员会 | 四级乙等(地市级) |
绵阳市卫生健康委员会 | 四级甲等(地市级) |
广元市卫生健康委员会 | 四级甲等(地市级) |
宜宾市卫生健康委员会 | 四级甲等(地市级) |
攀枝花市卫生健康委员会 | 三级(地市级) |
(*同等级按行政区划排序 )
二、医院名单
单位名称 | 测评结果 |
中国中医科学院广安门医院 | 五级乙等 |
中国医科大学附属盛京医院 | 五级乙等 |
上海市儿童医院 | 五级乙等 |
上海中医药大学附属龙华医院 | 五级乙等 |
江苏省人民医院 | 五级乙等 |
南京鼓楼医院 | 五级乙等 |
南京市儿童医院 | 五级乙等 |
中国科学技术大学附属第一医院 | 五级乙等 |
厦门大学附属中山医院 | 五级乙等 |
厦门大学附属第一医院 | 五级乙等 |
南昌大学第一附属医院 | 五级乙等 |
广州医科大学附属第二医院 | 五级乙等 |
北京大学口腔医院 | 四级甲等 |
北京市垂杨柳医院 | 四级甲等 |
中国医学科学院阜外医院 | 四级甲等 |
首都医科大学附属北京天坛医院 | 四级甲等 |
首都医科大学宣武医院 | 四级甲等 |
中国医学科学院肿瘤医院 | 四级甲等 |
中国医学科学院整形外科医院 | 四级甲等 |
北京市门头沟区医院 | 三级 |
天津市第三中心医院 | 四级甲等 |
河北医科大学第二医院 | 四级甲等 |
沧州市中心医院 | 四级甲等 |
山西医科大学第一医院 | 四级甲等 |
内蒙古自治区人民医院 | 四级甲等 |
赤峰市医院 | 四级甲等 |
赤峰学院附属医院 | 四级甲等 |
大连医科大学附属第二医院 | 四级甲等 |
锦州医科大学附属第一医院 | 四级甲等 |
吉林大学第一医院 | 四级甲等 |
吉林大学第二医院 | 四级甲等 |
上海市浦东新区浦南医院 | 四级甲等 |
上海市第七人民医院 | 四级甲等 |
上海市普陀区中心医院 | 四级甲等 |
上海市杨浦区中心医院 | 四级甲等 |
复旦大学附属妇产科医院 | 四级甲等 |
复旦大学附属华东医院 | 四级甲等 |
上海交通大学医学院附属精神卫生中心 | 四级甲等 |
上海交通大学医学院附属仁济医院 | 四级甲等 |
上海交通大学医学院附属新华医院 | 四级甲等 |
江苏省苏北人民医院 | 四级甲等 |
连云港市第一人民医院 | 四级甲等 |
东南大学附属中大医院 | 四级甲等 |
南京江北人民医院 | 四级甲等 |
南通市妇幼保健院 | 四级甲等 |
苏州大学附属第一医院 | 四级甲等 |
无锡市第三人民医院 | 四级甲等 |
宜兴市人民医院 | 四级甲等 |
镇江市第一人民医院 | 四级甲等 |
无锡市第二人民医院 | 四级甲等 |
浙江省人民医院 | 四级甲等 |
浙江大学医学院附属第二医院 | 四级甲等 |
浙江大学医学院附属邵逸夫医院 | 四级甲等 |
浙江大学医学院附属儿童医院 | 四级甲等 |
浙江大学医学院附属妇产科医院 | 四级甲等 |
浙江省中医院 | 四级甲等 |
杭州市红十字会医院 | 四级甲等 |
杭州市中医院 | 四级甲等 |
杭州市妇产科医院 | 四级甲等 |
杭州市第三人民医院 | 四级甲等 |
杭州市西溪医院 | 四级甲等 |
杭州市第七人民医院 | 四级甲等 |
宁波市第一医院 | 四级甲等 |
宁波大学医学院附属医院 | 四级甲等 |
宁波市鄞州人民医院 | 四级甲等 |
宁波市鄞州区第二医院 | 四级甲等 |
宁波市第四医院 | 四级甲等 |
浙江省台州医院 | 四级甲等 |
台州市立医院 | 四级甲等 |
金华市中心医院 | 四级甲等 |
福建医科大学附属协和医院 | 四级甲等 |
厦门市第三医院 | 四级甲等 |
厦门医学院附属口腔医院 | 四级甲等 |
南昌大学第二附属医院 | 四级甲等 |
昌乐县人民医院 | 四级甲等 |
菏泽市立医院 | 四级甲等 |
济南市妇幼保健院 | 四级甲等 |
聊城市人民医院 | 四级甲等 |
临沂市人民医院 | 四级甲等 |
山东医学高等专科学校附属医院 | 三级 |
郑州市中心医院 | 四级甲等 |
宜昌市中心人民医院 | 四级甲等 |
宜昌市第一人民医院 | 四级甲等 |
英山县人民医院 | 四级甲等 |
广东省第二人民医院 | 四级甲等 |
广东医科大学附属医院 | 四级甲等 |
广州市番禺区何贤纪念医院 | 四级甲等 |
广州中医药大学第一附属医院 | 四级甲等 |
南方医科大学南方医院 | 四级甲等 |
粤北人民医院 | 四级甲等 |
中山大学中山眼科中心 | 四级甲等 |
珠海市人民医院 | 四级甲等 |
深圳市儿童医院 | 四级甲等 |
深圳市中医院 | 四级甲等 |
深圳市人民医院 | 四级甲等 |
重庆三峡中心医院 | 四级甲等 |
成都市第三人民医院 | 四级甲等 |
广元市精神卫生中心 | 四级甲等 |
兰州大学第二医院 | 四级甲等 |
新疆维吾尔自治区人民医院 | 四级甲等 |
新疆医科大学第一附属医院 | 四级甲等 |
(* 同等级按行政区划排序 )