Redshift 复制命令递归扫描

drt*_*rtf 3 amazon-s3 amazon-web-services amazon-redshift

是否可以复制根目录/bucket下的所有文件

示例文件夹结构:

/2016/01/file.json
/2016/02/file.json
/2016/03/file.json
...
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用以下命令:

copy mytable
FROM 's3://mybucket/2016/*'
CREDENTIALS 'aws_access_key_id=<>;aws_secret_access_key=<>'
json 's3://mybucket/jsonpaths.json'
Run Code Online (Sandbox Code Playgroud)

Joh*_*ein 5

为加载指定一个前缀,所有具有该前缀的 Amazon S3 对象都将(并行)加载到 Amazon Redshift 中。

例子:

copy mytable
FROM 's3://mybucket/2016/'
Run Code Online (Sandbox Code Playgroud)

将加载存储在以下位置的所有对象: mybucket/2016/*

copy mytable
FROM 's3://mybucket/2016/02'
Run Code Online (Sandbox Code Playgroud)

将加载存储在以下位置的所有对象: mybucket/2016/02/*

copy mytable
FROM 's3://mybucket/2016/1'
Run Code Online (Sandbox Code Playgroud)

将加载存储在以下位置的所有对象:(mybucket/2016/1*例如 10、11、12)

基本上,它只是确保对象以给定的字符串(包括完整路径)开头