如何加载大量来自S3小CSV文件红移?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何加载大量来自S3小CSV文件红移?相关的知识,希望对你有一定的参考价值。
我有大量的CSV文件(〜12K),这是小(〜250记录每个)。我想加载它们红移大小3的集群在同一地区,但它采取了很长一段时间。
我在SQL工作台使用的查询/ J是:
copy gsod from 's3://[path to folder]' access_key_id '******' secret_access_key '******' delimiter ',' BLANKSASNULL emptyasnull IGNOREHEADER 1 maxerror as 100000;
查询在几秒钟内工作,如果我用单个文件。但是,什么是尽可能快地加载所有的人最好的方法是什么?
我试图从群集的同一区域加载从S3文件。
copy gsod from 's3://[path to folder]' access_key_id '******' secret_access_key '******' delimiter ',' BLANKSASNULL emptyasnull IGNOREHEADER 1 maxerror as 100000;
答案
去manifest
文件选项。它会做真快。
https://docs.aws.amazon.com/redshift/latest/dg/loading-data-files-using-manifest.html
{
"entries": [
{"url":"s3://mybucket-alpha/2013-10-04-custdata", "mandatory":true},
{"url":"s3://mybucket-alpha/2013-10-05-custdata", "mandatory":true},
{"url":"s3://mybucket-beta/2013-10-04-custdata", "mandatory":true},
{"url":"s3://mybucket-beta/2013-10-05-custdata", "mandatory":true}
]}
这将做copy
并联,而不是由一个处理文件中的一个,它会加载一次尝试的所有文件。
copy customer from 's3://mybucket/your-manifest-file' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' manifest;
希望这有助于。
以上是关于如何加载大量来自S3小CSV文件红移?的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法通过数据管道以预定义的顺序将文件从 S3 复制到红移