数据准备和清理 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

数据准备和清理

数据准备和清理是数据生命周期中最重要但最耗时的阶段之一。下图显示了数据准备和清理阶段如何融入数据工程自动化和访问控制生命周期。

数据准备和清理示意图

以下是一些数据准备或清理的示例:

  • 将文本列映射到代码

  • 忽略空列

  • 0None或填充空数据字段 ''

  • 匿名化或屏蔽个人身份信息 (PII)

如果您的工作负载很大,包含各种数据,那么我们建议您使用 A mazon EMRAWS Glu e 来完成数据准备和清理任务。Amazon EMR 和 AWS Glue 都可以处理非结构化、半结构化和关系数据,并且都可以使用Apache Spark来创建DataFrame或使用横DynamicFrame向处理。此外,您可以使用 AWS Glu DataBrew e 通过无代码方法清理和处理数据。此外, DataBrew 还可以使用列统计数据分析您的数据集,提供数据谱系,并包括所有列或指定列的数据质量规则。

对于不需要分布式处理且可在 15 分钟内完成的小型工作负载,我们建议您使用 AWS Lambda 进行数据准备和清理。对于较小的工作负载,Lambda 是一种经济实惠的轻量级选择。对于无法进入云端的高度安全数据,我们建议您使用 A WS Outposts 服务器在亚马逊弹性计算云 (Amazon EC2) 实例上执行数据匿名化。

必须选择合适的 AWS 服务进行数据准备和清理,并了解您的选择所涉及的权衡。例如,假设你从 AWS Glue 和 Amazon EMR DataBrew 中进行选择的场景。如果 ETL 任务不频繁,AWS Glue 是理想的选择。不经常的工作每天进行一次、每周一次或每月一次。您可以进一步假设您的数据工程师精通编写 Spark 代码(适用于大数据用例)或一般脚本编写。如果工作更频繁,那么经常运行 AWS Glue 可能会变得昂贵。在本例中,Amazon EMR 提供分布式处理功能,并提供无服务器版本和基于服务器的版本。如果您的数据工程师不具备合适的技能,或者您必须快速交付结果,那么 DataBrew 这是一个不错的选择。 DataBrew 可以减少开发代码的工作量并加快数据准备和清理过程。

处理完成后,ETL 流程中的数据将存储在 AWS 上。存储的选择取决于您要处理的数据类型。例如,您可能正在处理非关系数据,例如图形数据、键值对数据、图像、文本文件或关系结构化数据。

如下图所示,您可以使用以下 AWS 服务进行数据存储:

数据存储服务。

通过使用具有正确配置的正确服务,您可以以最高效、最有效的方式存储数据。这样可以最大限度地减少数据检索所涉及的工作量。