Cost of moving objects between Buckets in S3 with the API

0

I have an application that uploads files in the background, similar to Gmail when you are composing an email.

My plan is to have a temporary bucket that will receive these temporary files, and after the user finishes the task, send these files to the bucket that will actually hold these files. And apply a policy on the temporary bucket that deletes objects left after 30 minutes.

My question is is there a cost to copy files from one bucket to another bucket? The buckets are all under the same AWS account.

I ask this question because I saw that there is a cost for file replication in S3 "S3 Cross-Region Replication, Same-Region Replication and Replication Time Control", but I don't know if this applies to this operation.

https://aws.amazon.com/pt/s3/pricing/

已提问 9 个月前2890 查看次数
1 回答
3
已接受的回答

For Cross-Region Replication (CRR) and Same-Region Replication (SRR), you pay the S3 charges for storage in the selected destination S3 storage classes, for the primary copy, for replication PUT requests, and for applicable infrequent access storage retrieval charges. For CRR, you also pay for inter-region Data Transfer OUT from S3 to each destination region.

Replication Time Control(RTC) comes with additional cost($0.015/GB) with an assurance of data replication within that time. There is no charge for transferring data between S3 buckets within same AWS region but data transfer would be charged for cross region.

So, to conclude, within the same region:

  • You won't pay for data transfer cost

  • You'd pay for storage, API calls made to replicate

  • RTC cost if you enable that while setting up replication.

Reference:

AWS S3 Pricing

Hope this helps.

Comment here if you have additional questions, happy to help.

Abhishek

profile pictureAWS
专家
已回答 9 个月前
profile pictureAWS
专家
iBehr
已审核 9 个月前
profile picture
专家
已审核 9 个月前
  • @secondabhi_aws I was looking at the PUT, COPY, POST, LIST (1,000 request) price list and saw that there is a cost for COPY. Does this COPY operation refer to the act of copying objects between buckets?

  • Yes, COPY operation is also an API call, for S3 replication, there would be PUT API call. This pricing is talking about cost for API(PUT, COPY, POST, LIST). If you copy objects using s3api(COPY/PUT) or use s3 replication(PUT), in either of the case API charges would be there. Hope this helps.

  • Do you have any additional questions?

  • Right, in this case if I choose to just use the copyObject from the AWS SDK (PHP), I'll just pay for the PUT request (every 1000), correct? Or will there be some other cost?

    All this operation I will always do manually, object by object.

    $this->client->copyObject([ 'Bucket' => S3_NEW_BUCKET, 'CopySource' => S3_OLD_BUCKET.'/'.$source, 'Key' => $destination, ]);

  • Yes, that's correct. API cost + Storage cost(obviously) + Data Transfer Cost(only if Cross region copy)

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

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

回答问题的准则

相关内容