AWSでS3の利用料を節約するためにやって置いた方がよいこと

AWS

AWSでS3の利用料を節約するためにやって置いた方がよいこと

AWSでファイルや画像などを配置する場所として利用する場所はS3ですが、今回はS3を使用して利用料を節約できる方法をご紹介します。

サービスへの影響を気にすることなく簡単に設定できるの設定しておくことをオススメします。

マルチパートアップロードとは

AWSでS3の利用料を節約するためにやって置いた方がよいこと

簡単に言うと、大きなファイルを送信するときに細かく分割してアップロードすることです。

マルチパートアップロードの概要

細かく分割することで並列してファイルを高速にアップロードしたり、中断した場合は、途中から再開したりといったことができます。

S3へマルチパートアップロードをする方法

AWSでS3の利用料を節約するためにやって置いた方がよいこと

AWS CLIを使ってaws s3 cpコマンドでファイルをアップロードする場合、ファイルサイズに応じて、マルチパートアップロードが自動的に使用されるので、意識しないうちにマルチパートアップロードが使用されています。

AWS CLI を使用して、Amazon S3 にファイルをマルチパートアップロードする方法を教えてください。

aws s3 コマンドはファイルサイズに応じてマルチパートアップロードおよびマルチパートダウンロードを自動的に実行するため、マルチパートアップロードおよびマルチパートダウンロードには、 aws s3 コマンド ( aws s3 cp など) を使用することをお勧めします。

デフォルトでは8MB以上のファイルのアップロードにはマルチパートアップロードが使われ10個同時に送信されます。この設定はカスタマイズ可能ですが普段はそんなに意識しなくても大丈夫だと思います。

AWS CLI S3 Configuration

  • max_concurrent_requests    最大同時リクエスト数。デフォルト10
  • multipart_threshold             ここで設定したファイルサイズを超えたものはマルチパートアップロードになる。デフォルト8MB
  • multipart_chunksize             マルチパートアップロードで分割される1ファイルあたりのサイズ。デフォルト8MB

その他、RubyやJavaなどのSDKを使った場合でも高いレベルAPIではマルチパートアップロードが自動的に使われます。

Multipart Upload API を使用したオブジェクトのアップ

マルチパートアップロードのデメリット

AWSでS3の利用料を節約するためにやって置いた方がよいこと

ユーザーが知らないうちにマルチパートアップロードが使用されていることが多いのですが、まだ完了していない不完全なマルチパートアップロードをデフォルトではS3は永久に削除しません。そのため、長年S3を使っていると、不完全なマルチパートアップロードが溜まっていき、それに対してもS3のストレージ使用料がかかってしまいます。そのため、不完全なマルチパートアップロードには有効期限を設けて、古いものは自動的に削除した方が良いです。

バケットライフサイクルポリシーを使用した完了しないマルチパートアップロードの中止

ベストプラクティスとして、ストレージコストを最小限に抑えるため、ライフサイクルルールを設定することをお勧めします

古いマルチパートアップロードの自動削除の設定手順

AWSでS3の利用料を節約するためにやって置いた方がよいこと

AWSコンソールでS3バケットを選択して、Managementタブを選びAdd Lifecycle ruleをクリックしますます。

AWSでS3の利用料を節約するためにやって置いた方がよいこと

適当にわかりやすいルール名を入れます

AWSでS3の利用料を節約するためにやって置いた方がよいこと

Clean up Incomplete multipart uploadsにチェックします。日数は7日のままで良いと思います。

AWSでS3の利用料を節約するためにやって置いた方がよいこと

Saveボタンを押して完了です。

簡単に設定できて、S3の使用料の節約になるのでぜひやってみてください。

関連記事

  1. Amazon Linux2でOSS版tripwireを使って改ざん検知する方法

    AWS

    Amazon Linux2でOSS版tripwireを使って改ざん検知する方法

    改ざん検知はPCI DSSなどセキュリティを強化する際には、必ず必要に…

  2. AWSでCloudFrontを導入する際に注意する点

    AWS

    AWSでCloudFrontを導入する際に注意する点

    前回の記事でAWSでシステムを構築する際にはCloudFrontを利用…

  3. AWS

    CloudFormationを効果的に使うための6つのルール

    あなたはAWSでEC2を作成する時にAWSコンソールから作っていますか…

  4. PCI DSS準拠するためにAWSのセキュリティグループを使うためのポイント

    AWS

    PCI DSS準拠するためにAWSのセキュリティグループを使うためのポイント

    AWSでセキュリティグループはEC2やRDS(リレーショナルデータベー…

  5. AWS

    AWSでコンプライアンスのための監査ログを取得する方法

    PCI DSSやIT内部統制などのコンプライアンスの観点でAWS上で監…

  6. AWS

    AWSを利用してPCI DSS準拠のシステムを構築する3つのメリット

    今回はAWSを利用してPCI DSS準拠のシステムを構築す…

最近の記事

  1. AWS

    AWSでEC2インスタンスを安全に使うための3つの注意点
  2. AWSでCloudFrontを導入する際に注意する点

    AWS

    AWSでCloudFrontを導入する際に注意する点
  3. AWS

    CloudFormationを効果的に使うための6つのルール
  4. AWSで安全なネットワーク設計を行うポイント

    AWS

    AWSで安全なネットワーク設計を行うポイント
  5. AWS

    AWSでS3を安全に使うための2つのポイント
PAGE TOP