从 S3 到 RDS 的数据迁移

Data migration from S3 to RDS

我正在处理一个需求,我正在将 csv 文件从 prem 服务器分段上传到 S3 存储桶。

为了使用 AWS Lambda 实现此目的,我创建了一个预签名 url 并使用此 url 我正在上传 csv 文件。现在,一旦我在 AWS S3 中拥有该文件,我希望将其移动到 AWS RDS Oracle DB。最初我打算为此使用 AWS Lambda。

因此,一旦我在 S3 中拥有该文件,它就会触发 lambda(s3 事件),lambda 会将此文件推送到 RDS。但问题在于文件大小(600 MB)。

我正在寻找其他方式,只要有文件上传到 S3,它就会触发任何 AWS 服务,并且该服务会将此 csv 文件推送到 RDS。我已经通过 AWS DMS/Data Pipeline,但无法找到任何方法来自动执行此迁移

我需要在每次 s3 上传时自动执行此迁移,这也很划算。

设置 S3 集成并构建 SPROCS 以帮助自动加载。找到详细信息 here

更新:

看来您甚至不需要创建 SPROC。您可以按照概述使用 RDS 过程 here. You would then just create an event-driven lambda function that is triggered on a given S3 event--e.g. on object PUT(), POST(), COPY, etc..--which passes the S3 metadata requisite to access the event object. Here 是一个简单的 Python 示例,说明 Lambda 和配置可能是什么样子。然后,您将使用在触发事件上传递的元数据——如 Python 示例中所述——动态创建过程调用,然后执行该过程。您还可以添加满足您要求的后续工作流逻辑——即TASK_ID 获取和操作处理、监控等...--到同一个 lambda 函数或通过添加额外的 lambda 来分离这些关注点。希望这对您有所帮助!