如何将数据从 S3 加载到 PostgreSQL RDS

Raj*_*Raj 5 postgresql amazon-s3 amazon-rds

我需要将数据从 S3 加载到 Postgres RDS(大约 50-100 GB) 我没有使用 AWS Data Pipeline 的选项,我正在寻找类似于使用 COPY 命令将 S3 中的数据加载到 Amazon 的方法红移。

我将不胜感激有关如何实现这一目标的任何建议。

Vao*_*sun 0

http://docs.aws.amazon.com/redshift/latest/dg/t_loading-tables-from-s3.html

使用 COPY 命令从 Amazon S3 上的数据文件并行加载表。您可以使用 Amazon S3 对象前缀或清单文件指定要加载的文件。

使用前缀指定要加载的文件的语法如下:

copy <table_name> from 's3://<bucket_name>/<object_prefix>'
authorization;
Run Code Online (Sandbox Code Playgroud)

更新

另一种选择是安装 s3 并使用COPY命令的直接路径到 csv。我不确定它是否能有效容纳 100GB,但值得尝试。以下是一些软件选项列表。

另一种选择是使用此处描述的内容将s3 文件部分地“解析”为文件并COPY从命名管道中进行解析,如下所述

最明显的选择是将文件下载到本地存储并使用,COPY我根本没有介绍

另外值得一提的是s3_fdw(状态不稳定)。自述文件非常简洁,但我假设您可以创建一个通向 s3 文件的外部表。这本身意味着您可以将数据加载到其他关系......

  • 感谢您的反馈。但是,我需要将数据从 S3 加载到 Postgres RDS,而不是 Redshift。因此,“复制”命令对我不起作用。 (2认同)