我们正在设计我们的工作流程,用于将数据微量加载到redshift中。基本上我们通过API获得一系列请求。 API将队列中的那些泵送到稍后处理的队列中,每个项目都是ETLd,最后保存到S3中的准备加载文件中。所以步骤是:
我的问题围绕着这个流程的协调。我们在什么时候将复制命令从S3激活到Redshift?我的意思是这是一个持续的数据流,每个数据批处理都是一分钟。是否有任何AWS工具可以为我们做这件事,或者我们应该自己写这个。
由于
答案 0 :(得分:0)
AWS Lambda是针对此用例而制作的。
或者,如果您的队列是Kafka队列,您可能会发现secor(https://github.com/pinterest/secor)很有用。它将队列数据转储到s3,然后可以将其复制到Redshirt。
Spotify的Luigi或AWS Data Pipeline都是编制复制命令的好选择,如果你选择了secor路线。
答案 1 :(得分:0)
过去,我曾多次写过类似的逻辑,这不是一件容易的事。那里有很多复杂性。您可以将这些文章用作architecture的参考。
现在,您可能希望查看Amazon Kinesis Firehose,而不是实现自己。它将处理S3逻辑并为您写入Redshift。