

# S3 Intelligent-Tiering の使用
<a name="using-intelligent-tiering"></a>

S3 Intelligent-Tiering ストレージクラスを使用すると、ストレージコストを自動的に最適化できます。S3 Intelligent-Tiering は、アクセスパターンが変更されたときに、アクセス階層間で、細かなオブジェクトレベルでデータを移動することにより、自動的にコスト削減を実現します。非同期でアクセスできるデータの場合は、AWS マネジメントコンソール、AWS CLI、または Amazon S3 API を使用して、S3 Intelligent-Tiering ストレージクラスで自動アーカイブ機能をアクティブ化することもできます。

## S3 Intelligent-Tiering へのデータの移行
<a name="moving-data-to-int-tiering"></a>

S3 Intelligent-Tiering にデータを移動するには、2つの方法があります。オブジェクトは、コンソールから S3 Intelligent-Tiering に直接アップロードすることも、`PUT` オペレーションを使用してプログラムでアップロードすることもできます。詳細については、「[オブジェクトのストレージクラスを設定](sc-howtoset.md)」を参照してください。S3 標準または S3 標準 - 低頻度アクセスから S3 Intelligent-Tiering にオブジェクトを移動させるように S3 ライフサイクル設定を設定することもできます。

### Direct Put を使用した S3 Intelligent-Tiering へのデータのアップロード
<a name="moving-data-to-int-tiering-directPUT"></a>

