postgresql - 如何将结果集作为 CSV 从 Aurora Postgres DB 导出到 AWS-S3?
问题描述
作为我Flask
和Celery
应用程序的一部分,我正在尝试将数据从AWS-Aurora Postgres DB移动到Redshift。
我将在Kubernetes中运行这个应用程序。
我的方法是查询 aurora Postgres数据库并将结果集写入一个 CSV 文件,该文件保存在附件volume
中,然后将其上传到S3
然后将文件导入到Redshift
.
但是,我遇到了另一篇文章,它让我们可以直接将结果集作为CSV
文件上传到,S3
而不是使用中间卷。
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Integrating.SaveIntoS3.html
他们提到了OUTFILE
命令的用法。但它提到了MySQL
。但他们没有提到任何关于Postgres DB
.
甚至可以使用命令Aurora Postgres DB
并导出到S3
.
解决方案
如果可以使用 psql 连接到数据库,则可以使用 \copy 命令将任何 select 语句的输出导出到 csv:
https://codeburst.io/two-handy-examples-of-the-psql-copy-meta-command-2feaefd5dd90
推荐阅读
- python - pandas 将跨多列的值计数汇总到摘要数据框中
- html - 对齐 Angular ICON 和 HTML 文本
- sticky - 不使用高度参数的制表符粘性标题
- oracle - 在 Oracle SQL 中创建表时如何定义时间数据类型
- php - PHP gd库displsys黑屏带白框而不是图像
- python-3.x - 在 Python 单元测试中正确使用 assertRaises
- python - 对具有相同 y 值的轮廓进行分组
- javascript - 来自int数组的V8 ArrayBuffer?
- python - 需要使用数据框列中存在的列表值创建列表
- python - 对于带有scrapy shell 的某些元素,XPath 不返回任何结果