LoginSignup
0
0

Amazon S3 Transfer Acceleration

Last updated at Posted at 2024-02-22

Amazon S3 Transfer Accelerationとは

Amazon S3 Transfer Accelerationは、クライアントとS3バケット間でファイル転送を高速かつ簡単で安全にできる

ユースケース
・1つのバケットに世界中からファイルのアップロードが行われる場合
大陸間で定期的にギガバイトからテラバイト単位でデータを転送する場合
インターネット経由のため、帯域幅等は考慮できないように見える

要件
・バケット名に「.」をが含まれていないこと
・Transfer Accelerationは仮想ホスト形式のリクエストでのみサポートされます

https://bucket-name.s3.region-code.amazonaws.com/key-name

設定方法

Amazon S3>バケット>バケット名>プロパティ
image.png

〇有効にする
image.png

※有効後は、無効にもできます。

料金

Amazon CloudFront のグローバルに分散したエッジロケーションを利用する
また、S3の転送量にプラスして料金が上乗せされるらしいです
※ここも少し実機動かして確認したいです
S3にデータ転送する場合は、無料ですがダウンロードする際は課金されます
よって、ダウンロード料金+Transfer Accelerationが発生するに見えますね
米国、欧州、日本の AWS エッジロケーションによる高速化 0.04 USD/GB
https://aws.amazon.com/jp/s3/pricing/

実際に動かしてみる

cloudshell:accelerate
[cloudshell-user@ip-10-130-48-216 ~]$ ls -al test20240222
rw-r--r--. 1 cloudshell-user cloudshell-user 104857600 Feb 22 16:33 test20240222
[cloudshell-user@ip-10-130-48-216 ~]$ time aws s3 cp ./test20240222 s3://bucket名.s3-accelerate.amazonaws.com/ \
> --endpoint-url https://bucket名.s3-accelerate.amazonaws.com
upload: ./test20240222 to s3://bucket名.s3-accelerate.amazonaws.com/test20240222
real    0m3.297s #コマンドの開始から終了までの経過時間
user    0m1.610s #プログラムがCPUを使用した時間
sys     0m0.472s #システムがCPUを使用した時間
cloudshell:S3
[cloudshell-user@ip-10-130-48-216 ~]$ time aws s3 cp ./test20240222 s3://バケット名             upload: ./test20240222 to s3://bucket名/test20240222
real    0m3.080s #コマンドの開始から終了までの経過時間
user    0m1.525s #プログラムがCPUを使用した時間
sys     0m0.544s #システムがCPUを使用した時間

結果

何度か100MBのファイルをS3への転送をデフォルトで転送するパターンとTransfer Accelerationを利用しファイルを転送するパターンで検証した結果、CloudFrontを余計に経由するからか、Transfer Accelerationを利用し、ファイル転送した方が遅くなった

CloudFrontの仕様を理解していない
インターネット経由だから正確な値がでない
リージョン等の考慮していない

東京から東京リージョンS3バケットへファイル転送する場合には、遅い結果になるのかもしれない

Transfer Accelerationを有効化した際に、エンドポイントが表示されます
image.png

あとでゆっくり読みたい
https://developers.play.jp/entry/2023/03/02/194851

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0