对于Amazon RedShift,通常使用"copy"命令从S3加载数据.我想知道命令是否是原子的.例如,在某些特殊情况下,是否只有部分数据文件被加载到RedShift表中?
带有默认选项的COPY命令是原子的.如果文件包含可能导致加载失败的无效行,则将回滚COPY事务并且不会导入任何数据.
如果要跳过无效行而不是停止事务,可以使用MAXERROR选项忽略无效行的COPY命令.以下示例忽略最多100个无效行.
COPY table_name from 's3://[bucket-name]/[file-path or prefix]' CREDENTIALS 'aws_access_key_id=xxxx;aws_secret_access_key=xxxx' DELIMITER '\t' MAXERROR 100;
Run Code Online (Sandbox Code Playgroud)
如果无效行数超过MAXERROR错误计数(100),则事务将被回滚.
有关COPY命令的详细信息,请参阅以下链接. http://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html
| 归档时间: |
|
| 查看次数: |
3358 次 |
| 最近记录: |