使用 AWS Glue DataBrew 构建您自己的数据质量规则
在上一篇文章中,我展示了 AWS Glue DataBrew 如何帮助您处理 PII 数据(该帖子是泰语)对于英语读者来说,屏幕截图不言自明,您可以轻松跟进。 据该公司称,最近宣布 AWS Glue DataBrew 用户现在可以开发数据质量规则,这是为特定数据设置业务需求的定制验证测试。因此,任何不想投资高成本 DQ 许可产品或不想使用需要编码知识的开源框架的数据人员都可以定义自己的质量规则并将
在上一篇文章中,我展示了 AWS Glue DataBrew 如何帮助您处理 PII 数据(该帖子是泰语)对于英语读者来说,屏幕截图不言自明,您可以轻松跟进。
据该公司称,最近宣布 AWS Glue DataBrew 用户现在可以开发数据质量规则,这是为特定数据设置业务需求的定制验证测试。因此,任何不想投资高成本 DQ 许可产品或不想使用需要编码知识的开源框架的数据人员都可以定义自己的质量规则并将其填充到数据质量仪表板中和验证报告,允许客户快速查看规则结果并确定他们的数据是否适合使用。作为 Builder,随着新的两个公告 AWS GlueDataBrew 与DQ和PIIHanding 将在大规模设计 DQ 流程方面帮助我们很多,因为它不需要维护的计算服务器。在这篇文章中,我将向您介绍如何使用 AWS Glue DataBrew 验证您的数据质量。
什么是 AWS Glue Databrew?
数据质量规则是什么意思?
目录
-
架构图
-
先决条件
-
准备数据集
-
运行没有 DQ 规则集的数据配置文件
-
创建 DQ 规则集
-
使用 DQ 规则集重新运行数据配置文件
-
查看DQ仪表板
-
结论
架构图
[](https://res.cloudinary.com/practicaldev/image/fetch/s--BNJXv6cD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/x144lnkhg1a3w9j505kz.png)
先决条件
-
AWS 账户❗
-
在此处下载数据
-
解压缩,仅将 patient.csv 上传到 Amazon S3。
准备数据集
在此处转到 AWS Glue DataBrew 控制台
[](https://res.cloudinary.com/practicaldev/image/fetch/s--188djcuT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/wyfcw6a1cjysiamnkpkq.png)
在左侧单击Datasets为 Glue DataBrew 创建数据集
[](https://res.cloudinary.com/practicaldev/image/fetch/s--wssHjMPI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/tlukia8aa3cgs4e9e087.png)
点击创建新数据集
[](https://res.cloudinary.com/practicaldev/image/fetch/s--m9C53GxR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/s60ps64thufsqa2tawbd.png)
选择您刚刚上传的 Patient.csv,您还可以选择从 Glue 数据目录、Amazon Redshift、Appflow 或 Snowflake 获取数据。单击创建数据集
[](https://res.cloudinary.com/practicaldev/image/fetch/s--14RUnr4z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/6fao7lcm7d5lm592lvqu.png)
运行数据配置文件
在 Datasets 中,选择 Patient dataset,然后单击“Run data profile”
[](https://res.cloudinary.com/practicaldev/image/fetch/s--y_-fYUL8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev- to-uploads.s3.amazonaws.com/uploads/articles/k60w63dmvio4aik2riuy.png)
您将等待几分钟让数据配置文件填充数据配置文件概览、列统计信息、数据质量规则建议和数据沿袭,完成后单击“查看数据配置文件”
[](https://res.cloudinary.com/practicaldev/image/fetch/s--Ikq_Bgq_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/s8dg7hq1ufjj0lr6ievc.png)
您希望看到有助于理解您的数据集的所有数据统计信息,如下所示
数据集预览
[](https://res.cloudinary.com/practicaldev/image/fetch/s--x_g6MfdY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/uny4jbbp887qmmzd9tt7.png)
数据资料概览
[](https://res.cloudinary.com/practicaldev/image/fetch/s--8CRa3b6S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/ylkk2a3i2yinkg4e7o0s.png)
潜在的 PII 检测
[](https://res.cloudinary.com/practicaldev/image/fetch/s--GdZ4Zkt8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/z7ist9hg4djkhlnjmx1c.png)
属性相关性
[](https://res.cloudinary.com/practicaldev/image/fetch/s--Fz1UnnwE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/jm2onqc8l1spipkqldxk.png)
单个列级统计
[](https://res.cloudinary.com/practicaldev/image/fetch/s--WYwOZbMM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/997mdy45rhim9knhqiqz.png)
[](https://res.cloudinary.com/practicaldev/image/fetch/s--y4XALK09--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/yv10deneqjqmdfpa9l8b.png)
所有列级别统计摘要,例如最小值、最大值、分布、列类型、唯一值等
[](https://res.cloudinary.com/practicaldev/image/fetch/s--DMSJa0Ri--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/bd3p3iv39js8od25a5k7.png)
您还可以在 All Column level statistic 中向下钻取到标识为 PII 的列
[](https://res.cloudinary.com/practicaldev/image/fetch/s--to8QroHW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/y1jv7e8ktzasd5yepy5n.png)
您还可以查看数据沿袭!
[](https://res.cloudinary.com/practicaldev/image/fetch/s--rsTGCM3J--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/uw1cn1dv81927bdbboip.png)
足以进行数据探索。这篇文章的目的与数据质量有关,让我们看看数据质量选项卡,你什么也看不到,因为你还没有规则!但是在您运行数据配置文件作业后,它会建议您基于标准 DQ,例如右侧的唯一性、完整性等
[](https://res.cloudinary.com/practicaldev/image/fetch/s--2vMzSTXC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/9ii96dm1c9gk7vhkftwj.png)
创建 DQ 规则集
您可以根据您的业务标准选择合理的内容,同样需要零代码!我选择检查我的 ID、SSN 和 SSN 长度等的唯一性
[](https://res.cloudinary.com/practicaldev/image/fetch/s--b1_a7Z0d--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/v06n8s2xx1tvzdxbzf14.png)
这也是 AWS DataBrew 的建议。您可以稍后创建自己的 DQ 规则,完成后,我只需单击“创建规则集”
我可以添加、删除、调整或查看我刚刚添加的 DQ 规则
[](https://res.cloudinary.com/practicaldev/image/fetch/s--RATnHx-j--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev- to-uploads.s3.amazonaws.com/uploads/articles/wvy8rsd78ciqakxwtpzs.png)
我只需点击“创建规则集”,我可以在这里看到 DQ 规则集
[](https://res.cloudinary.com/practicaldev/image/fetch/s--gViXWU09--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/nhhmuc0pcgvy8a45imv1.png)
单击 DQ 规则集名称,在我的情况下是“患者数据的 DQ 规则集”,我应该能够查看我的所有 DQ 规则。
[](https://res.cloudinary.com/practicaldev/image/fetch/s--EPY7DPK8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/oyq04btu6zhbe1t6j3te.png)
将 DQ 规则集与数据配置文件作业相关联,单击此处查看您的所有数据配置文件作业
就我而言,它是“患者 - 数据配置文件作业,选择并单击操作,然后编辑
[](https://res.cloudinary.com/practicaldev/image/fetch/s--UWr3ceRt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/jbwjfvu5b6eyk9d4rjf7.png)
搜索“数据质量规则”,点击“应用数据质量规则集”
[](https://res.cloudinary.com/practicaldev/image/fetch/s--0ftp_t1D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/issvxe4yvygqn03bbdjl.png)
选择您的 DQ 规则集,然后单击应用选定的规则集,然后单击保存
[](https://res.cloudinary.com/practicaldev/image/fetch/s--D-Z7nQyL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev- to-uploads.s3.amazonaws.com/uploads/articles/p7e9akxchdw04fip2p75.png)
[](https://res.cloudinary.com/practicaldev/image/fetch/s--83H7Lp82--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/dj76mjzokdoir68d6wv7.png)
使用 DQ 规则集重新运行数据配置文件
您选择您的个人资料作业,然后单击“运行作业”
[](https://res.cloudinary.com/practicaldev/image/fetch/s--J5v-WpQY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev- to-uploads.s3.amazonaws.com/uploads/articles/0xt2egkjawrglavdclu0.png)
查看DQ仪表板
等待几分钟,您应该能够根据您的 DQ 规则看到来自数据配置文件作业的结果以及 DQ 结果!
[](https://res.cloudinary.com/practicaldev/image/fetch/s--rCwQfpcy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/kvwj7gdmgzul1eql52tf.png)
[](https://res.cloudinary.com/practicaldev/image/fetch/s--0vDJ1NMF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/h7rjjgs1x9llhjbxvaju.png)
我的数据集有 4 次通过,6 次失败,基于我的 DQ 规则,显然我必须修复我的数据,然后下游进程才会消耗!
[](https://res.cloudinary.com/practicaldev/image/fetch/s--LMqrIzsC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/7s9gd0ul0uvx2egupzbg.png)
结论
AWS Glue DataBrew 是一个可视化数据准备工具,使用 250 多个预构建的转换可以轻松清理和规范化数据,所有这些都无需编写任何代码,具有 DQ 的新功能和PII 处理它会有所帮助您可以在自动化数据管道(AWS 管理的气流或 AWS 步进函数)中添加自己的数据质量规则和 PII 标记化,以确保您的数据是干净且受保护的。
您可以考虑如何添加到 PII 混淆,以及像这样的 DQ 区域
[](https://res.cloudinary.com/practicaldev/image/fetch/s--lRrpHe3e--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/uploads/articles/jezuvlc1g7sa4e4scjop.png)
[](https://res.cloudinary.com/practicaldev/image/fetch/s--YYkXzGR5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://i.pinimg.com /originals/88/71/3c/88713c217a98cac0d46781b38f11c019.gif)
更多推荐
所有评论(0)