我的团队目前正在寻找一个相当昂贵的ETL工具的替代品,目前我们正在使用这个工具作为一个美化的调度器。我们使用自己的Python代码改进了ETL工具提供的任何集成,所以我真的只需要它的调度能力。我们正在考虑的一个选项是数据管道,目前我正在试用。从亚马逊数据管道中的管道调用管道
我的问题是:想象一下,我们有两个数据集加载 - 产品和销售。这些数据集中的每一个都需要一些加载步骤(获取源数据,调用python脚本进行转换,加载到Redshift)。然而,产品需要在销售运行之前加载,因为我们需要产品成本等来计算保证金。数据管道中是否有可能首先调用产品,等待其成功完成,然后调用销售的“主”管道?如果是这样,怎么样?如果Data Pipeline不适合这种类型的工作流,我也会接受其他产品建议。感谢帮助
您的主题讨论了如何定义不同管道之间的依赖关系。今天不可能直接使用前提条件(间接使用前提条件)。但是你可以在一个管道中拥有你想要的东西,也就是你在问题描述中所谓的“主”管道。 – panther
@panther我有更多的数据集加载,所以这会变得非常混乱,我认为。它也使得重新运行某些数据集有问题 - 管道中间的故障将需要完整的重新运行 – jpavs
在这种情况下,在数据管道有更好的解决方案之前,可以在S3中使用标记文件来触发其他管道。对于单一管道模型,您可以使用[cascade failure and rerun](http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-manage- cascade-failandrerun.html) – panther