拆分加载数据
当您使用 COPY 命令从多个文件中加载压缩数据时,数据会并行加载。这将在集群节点中划分工作负载。如果从一个大型压缩文件加载所有数据,Amazon Redshift 必须执行序列化加载,这样速度很慢。
相比之下,当您从大型未压缩文件中加载分隔的数据时,Amazon Redshift 会使用多个切片。这些切片会自动并行工作。实现快速加载性能。具体来说,当 Amazon Redshift 加载未压缩的、分隔的数据时,数据将被拆分为多个范围并由在每个节点中的切片进行处理。
如果您打算从大型压缩文件中加载数据,我们建议您将数据拆分为大小相等的小文件,且这些文件压缩后大小介于 1MB 到 1GB 之间。为了获得最佳并行度,在压缩后,理想的文件大小在 1MB 到 125MB 之间。将文件数设为您集群中切片数的倍数。有关如何将数据拆分为多个文件的更多信息和如何使用 COPY 加载数据的示例,请参阅从 Amazon S3 加载数据。