如何使用 Python 从 OS Windows 将 CSV 文件加载到 Amazon Redshift? [关闭]

Posted

技术标签:

【中文标题】如何使用 Python 从 OS Windows 将 CSV 文件加载到 Amazon Redshift? [关闭]【英文标题】:How do I load CSV file into Amazon Redshift from OS Windows using Python? [closed] 【发布时间】:2016-05-28 22:10:30 【问题描述】:

我需要将 CSV 文件从我的桌面 (Windows) 加载到 Redshift 表中。

有人可以演示在 Python 中实现这个过程吗?

我假设脚本将接受 CSV 文件名和连接详细信息。

脚本的执行结果是 CSV 数据附加到 Redshift 表中。

【问题讨论】:

您可以先查看在线文档并尝试一些库docs.python.org/2/library/csv.html 发布一些代码和您遇到的任何问题,以便我们为您提供帮助 【参考方案1】:

首先将文件上传到 S3,因为将数据加载到 Redshift 的最有效方法是从 S3 复制。

您可以使用适用于 S3 的 AWS 开发工具包:https://boto3.readthedocs.io/en/latest/reference/services/s3.html#S3.Object.put

下一步是运行 COPY 命令。这是通过 SQL 连接完成的。这里有几个选项,一些使用标准 JDBC/ODBC 连接到 Redshift/PostgreSQL(例如 pyodbc - https://github.com/mkleehammer/pyodbc),或者用于此类 COPY 的专用库(例如http://initd.org/psycopg/)。此 COPY 命令将指向您在步骤 1 中上传的 S3 对象。

【讨论】:

以上是关于如何使用 Python 从 OS Windows 将 CSV 文件加载到 Amazon Redshift? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在Python中调用Windows的cmd命令?

python 从windows获取环境变量:os.environ

python 从windows获取环境变量:os.environ

如何更改 Windows 文件的文件创建日期?

如何在不脱离控制台的情况下在 Windows 中的 Python 中执行 os.execv()?

45如何使用python删除一个文件?