将 CSV 从 S3 加载到 AWS RDS Aurora MySQL 无服务器

Load CSV from S3 into AWS RDS Aurora MySQL Serverless

环顾四周后,我找到了一些关于将 CSV 从 S3 读取到 AWS Aurora MySQL 数据库 table 的文档,但这似乎不适用于 SERVERLESS 实例。有人知道怎么做吗?

这是处理非无服务器实例的大致方式:

with conn.cursor() as cur:
            query = """
                    LOAD DATA FROM S3 'filepath' 
                    INTO TABLE table 
                    FIELDS TERMINATED BY ','
                    LINES TERMINATED BY '\n'
                    """
            cur.execute(query)
            conn.commit()

在无服务器上下文中,这会产生错误:

访问被拒绝;您需要(至少其中之一)此操作的 LOAD FROM S3 权限

此错误的所有解决方案都是针对非无服务器实例的,因此无法在我的用例中复制。

LOAD FROM S3 在 Aurora Serverless 中不受支持。您现在需要通过 SQL 层传输数据。如果这是一次性导入,则创建一个 Aurora 预配置集群,从 S3 加载数据并将备份恢复到无服务器集群中。

https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Integrating.LoadFromS3.html

https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.restorefromsnapshot.html