AWS S3复制操作出现错误时是否会生成不完整的目标文件?
AWS S3复制操作错误时的目标文件状态
小于5GB对象的单次复制操作
你的理解是正确的,对于大小低于5GB、使用单次CopyObject接口执行的复制操作,不会出现不完整的目标文件对外可见的情况。
使用该API,您可以通过单次原子操作复制大小不超过5 GB的对象
这里的原子操作特性决定了:
- 复制操作只有成功、失败两种最终状态,没有中间写入的过渡状态
- 操作完全成功之前,目标存储路径不会生成任何可见的文件
- 如果复制中途出现错误,S3会自动清理已经写入的部分数据,不会残留无效文件占用存储配额,也不会被任何访问请求命中
大于5GB对象的分片复制补充说明
如果复制的对象超过5GB,需要使用分片复制的方式完成操作,这时候原子性仅在单个分片维度生效:
- 单个分片写入成功才会被保留,失败则自动清理
- 如果整个复制任务中途出错或手动终止,已经上传完成的分片会暂时保留,需要主动调用终止分片上传的接口清理,否则会持续占用存储
- 未完成的分片复制任务不会生成完整的目标对象对外展示
内容的提问来源于stack exchange,提问作者Cethy
相关产品推荐
相关产品推荐

