首页 > 解决方案 > AWS CLI S3 桶到桶复制?

问题描述

在执行aws s3 cp --recursive s3://src-bucket s3://dest-bucket命令时,它会在本地下载文件并将它们上传到目标存储桶吗?或者(希望)整个事务会在 AWS 上发生,而文件不会碰到您的实例化机器?

谢谢

标签: amazon-web-servicesamazon-s3

解决方案


复制发生在 AWS 内。awscli我在 Ubuntu EC2 实例上使用以下方式验证了这一点:

  1. 上传 4GB 文件到 bucket1:发送峰值 140 mbps,实时 45s,用户时间 32s
  2. 同步bucket1到bucket2:峰值60kbps发送,实时22s,用户时间2s

注意:“实时”时间是挂钟时间,“用户”时间是用户模式下的 CPU 时间。

因此,使用的峰值带宽(140mbps 与 60kbps)和 CPU 使用率(32s 与 2s)存在显着差异。在第 1 种情况下,我们实际上将 4 GB 的文件上传到 S3,但在第 2 种情况下,我们将 4 GB 的文件从一个 S3 存储桶复制到另一个存储桶,而不会触及我们的本地机器。情况 #2 中使用的少量带宽与 awscli 显示同步进度有关。

我在处理对象 ( ) 时看到了与在 S3 存储桶之间aws s3 cp同步对象 ( ) 时基本相同的结果。aws s3 sync


推荐阅读