gpt4 book ai didi

postgresql - 将数据从 AWS S3 加载到 Aurora Postgres

转载 作者:行者123 更新时间:2023-12-03 20:29:34 30 4
gpt4 key购买 nike

我正在尝试从 AWS S3 加载数据至 Aurora Postgres .我已关注此链接 https://aws.amazon.com/blogs/database/stream-data-into-an-aurora-postgresql-database-using-aws-dms-and-amazon-kinesis-data-firehose/但没有任何成功。有没有人加载它或知道一些链接,我可以在其中找到实现它的步骤。

最佳答案

虽然这是一个旧帖子,但我希望它会帮助那些正在寻找的人。大部分来自official AWS doc .我正在添加一些注释以帮助完成。

这是演习:

连接到 RDS Postgres 实例。

在 psql 提示符下运行此命令以创建从 s3 导入数据所需的扩展:

CREATE EXTENSION aws_s3 CASCADE;

创建数据库:
CREATE DATABASE students;

创建表(假设如下三列):
CREATE TABLE t1 (col1 varchar(80), col2 varchar(80), col3 varchar(80));

请注意,您在 S3 存储桶中的 csv 文件应该具有相同数量的列,除非您想跳过一些(这超出了本文的范围)。

要使用控制台为 PostgreSQL 数据库集群添加 IAM 角色:
  • 登录 AWS 管理控制台并通过 https://console.aws.amazon.com/rds/ 打开 Amazon RDS 控制台.
  • 选择 PostgreSQL 数据库集群名称以显示其详细信息。
  • 在连接和安全选项卡上的管理 IAM 角色部分,在将 IAM 角色添加到此实例下选择要添加的角色。
  • 在功能下,选择 s3Import。
  • 选择添加角色。

    选择 aws_commons.create_s3_uri('your_bucket_name', 'full/path/to/file.csv','aws_region') AS s3_uri\gset
    选择 aws_s3.table_import_from_s3('t1', '', '(format csv)', :'s3_uri');

  • 不要在 full/path/to/file.csv 前面添加存储桶名称。使用正确的 aws_region(如 us-east-1)并且不要在此处添加任何可用区。

    你应该得到类似的东西:
    1000 rows imported into relation "t1" from file ...

    使用示例查询进行测试:
    SELECT * FROM t1 LIMIT 5;

    哈。

    关于postgresql - 将数据从 AWS S3 加载到 Aurora Postgres,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52367631/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com