提问者:小点点

AWSS3以编程方式RDSServerless Aurora(PostgreSQL)


我正在寻找一种解决方案,可以每天摄取6到8个表来RDS。这些表具有特定的键关系,因此应该将其合并到数据库中。

目前,我很难找到一个最佳的解决方案来以编程方式加载RDS中6-8个表的数据。目前哪种服务最适合这样做?

数据对于Lambda的内存占用来说有点太大了。

不清楚这将如何与无服务器Aurora一起工作,这也需要预定的ec2实例(与无服务器模式中断)。

将S3数据加载到AmazonRDSMySQL表-AWS数据管道

胶水似乎更适合红移。

所以我有点不知道最好的解决方案设计是什么。如果有帮助,将不胜感激。


共2个答案

匿名用户

您应该尝试AWS日期管道。简而言之,以下是步骤:

  • 创建角色并附加S3存储桶策略
  • 设置集群参数组
  • 编辑参数组以使用Role
  • 重启极光实例

这个,将数据加载到Amazon Aurora MySQL,适用于MySQL。

使用PostgreSQL加载数据应该非常相似。

匿名用户

你当然可以使用AWS胶水。胶水确实对红移有一些偏见,但是它提供了Pyspark和Python作业,几乎可以用来做任何事情。把它想象成一个没有15分钟时间限制的Lambda,用python写下你想要的任何数据移动逻辑。

由于aurora serverless托管在VPC中,一旦将粘合作业托管在同一VPC中,您可能需要创建一些VPC网关endpoint才能访问某些内容,但这只是一次性的。

我实际上有一个非常相似的用法,并使用Glue以编程方式将数据从S3加载到Aurora Serverless(MySQL):

  • 从Glue控制台创建了与Aurora无服务的JDBC连接
  • 编写了一个Python粘合作业,从S3读取数据并使用pymysql将其加载到AuroraDB中。(这使用了步骤1中建立的连接,这意味着该作业将托管在与数据库相同的VPC中。因此,要访问S3,必须创建一个网关endpoint)
  • 通过添加开始触发器和失败扩展来创建此作业的工作流
  • 写了一个S3-

你可以参考这篇文章了解更多细节。