我想使用S3P从大约7个桶中复制100TB

问题描述 投票:0回答:2

我的 S3 存储桶中的一些对象是使用另一个 KMS 密钥加密的。

在这种情况下我无权访问这些文件,我想排除这些文件。

我尝试过使用 S3 同步,它有参数 --exclude 开关,它将排除这些文件,因此 S3 同步可以工作,但数据大小约为 100 TB,需要在 2 天内完成

我想知道 S3P 中是否也存在该选项。

https://www.genui.com/open-source/s3p-massively-parallel-s3-copying

我尝试使用 S3 同步,它有效。

aws s3 同步 s3://bucket s3://mybucket --排除“文件夹/*”。

amazon-web-services amazon-s3 cp npx
2个回答
1
投票

另一种方法是使用 Amazon S3 批量操作 传输文件。

它需要一个输入清单文件,列出要复制的对象。如果对象列表很大,您可以通过 AWS Inventory 生成清单文件,然后删除不想复制的目录/文件。

然后,创建一个 S3 批量操作作业来复制列出的对象。

请参阅:使用 S3 批量操作复制对象 - Amazon Simple Storage Service


0
投票

S3P-作者在这里。 S3P 有多种方法来选择要处理的文件。您可以使用

npx s3p cp --help
查看所有选项。我特别建议:

  1. 运行S3P并过滤掉不需要的键:
    --filter "js:({Key}) => !/^folder\//.test(Key)"
  2. 如果有很多不需要的键,运行 S3P 两次:一次使用
    --stop-at "folder/"
    一次使用 `--start-after "folder/~" 可能会更快(“~”没有什么特别的 - 它只是最后一个)字符范围内支持的字符)
© www.soinside.com 2019 - 2024. All rights reserved.