如何使用 python 将数据加载到 redshift table 中?

How to load data into redshift table using python?

您好,我有一个文件,其中的列由“|”分隔和行之间用','分隔。我想使用复制命令加载到 table。你能建议我怎么做吗?

Amazon Redshift COPY Command 有一个 DELIMITER 参数“指定用于分隔输入文件中的字段的单个 ASCII 字符,例如竖线字符 (|)、逗号( , ) 或制表符 ( \t )。"

但是,所有行 必须 以换行符 (CR) 结尾。 不可能指定行以逗号结尾。

您需要pre-process此文件将其转换为与 Amazon Redshift COPY 命令兼容的格式。

或者,由于您提到了 Python,您可以编写一个 Python 程序来读取行,然后使用 INSERT 语句将数据发送到 Redshift。但是,这比使用 COPY 命令效率低得多,并且还需要您通过 SQL 客户端(例如 psycopg2)或 Amazon Redshift Data API 建立与 Redshift 的连接。