使用s3分段上传时,每个部分都会被收取一个 put-request 的费用吗?还是只会收取一次费用用于合并后的最终文件?

0

【以下的问题经过翻译处理】 根据标题所述,我想知道分段上传的成本是否比单个部分上传更昂贵,因为每个单独部分都要收取上载请求费用。

文档中非常清楚地指出存储费用将适用于每个部分,但对于请求费用部分却有些模糊。

同样,S3定价页面特别列出“put”作为可计费的操作,但并未包括“UploadPart” API调用。它根本不提到它,甚至没有表明没有费用。

我在其他所有关于它的问题中都找不到关于成本的讨论,它们都关注于性能、并行上传等方面。

profile picture
专家
已提问 5 个月前24 查看次数
1 回答
0

【以下的回答经过翻译处理】 请注意,每个上传部分都是PUT请求。对于s3分块上传的每个PUT请求都会产生费用。

假设您想要将一个对象分成3个部分上传:

初始化: PUT1 (调用CreateMultipartUpload函数开始过程)
部分1: PUT2
部分2: PUT3
部分3: PUT4
完成: PUT5 (调用CompleteMultipartUpload函数完成过程)

在这种情况下,费用将为5个PUT请求。

MPU上传过程 - https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/mpuoverview.html#mpu-process(请参考“示例分块上传调用”)

下面是来自- https://aws.amazon.com/s3/faqs/的另一个示例:

如果使用分块上传功能上传源对象,则使用相同数量的部分和部分大小进行复制。例如,使用分块上传功能上传的100 GB对象(每个部分128 MB,共800个部分)在复制时将产生与802个请求相关的请求成本(800个上传部分请求+ 1个启动分块上传请求+ 1个完成分块上传请求)。您将产生$ 0.00401的请求费用(802次请求x $ 0.005每1000次请求)和(如果复制在不同的AWS区域之间)$2.00费用($0.020每GB传输x 100GB)进行区域间数据传输。复制后,该100GB将根据目标区域产生存储费用。

有关基于区域的定价,请参阅s3定价页面- https://aws.amazon.com/s3/pricing/

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则