由 Noritaka Sekiyama、Matt Su、Vaibhav Porwal 和 Sriram Ramarathnam 于 2024 年 7 月 25 日发布在 [Amazon Managed Workflows for Apache Airflow (AmazonMWAA)](https://aws.amazon.com/blogs/big-data/category/application- integration/amazon-managed-workflows-for-apache-airflow-amazon-mwaa/ "查看所有关于 Amazon Managed Workflows for Apache Airflow (Amazon MWAA) 的帖子"), , , 和 , 分享
在经过仔细考虑后,我们决定于 2024 年 7 月 25 日停止新客户访问 AWS 数据管道。现有 AWS 数据管道客户可以继续正常使用该服务。AWS将继续投资于 AWS 数据管道的安全性、可用性和性能的提升,但我们没有计划引入新功能。
我们建议客户根据现有的工作负载选择以下 AWS 服务之一进行迁移:
帮助客户自动化数据的移动和转化。借助数据管道,客户可以定义数据驱动的工作流,以便任务依赖于上一个任务的成功完成。自 2012年推出以来,数据管道在多个流行的 Amazon Web Services (AWS) 服务之前就已经服务于提取、转换和加载(ETL)以及基础设施配置用例。一些客户希望获得比数据管道更深层次的控制和特定功能。随着数据行业的最新发展,客户正寻求一个更具功能的平台,以实现其数据管道的现代化,为数据和机器学习(ML)创新做好准备。本文将解释如何将数据管道迁移到其他 AWS 服务,以满足数据从业者日益增长的需求。您选择的选项取决于您当前在数据管道上的工作负载。您可以将数据管道的典型用例迁移到 AWS Glue、StepFunctions 或 Amazon MWAA。
请注意,您需要根据您的需求修改本文提供的示例中的配置和代码。在迁移后开始任何生产工作负载之前,您需要测试新的工作流,以确保不会干扰生产系统。
是一项无服务器的数据集成服务,帮助分析师发现、准备、移动和集成来自多个来源的数据。它包含用于创建、运行作业和协调工作流的工具。借助 AWSGlue,您可以发现并连接到数百种不同的数据源,并在集中式数据目录中管理数据。您可以直观地创建、运行和监控 ETL管道,将数据加载到数据湖中。此外,您可以立即使用 、 和 查询和搜索目录中的数据。
我们建议您在以下情况下将数据管道工作负载迁移到 AWS Glue:
在数据管道上,一个最常见的工作负载是将 表备份到 Amazon Simple Storage Service (AmazonS3)。数据管道具有一个 ,用于将 DynamoDB 表数据导出到指定的 S3 存储桶。
![导出 DynamoDB 表到 删除)
该模板使用 EmrActivity (名为 TableBackupActivity)在 EmrCluster (名为
EmrClusterForBackup)上运行,将数据从 DynamoDBDataNode 备份到 S3DataNode 。
您可以将这些管道迁移到 AWS Glue,因为它本机支持从 DynamoDB 读取。
要为上述用例定义一个 AWS Glue 作业,请按照以下步骤操作:
数据源 - DynamoDB 上,对于 DynamoDB 源 ,选择 直接选择 DynamoDB 表 ,然后从菜单中选择您的源 DynamoDB 表。s3.bucket 和 dynamodb.s3.prefix。**+**(加号)以添加新节点。数据目标 - S3 存储桶 上,对于 格式 ,选择您首选的格式,例如 Parquet。![成功创建和启动 AWS Glue删除)
您的 AWS Glue 作业已成功创建并启动。
您可能会注意到没有管理读取 I/O 速率的属性。这是因为 Glue Studio 中使用的默认 DynamoDB 读取器不扫描源 DynamoDB表。相反,它使用 。
在数据管道上,另一个常见的工作负载是使用备份数据从 Amazon S3 恢复 DynamoDB 表。数据管道具有一个 用于从指定的 S3 存储桶中导入 DynamoDB 表数据。
![导入 DynamoDB删除)
该模板使用 EmrActivity (名为 TableLoadActivity),它在 EmrCluster (名为
EmrClusterForLoad)上运行,并将数据从 S3DataNode 加载到 DynamoDBDataNode 。
您可以将这些管道迁移到 AWS Glue,因为它本机支持写入 DynamoDB。
先决条件是创建一个目标 DynamoDB 表,并使用 Glue 爬虫、Glue 控制台或 API 将其编入 Glue 数据目录。
数据源 - S3 存储桶 上,对于 S3 URL ,输入您的 S3 路径。**+**(加号)以添加新节点。数据目标 - 数据目录 上,对于 数据库 ,选择您在数据目录中的目标数据库。![成功创建和启动 AWS Glue删除)
您的 AWS Glue 作业已成功创建并启动。
是一项无服务器的编排服务,允许您为业务关键应用程序构建工作流。通过 Step Functions,您可以使用可视化编辑器构建工作流,并直接与超过 250 种 AWS 服务以及超过 11,000 种操作集成,包括 AWS Lambda、Amazon EMR、DynamoDB 等。您可以使用 StepFunctions 编排数据处理管道、处理错误,并处理底层 AWS 服务的限流限制。您可以创建处理和发布机器学习模型的工作流,编排微服务,以及控制 AWS服务(例如 AWS Glue)以生成 ETL 工作流。您还可以创建长时间运行、自动化的工作流,以满足需要人工交互的应用程序。
我们建议您在以下情况下将数据管道工作负载迁移到 Step Functions:
使用 Step Functions,您可以选择与数据管道中当前使用的相同版本的 Amazon EMR。
对于迁移数据管道托管资源上的活动,您可以在 Step Functions 中使用 来自动化资源的配置和清理。对于在本地服务器、用户管理的 EC2 实例或用户管理的 EMR 集群上迁移活动,您可以在实例上安装 。您可以通过 从 Step Functions 启动该命令。您还可以从定义在 中的计划启动状态机。
要将数据管道中的 HadoopActivity 在 EmrCluster 上迁移到 Step Functions,请执行以下步骤:
emr,选择 管理 EMR 作业 ,然后选择 选择 。您的状态机已成功配置。了解更多内容,请查看 。
是一项托管的 Apache Airflow 编排服务,允许您使用 Apache Airflow 平台在云中设置和操作端到端的数据管道。ApacheAirflow 是一种开源工具,旨在以编程方式编写、调度和监控一系列称为 工作流 的进程和任务的序列。Apache Airflow引入了执行者、池和服务水平协议(SLA)等新概念,为您提供了卓越的数据编排能力。借助 Amazon MWAA,您可以使用 Airflow 和 Python编程语言创建工作流,而无需管理底层基础设施以实现可扩展性、可用性和安全性。Amazon MWAA 会自动扩展其工作流运行时容量以满足您的需求,并与 AWS安全服务集成,帮助您快速安全地访问数据。
我们建议您在以下情况下将数据管道工作负载迁移到 Amazon MWAA:
Leave a Reply