任何人都可以通过AWS Lambda执行解释如何使用源参数多次激活AWS Data Pipeline。
目前,第一个处理会激活管道,但随后的任何激活都会在有或没有消息的情况下失败(取决于激活参数)
完整的处理循环是将数据移动到S3然后启动DataPipeline以将数据迁移到Redshift。
Example 1: aws datapipeline activate-pipeline --pipeline-id {pipelineid}
Accepts command but will not execute on previously run pipeline
Example 2: aws datapipeline activate-pipeline --pipeline-id {pipelineid} --end-timestamp, 2015-07-08T00:00:00Z
Error: Unknown options: --end-timestamp, 2015-07-08T00:00:00Z
Example 3: aws datapipeline activate-pipeline --pipeline-id {pipelineid} --start-timestamp, 2015-07-08T00:00:00Z
A client error (InvalidRequestException) occured when calling the ActivatePipeline operation: startTimestamp shoudl not be later than any Schedule EndDateTime in the pipeline)
摘录摘自AWS文档:
要激活已完成的管道,请修改管道的结束日期 然后激活它。
答案 0 :(得分:1)
aws datapipeline activate-pipeline --pipeline-id {pipelineid} --start-timestamp 2015-10-15T14:15:18Z
{pipelineid}
是您的 df-xxxxx 。2015-10-15T14:15:18Z
是第一次开始运行管道的时间。 (只是一个例子)我们以这种方式使用prod并且工作完美,我们可以运行任何已完成的数据管道。
答案 1 :(得分:0)
您的管道定义应该在计划中定义endTime。您需要编辑定义以将其更改为在startDateTime之后。
- 结束时间戳不是有效参数