オブジェクトのストレージクラスを設定 - Amazon Simple Storage Service

オブジェクトのストレージクラスを設定

アップロードするときにオブジェクトのストレージクラスを指定できます。指定しない場合、Amazon S3 はデフォルトの Amazon S3 Standard ストレージクラスを使用します。Amazon S3 に既に保存されているオブジェクトのストレージクラスを、Amazon S3 コンソール、AWS SDK、AWS Command Line Interface (AWS CLI) を使用して他のストレージクラスに変更することもできます。これらのアプローチはすべて、Amazon S3 API オペレーションを使用して Amazon S3 にリクエストを送信します。

バケットに S3 ライフサイクル設定を追加すると、Amazon S3 がオブジェクトのストレージクラスを自動的に変更します。詳細については、「オブジェクトのライフサイクルの管理」を参照してください。

S3 レプリケーションを設定する場合、レプリケートされたオブジェクトのストレージクラスを別のストレージクラスに設定できます。ただし、S3 Glacier Flexible Retrieval または S3 Glacier Deep Archive ストレージクラスに保存されているオブジェクトをレプリケートすることはできません。詳細については、「レプリケーション設定ファイル要素」を参照してください。

ストレージクラスをプログラムで設定する場合、ストレージクラスの値を指定します。以下は、ストレージクラスのコンソール名と対応する API 値のリストです。

  • S3 StandardSTANDARD

  • S3 Standard-IASTANDARD_IA

  • S3 One Zone-IAONEZONE_IA

  • S3 Express One ZoneEXPRESS_ONEZONE

  • S3 Intelligent-TieringINTELLIGENT_TIERING

  • S3 Glacier Instant RetrievalGLACIER_IR

  • S3 Glacier Flexible RetrievalGLACIER

  • S3 Glacier Deep ArchiveDEEP_ARCHIVE

  • REDUCED_REDUNDANCYREDUCED_REDUNDANCY

新しいオブジェクトのストレージクラスを設定

オブジェクトをアップロードするときにストレージクラスを設定するには、次の方法を使用できます。

コンソールで新しいオブジェクトをアップロードするときにストレージクラスを設定するには

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左側のナビゲーションペインで、[バケット] を選択します。

  3. [Buckets (バケット)] リストで、フォルダやファイルのアップロード先のバケットの名前を選択します。

  4. [Upload (アップロード)] を選択します。

  5. [アップロード] ウィンドウで、[プロパティ] を選択します。

  6. [ストレージクラス] で、アップロードするファイルのストレージクラスを選択します。

  7. (オプション) アップロードするファイルの追加のプロパティを設定します。詳細については、「オブジェクトのアップロード」を参照してください。

  8. [Upload] (アップロード) ウィンドウで、次のいずれかの操作を行います。

    • ファイルとフォルダを [アップロード] ウィンドウにドラッグします。

    • [ファイルの追加] または [フォルダの追加] を選択し、アップロードするファイルまたはフォルダを選択して [開く] を選択します。

  9. ページの最下部で [アップロード] をクリックします。

PutObjectPOST Object オブジェクト、および CreateMultipartUpload API オペレーションを使用してオブジェクトを作成するときに、オブジェクトのストレージクラスを指定し、x-amz-storage-class リクエストヘッダーを追加できます。このヘッダーを追加しない場合は、Amazon S3 では、デフォルトのストレージクラスである S3 Standard (STANDARD) を使用します。

このリクエスト例では、PutObject コマンドを使用して新しいオブジェクトのストレージクラスを S3 Intelligent-Tiering に設定します。

PUT /my-image.jpg HTTP/1.1 Host: amzn-s3-demo-bucket1.s3.Region.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: authorization string Content-Type: image/jpeg Content-Length: 11434 Expect: 100-continue x-amz-storage-class: DEEP_ARCHIVE

この例では、put-object コマンドを使用して、GLACIER ストレージクラスの my_images.tar.bz2amzn-s3-demo-bucket1 にアップロードします。

aws s3api put-object --bucket amzn-s3-demo-bucket1 --key dir-1/my_images.tar.bz2 --storage-class GLACIER --body my_images.tar.bz2

オブジェクトサイズが 5 GB を超える場合は、次のコマンドを使用してストレージクラスを設定します。

aws s3 cp large_test_file s3://amzn-s3-demo-bucket1 --storage-class GLACIER

既存のオブジェクトのストレージクラスの変更

オブジェクトをアップロードするときにストレージクラスを設定するには、次の方法を使用します。

オブジェクトのサイズが 5 GB 未満の場合は、Amazon S3 コンソールを使用してオブジェクトのストレージクラスを変更できます。それ以上大きい場合は、S3 Lifecycle の設定を追加すると、オブジェクトのストレージクラスを変更できます。

コンソールでオブジェクトのストレージクラスを変更するには

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左側のナビゲーションペインで [バケット] を選択してから、[汎用バケット] タブをクリックします。変更するオブジェクトを含む Amazon S3 バケットまたはフォルダに移動します。

  3. 変更するオブジェクトの名前の左にあるチェックボックスをオンにします。

  4. [アクション] メニューに表示されるオプションのリストから [ストレージクラスの編集] を選択します。

  5. オブジェクトで使用できるストレージクラスから選択します。

  6. [追加のコピー設定] で、[ソース設定をコピー] するか、[設定を指定しない] か、[設定を指定] するかを選択します。[ソース設定をコピー] がデフォルトのオプションです。ソース設定の属性なしでオブジェクトのみをコピーする場合は、[設定を指定しない] を選択します。ストレージクラス、ACL、オブジェクトタグ、メタデータ、サーバー側の暗号化、その他のチェックサムの設定を指定するには、[設定を指定] を選択します。

  7. 右下の [変更の保存] を選択します。Amazon S3 は変更を保存します。

既存のオブジェクトのストレージクラスを変更するには、次の方法を使用します。

この例では、PutObject コマンドを使用して新しいオブジェクトのストレージクラスを S3 Intelligent-Tiering に設定します。

PUT /my-image.jpg HTTP/1.1 Host: amzn-s3-demo-bucket1.s3.Region.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: authorization string Content-Type: image/jpeg Content-Length: 11434 Expect: 100-continue x-amz-storage-class: DEEP_ARCHIVE

この例では、put-object コマンドを使用して、DEEP_ARCHIVE ストレージクラスの my_images.tar.bz2amzn-s3-demo-bucket1 に更新します。

aws s3api put-object --bucket amzn-s3-demo-bucket1 --key dir-1/my_images.tar.bz2 --storage-class DEEP_ARCHIVE --body my_images.tar.bz2

オブジェクトサイズが 5 GB を超える場合は、次のコマンドを使用してストレージクラスを変更します。

aws s3 cp object_S3_URI object_S3_URI --storage-class DEEP_ARCHIVE

アクセスポリシーのアクセス許可を特定のストレージクラスに制限する

Amazon S3 オペレーションのアクセスポリシーアクセス許可を付与する場合、s3:x-amz-storage-class 条件キーを使用して、アップロードされたオブジェクトを保存するときに使用するストレージクラスを制限できます。例えば、s3:PutObject アクセス許可を付与すると、オブジェクトのアップロードを特定のストレージクラスに制限できます。ポリシーの例については、「例: オブジェクトのアップロードを特定のストレージクラスのオブジェクトに制限する」を参照してください。

ポリシーでの条件の使用方法および Amazon S3 条件キーの完全なリストについては、以下のトピックを参照してください。