你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
医疗技术服务设备数据处理阶段概述
本文概述了医疗技术服务中的设备数据处理阶段。 医疗技术服务可将设备数据转换为 FHIR® 观察,以实现在 FHIR® 服务中的持久性。
医疗技术服务设备数据处理遵循以下阶段,并按以下顺序执行:
- 引入
- 规范化 - 应用了设备映射。
- 组 -(可选)
- 转换 - 应用了 FHIR 目标映射。
- 保留
引入
引入是第一个阶段,此时会从 Azure 事件中心接收设备消息并立即将其拉取到医疗技术服务。 事件中心服务支持大规模和高吞吐量,并且能够每秒接收和处理数百万条设备消息。 利用事件中心,医疗技术服务还能够以异步方式使用设备消息,从而无需在处理设备消息时等待设备。 医疗技术服务的系统分配托管标识和 Azure 基于资源的访问控制 (Azure RBAC) 用于安全访问事件中心。
注意
目前,设备消息数据仅支持 JSON 格式。
重要
如果要支持从多个服务访问事件中心,则每个服务需要具有自己的事件中心使用者组。
通过使用者组,多个消耗应用程序可以具有单独的事件流视图,并按自身节奏和偏移量独立读取流。 有关详细信息,请参阅《使用者组》。
示例:
访问同一事件中心的两个医疗技术服务。
访问同一事件中心的医疗技术服务和存储编写器应用程序。
规范化
下一个阶段是规范化,即使用用户选择/用户创建的合规且有效的设备映射处理设备数据。 此映射过程导致将设备数据转换为规范化的架构。 规范化过程不仅简化了后续阶段中的数据处理,而且还提供了将一条设备消息投影到多条规范化消息的功能。 例如,设备可能会在单条设备消息中发送体温、脉搏、血压和呼吸频率等多个生命体征。 此设备消息将会创建四个单独的 FHIR 观察。 通过将设备消息投影到四条不同的规范化消息中,每个 FHIR 观察将会呈现不同的生命体征。
分组 -(可选)
分组是接下来的一个可选阶段,其中医疗技术服务规范化阶段提供的规范化消息将会使用三个不同的参数进行分组:
- 设备标识
- Measurement type
- 时间段
设备标识和度量类型分组是可选的,并且是通过使用 SampledData 度量类型来实现的。 SampledData 度量类型提供了一种简洁的方法,可以表示从设备消息到 FHIR 观察的一系列基于时间的度量。 使用 SampledData 度量类型时,度量值可以分组为表示 1 小时或 24 小时的单个 FHIR 观察。
转换
转换是下一个阶段,此时将会使用用户选择/用户创建的合规且有效的 FHIR 目标映射处理规范化消息。 如果创作了匹配的 FHIR 目标映射,规范化消息将转换为 FHIR 观察。 此时,还会使用设备消息中的设备标识符从 FHIR 服务中检索设备资源及其关联的患者资源。 这些资源将会添加为对要创建的 FHIR 观察的引用。
注意
所有标识查找将在解析后缓存,以减少 FHIR 服务上的负载。 如果打算将设备重用于多个患者,则建议创建一个特定于患者的虚拟设备资源,并在设备消息有效负载中发送虚拟设备标识符。 虚拟设备可以作为父级链接到实际设备资源。
如果 FHIR 服务中不存在给定设备标识符的设备资源,则结果取决于在部署医疗技术服务时设置的解析类型值。 当设置为“查找”时,将忽略该特定消息,并且管道将继续处理其他传入的设备消息。 如果设置为“创建”,则医疗技术服务会在 FHIR 服务中创建最少的设备和患者资源。
注意
如果以后需要其他解析类型,还可以在部署医疗技术服务后调整解析类型。
医疗技术服务提供近实时的处理,还尝试通过将请求分组为 300 条规范化消息的批处理来减少对 FHIR 服务发出的请求数。 如果数据量较低,并且尚未将 300 条规范化消息添加到组中,则该组中的相应 FHIR 观察值会在大约 5 分钟后保存到 FHIR 服务。
注意
当多个设备消息包含相同 FHIR 观察的数据、具有相同的时间戳,并且在同一设备消息批处理中发送(例如,在 5 分钟时段内或 300 条规范化消息组中),则仅保留与该 FHIR 观察的最新设备消息对应的数据。
例如:
设备消息 1:
{
"patientid": "testpatient1",
"deviceid": "testdevice1",
"systolic": "129",
"diastolic": "65",
"measurementdatetime": "2022-02-15T04:00:00.000Z"
}
设备消息 2:
{
"patientid": "testpatient1",
"deviceid": "testdevice1",
"systolic": "113",
"diastolic": "58",
"measurementdatetime": "2022-02-15T04:00:00.000Z"
}
假设这些设备消息在同一 5 分钟时段中或同一组 300 条规范化消息中引入,并且由于 measurementdatetime
对链条设备消息相同(指示这些设备消息包含相同 FHIR 观察的数据),则仅保留设备消息 2 来表示最新/最近数据。
保留
持久化是最后一个阶段,此时,FHIR 观察将从转换阶段持久保存在 FHIR 服务中。 如果 FHIR 观察是新的,则会在 FHIR 服务中创建它。 如果 FHIR 观察已存在,则会在 FHIR 服务中更新。 FHIR 服务使用医疗技术服务的系统分配的托管标识和基于 Azure 资源的访问控制 (Azure RBAC) 来保护对 FHIR 服务的访问。
后续步骤
注意
FHIR® 是 HL7 的注册商标,经 HL7 许可使用。