AWS 中基于依赖关系的 ETL 流

Dependency based ETL flow in AWS

我们想要基于 S3 中的输入数据创建一个动态流。基于 S3 中可用的数据以及元数据,我们希望在系统中创建动态集群和动态 tasks/transformation 作业。有些工作是基于依赖的。在这里我分享了预期的流程,想知道我们使用 AWS 服务和环境能多有效地做到这一点。

我正在研究 AWS SWF、Data Pipe Line 和 Lambda。但现在确定如何处理动态任务和动态依赖关系。关于这个的任何想法。

数据流在附图中解释(参考ETL Flow) ETL Flow

如果您使用 AWS Flow Framework that is part of official SWF client then modeling such dynamic flow is pretty straightforward. You define its object model, write code that instantiate it based on your pipeline definition and execute using the framework. See Deployment Sample 作为此类动态工作流实施的示例。

带有 S3 触发器的 Amazon Step Functions 应该以经济高效且可扩展的方式完成工作。

所有步骤都用状态语言定义。

https://states-language.net/spec.html

您可以并行 运行 个作业并等待它们完成后再开始下一个作业。

下面是来自 AWS Step Functions 的示例之一,