【问题标题】:Resuming from a timed out "aws s3api get-object" request从超时的“aws s3api get-object”请求中恢复
【发布时间】:2017-06-13 00:40:46
【问题描述】:

我正在尝试通过以下命令下载一些 spacenet data (23 GB):

aws s3api get-object --bucket spacenet-dataset --key AOI_2_Vegas/AOI_2_Vegas_Train.tar.gz --request-payer requester AOI_2_Vegas_Train.tar.gz

我的默认区域是 us-east-1,我知道我的密钥是正确的,因为按帐户收费。

我在家中运行此程序 (30 mbps),它在大约 12 GB 后超时。

我在工作中运行此程序 (200 mbps),它在大约 16 GB 后超时。

这是错误:

HTTPSConnectionPool(host='spacenet-dataset.s3.amazonaws.com', port=443):读取超时。

有没有办法恢复已超时的“aws s3api get-object”请求?

【问题讨论】:

  • 我对它的了解还不够多,但it looks like it has a --range option 允许您指定要下载的字节范围。您必须做一些客户端工作来确定您需要哪些字节(并且可能将不同的文件部分连接在一起?),但您也许可以使用它。
  • 这对我有用。每次重新计算新范围并将整数增量附加到文件名时都必须开始下载 3 次。之后就只是cat file.tar.gz.0 file.tar.gz.1 file.tar.gz.2 > file.tar.gz的问题了,最终的tar.gz匹配了md5。
  • 太棒了!如果您愿意,请随时add your own answer 提供详细信息!

标签: amazon-web-services amazon-s3 aws-cli


【解决方案1】:

我可能会尝试使用aws s3 cp 命令。该命令更高级,可以自动处理多部分传输。

此命令还可以使用一些可以添加的选项。见http://docs.aws.amazon.com/cli/latest/topic/s3-config.html

特别是在您的工作中,您可以增加max_concurrent_requestsmultipart_threshold,例如,配置如下

$ aws configure set default.s3.max_concurrent_requests 25
$ aws configure set default.s3.multipart_threshold 128MB
$ aws configure set default.s3.multipart_chunksize 32MB
$ aws configure set default.s3.use_accelerate_endpoint true

并运行复制命令。

【讨论】:

  • 我想过,但“aws s3 cp”抱怨未知选项:(即--bucket、--key 和--request-payer)。
  • 您需要使用aws s3 cp s3://bucket/path/to/file提供文件的完整路径
【解决方案2】:

可以下载对象的指定字节范围。这可以通过使用 range 标志来完成,如下所示。

aws s3api get-object --bucket spacenet-dataset --key AOI_2_Vegas/AOI_2_Vegas_Train.tar.gz --request-payer requester --range bytes=0-99999 file_1.tar.gz

上述命令下载 23 GB 文件的前 100,000 个字节并将其写入file_1.tar.gz

一旦所有file_*.tar.gz 被破坏的字节范围被下载,它们就必须以正确的顺序连接起来。可以使用 *nix cat 命令完成,如下所示。

cat file_1.tar.gz >> AOI_2_Vegas_Train_all.tar.gz
cat file_2.tar.gz >> AOI_2_Vegas_Train_all.tar.gz

查看this out了解更多详情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-13
    • 2021-02-28
    • 1970-01-01
    • 1970-01-01
    • 2019-03-14
    相关资源
    最近更新 更多