[PUT](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html) API オペレーションを使用して S3 Intelligent-Tiering ストレージクラスにオブジェクトをアップロードする場合、[https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html#API_PutObject_RequestSyntax](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html#API_PutObject_RequestSyntax) リクエストヘッダーで S3 Intelligent-Tiering を指定します。

次のリクエストは、イメージ、`my-image.jpg` を `myBucket` バケットに保存します。このリクエストでは、`x-amz-storage-class` ヘッダーを使用して、オブジェクトが S3 Intelligent-Tiering ストレージクラスを使用して保存されるようにリクエストできます。

**Example**  

```
PUT /my-image.jpg HTTP/1.1
Host: myBucket.s3.<Region>.amazonaws.com (http://amazonaws.com/)
Date: Wed, 1 Sep 2021 17:50:00 GMT
Authorization: authorization string
Content-Type: image/jpeg
Content-Length: 11434
Expect: 100-continue
x-amz-storage-class: INTELLIGENT_TIERING
```

### S3 ライフサイクルを使用した S3 標準または S3 Standard-低頻度アクセスから S3 Intelligent-Tiering へのデータの移行
<a name="moving-data-to-int-tiering-lifecycle"></a>

S3 ライフサイクルの設定にルールを追加して、オブジェクトをあるストレージクラスから別のストレージクラスに移行するように Amazon S3 に指示することができます。サポートされている移行および関連する制約の詳細については、「[S3 ライフサイクルを使用したオブジェクトの移行](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html)」を参照してください。

S3 ライフサイクル設定は、バケットレベルまたはプレフィックスレベルで指定できます。この S3 ライフサイクル設定ルールでは、フィルターはキープレフィックス (`documents/`) を指定しています。したがって、ルールは、キー名プレフィックスが `documents/` のオブジェクト (`documents/doc1.txt`、`documents/doc2.txt` など) に適用されます。このルールは、作成から 0 日後にオブジェクトを S3 Intelligent-Tiering ストレージクラスに移行するように Amazon S3 に指示する `Transition` アクションを指定します。この場合、オブジェクトは、作成後の午前 0 時 (UTC) に S3 Intelligent-Tiering に移行できます。

**Example**  

```
<LifecycleConfiguration>
  <Rule>
    <ID>ExampleRule</ID>
    <Filter>
       <Prefix>documents/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <Days>0</Days>
      <StorageClass>INTELLIGENT_TIERING</StorageClass>
    </Transition>
 </Rule>
</LifecycleConfiguration>
```

バケットのバージョニングが有効になっている場合は、最新のオブジェクトバージョン 1 個と、0 個以上の以前のバージョンが維持されます。現在のオブジェクトバージョンと以前のオブジェクトバージョン用に異なるライフサイクルルールを定義できます。

詳細については、「[ライフサイクル設定の要素](intro-lifecycle-rules.md)」を参照してください。

## S3 Intelligent-Tiering のアーカイブアクセスおよびディープアーカイブアクセスの有効化
<a name="enable-auto-archiving-int-tiering"></a>

数分から数時間でアクセス可能なデータのストレージコストを最低限に抑えるには、AWS マネジメントコンソール、AWS CLI、または Amazon S3 API を使用してバケットレベル、プレフィックスレベル、またはオブジェクトタグレベルの設定を作成することで、アーカイブアクセス階層の 1 つまたは両方を有効にすることができます。

### S3 コンソールの使用
<a name="enable-auto-archiving-int-tiering-console"></a>

**S3 Intelligent-Tiering 自動アーカイブを有効にするには**

1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール ([https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)) を開きます。

1. [**Buckets (バケット)**] リストで、目的のバケットの名前を選択します。

1. [**プロパティ**] を選択します。

1. **S3 Intelligent-Tiering アーカイブの設定**セクションに移動し、[**設定を作成**] を選択します。

1. **アーカイブ構成の設定**セクションで、S3 Intelligent-Tiering アーカイブ設定に分かりやすい設定名を指定します。

1. [**設定範囲の選択**] で、使用する設定範囲を選択します。オプションとして、共有プレフィックス、オブジェクトタグ、またはその組み合わせを使用して、バケット内の指定されたオブジェクトの設定範囲を制限することもできます。

   1. 設定の範囲を制限するには、[**1 つ以上のフィルターを使用して、この設定の範囲を制限**] を選択します。

   1. 単一のプレフィックスを使用して設定の範囲を制限するには、[**プレフィックス**] の下にプレフィックスを入力します。

   1. オブジェクトタグを使用して設定の範囲を制限するには、[**タグの追加**] を選択し、キーの値を入力します。

1. [**ステータス**] で [**有効**] を選択します。

1. [**アーカイブ設定**] セクションで、有効にするアーカイブアクセス階層の 1 つまたは両方を選択します。

1. **[作成]** を選択します。

### の使用AWS CLI
<a name="enable-auto-archiving-int-tiering-cli"></a>

次の AWS CLI コマンドを使用して、S3 Intelligent-Tiering 設定を管理できます。
+ [https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-bucket-intelligent-tiering-configuration.html](https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-bucket-intelligent-tiering-configuration.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/s3api/get-bucket-intelligent-tiering-configuration.html](https://docs.aws.amazon.com/cli/latest/reference/s3api/get-bucket-intelligent-tiering-configuration.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/s3api/list-bucket-intelligent-tiering-configurations.html](https://docs.aws.amazon.com/cli/latest/reference/s3api/list-bucket-intelligent-tiering-configurations.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-intelligent-tiering-configuration.html](https://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-intelligent-tiering-configuration.html)

AWS CLI の設定の手順については、「Amazon S3 API リファレンス」の「[AWS CLI を使用した Amazon S3 での開発](https://docs.aws.amazon.com/AmazonS3/latest/API/setup-aws-cli.html)」を参照してください。**

AWS CLI を使用する場合、設定を XML ファイルとして指定することはできません。代わりに JSON を指定する必要があります。サンプル XML S3 Intelligent-Tiering 設定と、AWS CLI コマンドで指定できる同等の JSON を以下に示します。

次の例では、指定したバケットに S3 Intelligent-Tiering 設定を配置します。

**Example [https://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-intelligent-tiering-configuration.html](https://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-intelligent-tiering-configuration.html)**  

```
{
  "Id": "string",
  "Filter": {
    "Prefix": "string",
    "Tag": {
      "Key": "string",
      "Value": "string"
    },
    "And": {
      "Prefix": "string",
      "Tags": [
        {
          "Key": "string",
          "Value": "string"
        }
        ...
      ]
    }
  },
  "Status": "Enabled"|"Disabled",
  "Tierings": [
    {
      "Days": integer,
      "AccessTier": "ARCHIVE_ACCESS"|"DEEP_ARCHIVE_ACCESS"
    }
    ...
  ]
}
```

```
PUT /?intelligent-tiering&id=Id HTTP/1.1
Host: Bucket.s3.amazonaws.com
<?xml version="1.0" encoding="UTF-8"?>
<IntelligentTieringConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
   <Id>string</Id>
   <Filter>
      <And>
         <Prefix>string</Prefix>
         <Tag>
            <Key>string</Key>
            <Value>string</Value>
         </Tag>
         ...
      </And>
      <Prefix>string</Prefix>
      <Tag>
         <Key>string</Key>
         <Value>string</Value>
      </Tag>
   </Filter>
   <Status>string</Status>
   <Tiering>
      <AccessTier>string</AccessTier>
      <Days>integer</Days>
   </Tiering>
   ...
</IntelligentTieringConfiguration>
```

### PUT API オペレーションの使用
<a name="enable-auto-archiving-int-tiering-api"></a>

指定したバケットとバケットごとに最大 1,000 の S3 Intelligent-Tiering 設定に対して[https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html)オペレーションを使用できます。共有プレフィックスまたはオブジェクトタグを使用して、アーカイブアクセス階層の対象となるバケット内のオブジェクトを定義できます。共有プレフィックスまたはオブジェクトタグを使用して、特定のビジネスアプリケーション、ワークフロー、または内部組織に合わせることができます。また、アーカイブアクセス階層、ディープアーカイブアクセス階層、またはその両方を柔軟にアクティブにすることもできます。