hc1 如何使用 亚马逊云科技 无服务器将实验室数据转化为个性化健康见解

作者:初创公司高级合伙人解决方案架构师 Gokhul Srinivasan — 亚马逊云科技 作者:高级数据工程师 W hitne y Wilger —
hc1

hc1-AWS-Partners-2022
hc1
hc1-APN-Blog-CTA-2022

自2011年以来, hc1 已成为精准测试和处方领域的生物信息学领导者。基于亚马逊网络服务 (亚马逊云科技) 构建的 hc1 平台可组织实时数据,包括实验室结果、基因组学和药物,以提供解决方案,确保合适的患者在正确的时间获得正确的测试和正确的处方。

大多数 hc1 客户是医疗保健系统和跨不同系统存储数据的独立实验室。作为 亚马逊云科技 医疗保健能力合作伙伴 ,hc1 会提取、组织和规范化客户数据,以提供分析和改善运营管理。结果,客户可以最大限度地利用这些见解。

hc1 使用 hc1 实验室洞察平台实现这一目标 ,该平台 包括:

  • hc1 运营管理 简化实验室运营的多个领域,从销售活动到客户和患者关系再到运营计划。
  • hc1 分析 提供自动报告和实时关键绩效指标 (KPI) 跟踪。

来自上述解决方案的数据分为账户、提供者和患者档案,以简化复杂的医疗保健关系。此外,每个配置文件都包含实验室数据属性,包括订单、结果、案例、任务和备忘录。

先前的状态

hc1 使用基于 Pentaho 的解决方案来处理客户数据并创建分析和报告。Pentaho 数据集成套件和用户界面组件部署在 亚马逊弹性计算云 (Amazon EC2) 实例上,给操作带来了挑战。

  1. 基础设施脆弱,需要人工管理。部署和变更管理本来可以对程序员更加友好。
  2. 架构不支持与 亚马逊云科技 CloudFormation 集成 ,无法提高 DevOps 效率和构建自动化管道。
  3. 数据分散在数据系统中,导致庞大的数据孤岛:
    • 亚马逊 EC2 上的 MySQL:来自 hc1 CRM 平台的 交易数据。
    • 亚马逊 Aurora 上的 MySQL:来自实验室信息系统的 交易数据。
    • 亚马逊 EC2 上的 Postgres: 审计所有 hc1 平台上的数据。
    • 亚马逊 Aurora 上的 Postgres: FHIR HL7 消息。
  4. MySQL 是此过程的主要来源,但是该湖存储来自 MySQL、Postgres 和亚马逊 Dynamo D B 的数据。

解决方案

该方法是构建多租户、可扩展的架构,以应对这些运营挑战,同时提高所有权和问责制。在评估了各种选项之后,hc1 转变为由 亚马逊云科技 Glue和亚马逊云科技 Lake Formati on等亚马逊云科技无服务器服务提供 支持的下一代架构。

亚马逊云科技 Glu e 是一项无服务器数据集成服务,可以更轻松地发现、准备、移动和集成来自多个来源的数据,用于分析、机器学习 (ML) 和应用程序开发。 亚马逊云科技 Lake Formation 是一项完全托管的服务,可帮助构建、保护和管理数据湖,并为数据湖中的数据提供精细的访问控制。

替代方法成本高昂,会产生管理开销,同时还需要专用 EC2 实例和全天候支持。亚马逊云科技 Glue 在被调用时会消耗资源,从而提供更快的数据传输、更短的延迟时间和更低的成本。

对于 hc1 的内部数据团队来说,由此产生的基于 Amazon Simple Storage Servic e (Amazon S3) 的数据湖为机器学习计划提供了一个集中存储库。亚马逊云科技 Glue 使 hc1 能够提供更强大的产品,以便每天及时地提供数据。

架构

源MySQL和 Amazon Aurora 数据库是多租户数据库,存储所有客户的数据。客户数据存储在不同的表中,没有重叠之处,该架构将流程分成了独立的处理段并隔离了爆炸半径。

下图说明了 图 1 所示的无服务器架构 的工作原理。架构分为三组。

原始数据生成

此步骤对源数据库中的数据进行分类和提取并将其移至 S3。此步骤使用 亚马逊云科技 Glue 爬虫 扫描数据库中的数据、提取架构信息并将元数据存储在 亚马逊云科技 Glue 数据目录 中。

亚马逊云科技 Glue 数据目录存储客户元数据,并使用来自 Lake Formation 的权限安全地发布数据,同时以精细的方式保护数据访问。这有助于跟踪架构更改并建立全面的审计和治理流程。

