亚马逊AWS官方博客

加入预览版 —— AWS Glue 数据质量

早在1980年,在我的第二份专业编程工作中,正在做一个分析来自美国多个州的驾驶执照数据的项目。当时,该类型的数据通常存储在固定长度的记录中,在每个字段中仔细(或不谨慎)地对值进行编码。尽管我们得到了数据架构,但总是会发现开发人员必须使用技巧来表示事先没有预料到的值。例如,为患有异色症(不同颜色眼睛)的人编码。为了确保我们处理的是已知数据,最终在实际运行耗时且昂贵的分析之前对数据进行了全面扫描。这是我对数据质量或缺乏数据的介绍。

AWS 让您可以更轻松地构建任何规模的数据湖和数据仓库。我们希望让您比以往任何时候都更轻松地衡量和保持所提取、处理和共享数据的目标质量。

介绍 AWS Glue Data Quality
今天我想向大家介绍一下 AWS Glue Data Quality,这是一套适用于 AWS Glue 的新功能,我们将以预览的形式推出。可以分析您的表格并根据发现的内容自动推荐一组规则。如有必要,可以微调这些规则,也可以自己编写规则。在这篇博客文章中,我会向大家展示一些亮点,当这些功能从预览版发展到正式发布时,我将保存详细信息以供整篇文章使用。

每条数据质量规则都引用 Glue 表或 Glue 表中的选定列,并检查特定类型的属性:及时性、准确性、完整性等。例如,规则可以指示表必须具有预期的列数,列名与所需的模式相匹配,以及特定列可用作主键。

入门指南
我可以在其中一个 Glue 表格上打开新的 Data quality(数据质量)选项卡来始使用。我可以手动创建规则集,也可以单击 Recommend ruleset(推荐规则集)开始使用:

然后,我为我的规则集 (RS1) 输入一个名称,选择一个有权访问 IAM 角色,然后单击 Recommend ruleset(推荐规则集):

点击会启动 Glue 推荐任务(一种特殊类型的 Glue 作业),会扫描数据并提出建议。任务运行完成后,我可以检查建议:

单击 Evaluate ruleset(评估规则集)来检查我的数据质量。

数据质量任务正在运行,我可以检查结果:

除了创建附加到表格的规则集外,我还可以将其用作 Glue 作业的一部分。我照常创建任务,然后添加一个 Evaluate Data Quality(评估数据质量) 节点:

然后使用数据质量定义语言 (DDQL) 生成器来创建我的规则。我可以在 20 种不同的规则类型之间进行选择:

在这篇博客文章中,我将这些规则设置得更为严格,这样就可以展示当数据质量评估失败时会发生的情况。

我可以设置作业选项,然后选择原始数据或数据质量结果作为转换的输出。我也可以将数据质量结果写入 S3 存储桶:

创建规则集后,为作业设置了任何其他所需的选项,保存,然后运行。作业完成后,我可以在 “数据质量” 选项卡中找到结果。因为制定了过于严格的规则,所以评估将我的数据标记为 0%:

还有很多内容,但我会保存到下一篇博客文章中!

注意事项
预览区域 — 这是一个开放预览,现在美国东部(俄亥俄州、弗吉尼亚北部)、美国西部(俄勒冈州)、亚太地区(东京) 和欧洲地区(爱尔兰)的 AWS 区域可以预览。

定价 — 评估数据质量消耗 Glue Data Processing Unit (DPU) 的方式和每个 DPU 的定价与任何其他 Glue 作业相同。

 

Jeff