我可以将管道分隔的文本文件直接加载到 Redshift

Posted

技术标签:

【中文标题】我可以将管道分隔的文本文件直接加载到 Redshift【英文标题】:Can I Load Pipe separated text file directly to Redshift 【发布时间】:2018-08-16 13:46:02 【问题描述】:

我的本​​地有一个巨大的 ('|') 分隔文本文件 (1.5 GB),我需要将其加载到 redshift。 我目前没有配置 s3。有没有办法将此文件直接加载到 Redshift。

【问题讨论】:

【参考方案1】:

我同意约翰的回答,但我认为您是在明确表示您没有 S3。

我目前没有配置 s3。

你能不使用 S3 直接加载到Redshift 吗? 这里我假设,my local 你指的是本地的desktop/laptop 等。

答案是,你不能。但是,如果您可以将文件加载到任何AWS 计算实例并启用ima 滚动以通过这种方式执行ssh,您可以做到这一点,Redshift 您可以将SSH 设置为AWS instance,那么您正如约翰回答的那样,应该能够加载任何大小的CSV 和任何delimiter,包括|

我希望这会有所帮助。

【讨论】:

我同意这一点。很确定。只需要确认。谢谢【参考方案2】:

是的。

COPY command 有一个DILIMITER parameter,可以指定管道分隔。

【讨论】:

以上是关于我可以将管道分隔的文本文件直接加载到 Redshift的主要内容,如果未能解决你的问题,请参考以下文章

当行的管道数多于列数时,SSIS管道分隔文件不会失败?

使用管道连字符管道将数据加载到 Pig |-|分隔符

平面文件到 SSIS 中的 Netezza 加载

基于SQL Server中的分隔符将文本拆分为多列

如何使用管道分隔符导出到 .csv

使用python将整个文本文件加载到数据库中