upload_archive() 在 boto3 中对冰川进行操作

upload_archive() operation in boto3 for glacier

boto3 for glacier 中的upload_archive() 操作是否在上传数据大于100MB 时自动使用分块上传?

我相信 boto2 就是这种情况(请参阅@lenrok258 在 Boto Glacier - Upload file larger than 4 GB using multipart upload 中的回答)

我尝试了不同的方法来查看 boto3 for glacier 中 upload_archive() 操作的源代码,但我无法使用 inspect 或 ipython 找到它。如果有人碰巧知道如何做到这一点并愿意分享,将不胜感激。

与 boto2 不同,boto3 不会自动使用分段上传。

来自 boto 项目成员在 an issue on the boto3 Github 上的评论:

... boto3 does not have the ability to automatically handle multipart uploads to Glacier. That would be a feature request. There are some features that exist in boto2 that have not been implemented in boto3.

您必须使用 initiate_multipart_upload 功能自行实施。

或者,正如该问题的另一位评论者所建议的那样:

The optimal usage pattern for interacting with Glacier is generally to upload to S3 and use S3 lifecycle policies to transition the object to Glacier.