OHDSI ETL 工具使用 WhiteRabbit + Rabbit in A Hat + Usagi

ETL工具


WhiteRabbit和RabbitinAHat 是帮助准备纵向医疗保健数据库 ETL 到OMOP CDM 的软件工具 . WhiteRabbit 会扫描您的数据并创建一份报告,其中包含开始设计 ETL 所需的所有信息。WhiteRabbit 的主要功能是对源数据进行扫描,提供有关字段中出现的表、字段和值的详细信息

Usagi 是一种帮助手动创建代码映射过程的工具。它可以根据代码描述的文本相似性进行建议的映射。

WhiteRabbit

White Rabbit 和 Rabbit in a Hat 是纯 Java 应用程序。这两个应用程序都使用Apache 的 POI Java 库来读取和写入 Word 和 Excel 文件。White Rabbit使用 JDBC 连接到各自的数据库。


系统要求

需要 Java 1.8 或更高版本,并具有对要扫描的数据库的读取权限。


入门


WhiteRabbit

https://github.com/OHDSI/WhiteRabbit


  1. 下载WhiteRabbit*.zip
  2. 解压下载
  3. 在 Windows上双击bin/whiteRabbit.bat启动 White Rabbit,bin/whiteRabbit在 macOS 和 Linux 上。

扫描配置相关信息


  • 选中“Scan field values”框告诉 WhiteRabbit 您想调查为扫描选择的表中的原始数据项(即,如果您选择表 A,WhiteRabbit 将检查表 A 中每一列的内容)。
    • “Min cell count”是扫描字段值时的一个选项。默认情况下,这设置为 5,这意味着源数据中出现次数少于 5 次的值将不会出现在报表中。
  • “Rows per table”是扫描字段值时的一个选项。默认情况下,WhiteRabbit 会在表中随机抽取 100,000 行。还有其他选项可以查看表中的 500,000、100 万或所有行。
  • “Max distinct values”是扫描字段值时的一个选项。默认情况下,该值设置为 1,000,这意味着扫描报告中将显示每个字段最多 1,000 个不同的值。此选项可以设置为 100、1,000 或 10,000 个不同的值。
  • 取消选中“Scan field values”会告诉 WhiteRabbit 不查看或报告任何原始数据项。
  • 选中“Numeric stats”框将包括数字统计。请参阅Numeric stats部分。

Numeric stats


如果选中Numeric stats选项,则会为所有整数、实数和日期数据类型计算一组统计信息。以下统计信息添加到字段概览表(列 KQ):

  • 列 EJ 未显示
  • K 列:平均值
  • L 列:标准偏差(采样)
  • M列:最小值
  • N/O/P 列:四分位数(采样)
  • Q列:最大值

选择扫描Numeric stats选项时,可以设置参数“Numeric stats reservoir size”。这定义了为计算数值统计而存储的值的数量。这些值将从扫描报告中的字段值中随机采样。如果值的数量小于设置的储层大小,则标准差和三个四分位数边界是准确的总体统计数据。否则,统计数据是基于代表性样本的近似值。平均值、最小值和最大值始终是真实的人口统计数据。对于日期,日期的标准偏差以天为单位。其他日期统计信息将转换为日期表示形式。

补充


当然 如果需要造假数据即可点击最上方Fake data genration进行配置

此功能允许根据 WhiteRabbit 扫描报告创建假数据集。生成的假数据可以直接输出到数据库表(MySQL、Oracle、SQL Server、PostgreSQL)或作为分隔文本文件。当无法直接访问数据时,生成的数据集可用于开发 ETL 代码。

WhiteRabbit 有三种生成假数据的模式:

  1. 如果没有扫描任何值(即扫描报告中的列不包含值),WhiteRabbit 将为该列生成随机字符串或数字。
  2. 如果有扫描值,WhiteRabbit 将通过从扫描值中进行选择来生成数据。值基于值的频率进行采样,或者均匀采样(如果选择了此选项)。
  3. 如果该列仅包含唯一值(每个值的频率为 1,例如对于主键),则生成的列将保持唯一。

以下选项可用于生成假数据:

  • “每表最大行数”设置每个输出表的行数。默认情况下,它设置为 10,000。
  • 通过勾选“Uniform Sampling”框,将统一生成假数据。每个值的频率将被视为 1,但值采样仍将是随机的。这增加了扫描报告中的每个值在输出数据中至少出现一次的机会。

Rabbit in A Hat


使用为 WhiteRabbit 下载的文件:

Windows双击bin/rabbitInAHat.bat启动

macOS 和 Linux上双击bin/rabbitInAHat启动

切换CDM版本


打开报告文件


关系逻辑建立


通过上述操作,可以辅助完成清洗逻辑的制定,大大降低清洗逻辑文件的编写,可导出word格式以后即可交给专门负责清洗的同事

Usagi

https://github.com/OHDSI/Usagi


准备工作


  1. Athena获取最新版本的词汇表。
  2. 下载usagi.jar。
  3. 单击 Usagi_vx.xxjar 以启动 Usagi。
  4. Usagi 将提示您指定 Vocabulary 文件的位置以创建索引(只需执行一次)。
  5. 若需要映射的数据名不是英文,建议使用谷歌翻译进行转换

开始创建映射关系


创建完索引以后,选择导入需要映射的表格File ->import code,根据需求填好表格点击import

导出后的csv文件

欢迎交流 617029118@qq.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值