我在亚马逊s3中有大约500GB的压缩数据。我想将此数据加载到Amazon Redshift。为此,我在AWS Athena中创建了一个内部表,我正在尝试在Amazon Redshift的内部表中加载数据。
将这些大数据加载到Amazon Redshift需要一个多小时。问题是当我触发一个查询加载数据时,它会在1小时后中止。我尝试了2-3次但是1小时后就中止了。我正在使用Aginity Tool来触发查询。此外,在Aginity工具中,它显示当前正在运行查询并且加载程序正在旋转。
更多详情: Redshift集群有12个节点,每个节点有2TB空间,我使用1.7 TB空间。 S3文件的大小不一样。其中一个是250GB。其中一些是MB。
我正在使用命令
将表table_name创建为select * from athena_schema.table_name
1小时后它会完全停止。
注意:我已将Aginity中的当前查询超时设置为90000秒。
答案 0 :(得分:1)
我知道这是一个旧线程,但是对于由于相同问题而来到这里的任何人,我已经意识到,至少就我而言,问题出在Aginity客户端。因此,它与Redshift或其工作负载管理器无关,而仅与称为Aginity的第三方客户端有关。总之,请使用其他客户端(例如SQL Workbench)并从那里运行COPY命令。
希望这会有所帮助! 卡洛斯(Carlos C。)
有关我的环境的更多信息:
Redshift:
Cluster TypeThe cluster's type: Multi Node
Cluster: ds2.xlarge
NodesThe cluster's type: 4
Cluster Version: 1.0.4852
客户端环境:
Aginity Workbench for Redshift
Version 4.9.1.2686 (build 05/11/17)
Microsoft Windows NT 6.2.9200.0 (64-bit)
网络:
Connected to OpenVPN, via SSH Port tunneling.
The connection is not being dropped. This issue is only affecting the COPY command. The connection remains active.
命令:
copy tbl_XXXXXXX
from 's3://***************'
iam_role 'arn:aws:iam::***************:role/***************';
S3结构:
120 files of 6.2 GB each. 20 files of 874MB.
输出:
ERROR: 57014: Query (22381) cancelled on user's request
统计数据:
Start: ***************
End: ***************
Duration: 3,600.2420863
答案 1 :(得分:0)
我不确定以下答案是否会在1小时后解决您的确切超时问题。 但是,根据我的经验,在Redshift的情况下通过Copy命令加载数据是最好和最快的方法。因此,我认为在您的情况下根本不会发生超时问题。
RedShift中的复制命令可以从S3或SSH加载数据。
e.g。 简单复制
copy sales from 'emr://j-SAMPLE2B500FC/myoutput/part-*' iam_role
'arn:aws:iam::0123456789012:role/MyRedshiftRole'
delimiter '\t' lzop;
e.g。使用Menifest
copy customer
from 's3://mybucket/cust.manifest'
iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole'
manifest;
PS:即使您使用Menifest并将数据划分为多个文件,它也会更快,因为RedShift并行加载数据。