部署和配置医疗保健数据解决方案中的 OMOP 转换

备注

此内容目前正在更新。

OMOP 转换通过观察性医疗结果伙伴关系 (OMOP) 开放社区标准为标准化分析实现数据准备。 在将医疗保健数据解决方案和医疗保健数据基础功能部署到 Fabric 工作区后,您可以使用此功能。

OMOP 转换是 Microsoft Fabric 中医疗保健数据解决方案下的一项可选功能。 您可以根据具体需求或应用场景灵活地决定是否使用它。

先决条件

部署 OMOP 转换

您可以使用医疗保健数据解决方案:部署医疗保健数据基础中所述的设置模块部署该功能。 但是,本模块中的示例数据选择步骤不会为此功能部署示例数据。 完成功能部署后,OMOP 转换示例数据将专门安装在您的医疗保健数据解决方案环境中。

如果未使用设置模块部署该功能,而是希望改用功能磁贴,请按照以下步骤操作:

  1. 转到 Fabric 上的“医疗保健数据解决方案”主页。

  2. 选择“OMOP 转换”磁贴。

    显示“OMOP 转换”磁贴的屏幕截图。

  3. 在“功能”页面上,选择部署到工作区

    显示如何将该功能部署到您的工作区的屏幕截图。

  4. 完成部署可能需要几分钟时间。 部署过程中不要关闭选项卡或浏览器。 在等待期间,您可以在另一个选项卡中工作。

    部署完成后,您可以在消息栏上看到一条通知。

  5. 从消息栏中选择管理功能,以转到功能管理页面。

    在这里,您可以查看、配置和管理使用该功能部署的项目。

项目

该功能在您的医疗保健数据解决方案环境中安装以下项目:

项目 类型​​
healthcare#_msft_gold_omop 湖屋
healthcare#_msft_omop_silver_gold_transformation 笔记本
healthcare#_msft_omop_drug_exposure_era_sample 笔记本
healthcare#_msft_omop_drug_exposure_insights_sample 笔记本
healthcare#_msft_omop_analytics 数据管道
healthcare#_msft_omop_semantic_model 语义模型
Vocab-HDS 抽样数据

查看 OMOP 银牌笔记本

healthcare#_msft_omop_silver_gold_transformation 笔记本使用作为医疗保健数据解决方案库的一部分提供的 OMOP API 进行数据转换。 该笔记本将 healthcare#_msft_silver 湖屋中的资源转换到 OMOP Common Data Model 中。 然后,转换的数据将插入到 OMOP 湖屋中。

笔记本使用运行 OMOP 转换数据管道所需的预配置值进行部署。 某些配置参数继承自全局配置,可以在笔记本级别覆盖。 默认情况下,您不需要对笔记本配置文件进行任何更改。 如果需要,可以通过选择环境中相应的笔记本和配置文件来查看或修改配置。

若要了解有关笔记本执行的详细信息,请参阅使用 OMOP 转换

查看 OMOP 语义模型

OMOP 语义模型 healthcare#_msft_omop_semantic_model 是基于 OMOP 金牌湖屋的自定义生成的语义模型。 它包括以下 OMOP 表之间的一些关键 OMOP CDM 版本 5.4 关系。

  • 地点
  • 人员
  • 观察结果
  • Procedure_Occurrence
  • Condition_Occurrence
  • 备注
  • Drug_Exposure
  • Visit_Ocurrence
  • Image_Occurrence
  • 度量

这些关系形成在医疗保健数据解决方案中的发现和生成队列(预览版)功能中生成 Power BI 报表所需的最小集。 您可以使用此语义模型作为基础,从 OMOP 湖屋中添加更多 OMOP 表和关系,以根据 OMOP 标准湖屋数据创建自定义 Power BI 报表。

配置药物暴露时代示例笔记本

healthcare#_msft_omop_drug_exposure_era_sample 示例笔记本演示如何在 Azure Synapse Analytics 笔记本中使用 PySpark (Python) 语言在 OMOP 中生成 drug_era 表记录,主要用于探索目的。 drug_era 表记录生成遵循 OHDSI 药物时代示例脚本,该脚本适用于与 Azure Synapse Analytics 中的 PySpark 结合使用。 药物时代生成器代码包含在自定义 Python 库中,该库打包为 wheel (WHL) 文件并上传到 Apache Spark 池以便于访问。

在运行笔记本之前,请记住以下先决条件:

  • 确保 OMOP 数据库在下表中具有有效数据:

    • drug_exposure
    • concept
    • concept_ancestor

    您可以使用示例数据生成此数据,也可以通过运行 FHIR 到 OMOP 数据管道来生成自己的数据。

  • 确保自定义库 wheel 包附加到用于运行此笔记本的 Spark 池。

此笔记本的关键配置参数是 omop_database_name。 此参数标识 OMOP 数据库的名称,其中包含用于生成 drug_era 表的数据。 仅当 OMOP 数据库与全局配置文件中的默认值不同时,才更新此值。

如果 OMOP drug_exposure 表中填充了有效数据,此笔记本将调用 DrugEraGenerator 模块,该模块将某个人暴露于活性药物成分的时间段串联在一起,允许间隔 30 天。 DrugEraGenerator 模块将删除所有现有 drug_era 记录,并根据最新的 OMOP 数据生成新记录。

若要了解有关笔记本执行的详细信息,请参阅使用 OMOP 转换示例笔记本

配置药物暴露见解示例笔记本

healthcare#_msft_omop_drug_exposure_insights_sample 示例笔记本演示了在 Azure Synapse Analytics 笔记本中使用 PySpark 对 drug_era 表进行探索性分析。 该分析将生成一个直方图,显示患者对活性成分的次要药物暴露,按特定年份的性别和年龄分层。 使用上一个笔记本 healthcare#_msft_omop_drug_exposure_era_sample 调用的自定义库 DrugEraGenerator 生成 drug_era 表。 此分析通过合并基于性别和年龄的分层扩展药物暴露查询 DEX03:年龄分布,按药物分层

在运行笔记本之前,请记住以下先决条件:

  • 如果要编辑笔记本配置,请确保复制此笔记本。 不要直接更新笔记本。
  • 通过运行药物暴露时代笔记本,确保 drug_era 表包含数据。 运行此笔记本会根据最新 OMOP 数据将任何现有 drug_era 记录替换为新记录。
  • 按原样使用此笔记本进行探索性分析,并创建副本以执行自定义分析。

以下是关键笔记本配置参数。 您可以修改这些参数,以便对患者药物暴露进行替代探索性分析:

  • primary_drug_concept_id:患者的主要活性成分暴露。
  • secondary_drug_concept_id:患者的次要活性成分暴露。
  • year:患者主动暴露于主要和次要药物的目标年份。

若要了解有关笔记本执行的详细信息,请参阅使用 OMOP 转换示例笔记本