有五个 亚马逊云科技 Glue 提取、转换、加载 (ETL) 任务,它们转换数据并生成拼花格式的输出原始文件:

  • 亚马逊云科技 Glue 架构同步: 保持 Snowflake 数据库(分析存储)与 MySQL 源同步。
  • 满载: 加载整个客户表。
  • 增量加 载:加载客户表中的增量更改。
  • 动态满 载:为客户加载整个用户定义的表。
  • 动态增量加 载:从用户定义的表中加载增量更改。

这些专门构建的 亚马逊云科技 Glue 任务隔离了流程,以有效地处理不同的业务场景。此外,一些用户定义的表很大。动态加载任务独立于增量和满载任务处理此容量。

在此步骤结束时,将根据Lake Formation访问控制隔离客户特定的原始数据,并移至相应的S3存储桶进行数据管理。

数据管理

此过程有助于组织和整合原始数据。通过将列转为行,转换为存储报告数据提供了一种有意义的方法。此流程使用 亚马逊云科技 Lam bda 、亚马逊简单通知 服务 (SNS ) 和亚马逊 简单 队列服务 (SQS) 分离。 解耦有助于 hc1 具备所需的灵活性,以支持频繁的客户变更和可扩展性以吸引新客户。

亚马逊云科技 Lambda 是一项无服务器、事件驱动的计算服务,允许您为几乎任何类型的应用程序或后端服务运行代码,而无需预置或管理服务器。SNS 是一种完全托管的消息服务,用于应用程序间通信 (A2A) 和应用程序对人 (A2P) 通信。SQS 是一种完全托管的消息队列服务,使您能够分离和扩展微服务、分布式系统和无服务器应用程序。

Amazon S3 事件通知用于在将原始数据文件添加到特定 S3 存储桶时触发通知。通知配置标识事件并通知 SNS,SNS 主题将消息发送到订阅的 SQS 队列。

您可以使用 Lambda 函数处理 SQS 队列中的消息。Lambda 轮询队列并使用包含队列消息的事件同步调用您的函数。 对于您的 Lambda 函数无法处理的消息,您可以指定另一个队列作为 死信队列

此过程分为策划和转换序列,SNS 主题通知相应的 SNS 队列。除队列外,每个序列还包含一个 Lambda 函数和一个 Lambda 无法处理 的消息的死信队列

然后,精选和转换后的文件将存储在单独的 S3 存储桶中。精选文件包含来自标准化表的数据,而转换后的文件包含对这些表的更改,例如非规范化和数据透视表。

《雪花》策展

此过程的最后一步使用了名为 CuratedtoSnowfLake 的 亚马逊云科技 Glue 任务 ,该任务负责创建报告。该任务从精选和转换的 S3 存储桶中提取文件,并生成报告数据以获得实验室见解。

数据通过 Snowflake 管理员 API 和 Snowflake 内部的客户端数据库推送到 Snowflake。

hc1-Lab-Data-1

图 1 — hc1 数据湖摄取架构。

亚马逊云科技 Glue 任务支持自定义数据移动并提高操作稳定性。该流程将数据分成批次并使用 亚马逊云科技 Glu e 书签 ,这有助于 hc1 维护状态信息,保留先前支持幂等交易的状态,并防止重新处理旧数据。

Amazon DynamoDB 是一项快速、灵活的 NoSQL 数据库服务,可在任何规模下提供个位数毫秒的性能。该架构使用 DynamoDB 存储 亚马逊云科技 Glue 书签、表和数据库源级别的处理状态。

该架构使用 亚马逊云科技 CloudFormation 和 亚马逊云科技 无服务器应用程序模型 (亚马逊云科技 SAM) 来构建无服务器应用程序。通过将基础设施视为代码,CloudFormation 允许 hc1 建模、预置和管理 亚马逊云科技 和第三方资源。SAM 提供速记语法来表达函数、API、数据库和事件源映射。

hc1 使用数据驱动的松散耦合架构,隔离了上游和下游平台的操作。该架构建立在现有应用程序之上,避免了数据重复,并确保了数据安全和治理的高标准。这减少了 hc1 平台内数据流的总体阻力。

成果

总体而言,该架构通过将过程分为三个阶段,而不是一个整体选项,增加了更好的记录和更改,减小了爆炸半径,并提高了弹性。结果是提供单租户软件即服务 (SaaS) 产品,每个客户只有一个租户。亚马逊云科技 Glue 任务部署在每个客户租户中,而 Lake Formation 是多租户为所有客户提供支持。

通过这种架构,hc1 使用高度可扩展、功能丰富且经济实惠的 亚马逊云科技 原生技术对其数据平台进行了现代化改造。这种方法使 hc1 内部团队能够自主运作,同时为上游和下游应用程序提供中央数据发现、治理和审计。

hc1 还可以更快地集成、高效实施和快速扩展以满足内部和客户需求。这种方法可以实现遵守合规性和监管政策的监管和轻松的数据移动。使用无服务器架构,hc1 避免了数据丢失、改善了数据共享、提高了安全性并提高了投资回报率 (ROI)。这使得 hc1 能够大规模快速和灵活地将实验室数据转化为个性化的医疗保健见解。

使用新架构可以让 hc1 获得三个不同但相关的结果:

  • 多模态分析
  • 实验室见解
  • 数据安全、治理和合规性

无服务器优势

该架构有助于 hc1 扩展到成千上万的活跃客户,并专注于客户成果和质量改进。

亚马逊云科技 可用区 (AZ) 的实施使该解决方案具有高可用性、容错性和可扩展性,同时根据实际使用情况最大限度地降低运营成本。

主要优势包括:

  • 可扩展性:该架构 经过扩展以支持多个客户,可处理多个客户超过 71 TB 的数据。
  • 弹性: Pentaho 流程迈出了一大步,将数据从源转移到目的地。新的架构分解了这些步骤,并通过实施多可用区提供了轻松的恢复。
  • 运营改进: Pentaho 最初是满负荷运行,只有当大型客户不再满负荷时才转为差速器。新方法根据列选择增量和满载类型,并进一步分离动态表。
  • 消除依赖性: 工作负载使用内置的 亚马逊云科技 服务集成,避免了对第三方平台、培训和升级的依赖。它消除了 EC2 和 Pentaho 软件的管理开销。
  • 成本优化: 通过即用即付模式,hc1 优化了成本,无需过度配置资源。这种成本节省超过了第三方许可证降低的成本。
  • 消除配置延迟: 现在,hc1 可以扩展并增加更多客户,而不会出现容量规划和配置延迟。
  • 审计: 访问控制是使用 亚马逊云科技 Lake Formation 预定义的,用于部署 亚马逊云科技 Glue 的更改。这简化了 HIPAA 和 Hi-Trust 审计,并提高了审计数据的可见性。

客户福利

频繁运行和增量加载的能力有助于 hc1 满足运行时服务级别协议 (SLA),从而提高客户满意度。整体解决方案可帮助 hc1 在更短的时间内、以更低的成本激活客户,并改善客户体验。

实验室诊断数据和操作指标通常位于几个不同的隔离系统中。客户现在能够实时生成自动质量报告和关键绩效指标 (KPI),从而消除延迟。

对于 hc1,该架构为集成新域和应用程序提供了可重复的蓝图。客户还可以设计和使用用户定义的字段和表来添加客户特定的数据。单独的 亚马逊云科技 Glue 任务支持这种客户定义的数据处理。以近乎实时的速度更快地提供实验室见解,帮助实验室进行创新并提供以分析为导向的结果,从而改善患者的健康。

客户可以享受用户定义表的灵活性,这是先前流程的必要步骤。这使客户能够改变对产品功能开发的依赖。目前,该架构可处理超过 117 GB 的用户定义数据,随着客户采用率的提高,该数据量将继续增长。

结论

hc1 采用的 亚马逊云科技 无服务器架构增强了其客户体验,提供了个性化的健康见解。该方法可帮助 hc1 汇总来自单块孤岛的数据,并通过 亚马逊云科技 CloudFormation 和 DevOps 自动化管道提高效率。

亚马逊云科技 Glue 和 亚马逊云科技 Lake Formation 将流程分解为独立且具有弹性的处理单元,并隔离了爆炸半径,从而提高了平台的可靠性。在此基础上,hc1 可以推动更多创新和分析驱动的解决方案。

要了解有关 hc1 如何帮助医疗保健专业人员将实验室数据转化为个性化医疗保健见解的更多信息,请访问 hc1 网站。


hc1-APN-Blog-Connect-2022


hc1 — 亚马逊云科技 合作伙伴聚焦

hc1 是 亚马逊云科技 医疗保健能力合作伙伴 ,负责提取、组织和规范化客户数据,以提供分析和改善运营管理。结果,客户可以最大限度地利用这些见解。

联系 hc1 | 合作伙伴概述