

# Amazon S3 ストレージクラスの理解と管理
<a name="storage-class-intro"></a>

Amazon S3 内にある各オブジェクトには、ストレージクラスが関連付けられています。デフォルトでは、S3 のオブジェクトは S3 Standard ストレージクラスに保存されますが、Amazon S3 は、保存するオブジェクトに対して、広範なストレージクラスを提供します。ユースケースシナリオおよびパフォーマンスアクセス要件を考慮してクラスを選択します。ユースケースに合わせて設計されたストレージクラスを選択すると、オブジェクトのストレージコスト、パフォーマンス、可用性を最適化できます。このストレージクラスはすべて高度な耐久性を提供します。

以下のセクションでは、さまざまなストレージクラスの詳細と、オブジェクトにストレージクラスを設定する方法について説明します。

**Topics**
+ [アクセス頻度の高いオブジェクトのストレージクラス](#sc-freq-data-access)
+ [アクセスパターンが変化する、またはアクセスパターンが不明なデータを、自動的に最適化するためのストレージクラス](#sc-dynamic-data-access)
+ [アクセス頻度の低いオブジェクトのストレージクラス](#sc-infreq-data-access)
+ [ほとんどアクセスすることのないオブジェクトのストレージクラス](#sc-glacier)
+ [Amazon S3 on Outposts のストレージクラス](#s3-outposts)
+ [Amazon S3 ストレージクラスの比較](#sc-compare)
+ [オブジェクトのストレージクラスを設定](sc-howtoset.md)
+ [Amazon S3 分析 – ストレージクラス分析](analytics-storage-class.md)
+ [Amazon S3 Intelligent-Tiering によるストレージコストの管理](intelligent-tiering.md)
+ [長期データストレージとしての S3 Glacier ストレージクラスを理解する](glacier-storage-classes.md)
+ [アーカイブされたオブジェクトの操作](archived-objects.md)

## アクセス頻度の高いオブジェクトのストレージクラス
<a name="sc-freq-data-access"></a>

パフォーマンス重視のユースケース (ミリ秒単位のアクセス時間を要するユースケース) とアクセス頻度の高いデータには、Amazon S3 は次のストレージクラスを提供しています。
+ **S3 Standard** (`STANDARD`) – デフォルトのストレージクラス。オブジェクトのアップロード時にストレージクラスを指定しない場合、Amazon S3 Standard ストレージクラスが割り当てられます。S3 Standard と S3 Standard-IA 間のコストを最適化するために、「[Amazon S3 分析 – ストレージクラス分析](analytics-storage-class.md)」を使用できます。
+ **S3 Express One Zone** (`EXPRESS_ONEZONE`) – Amazon S3 Express One Zone は、最もレイテンシーの影響を受けやすいアプリケーションに 1 桁のミリ秒単位で一貫したデータアクセスを提供することを目的として構築された、高パフォーマンスのシングルアベイラビリティーゾーンの Amazon S3 ストレージクラスです。S3 Express One Zone は、現在入手可能なレイテンシーが最も低いクラウドオブジェクトストレージクラスで、データアクセス速度は最大 10 倍速く、リクエストコストは S3 スタンダードよりも 50% 低減されます。S3 Express One Zone では、データは単一のアベイラビリティーゾーン内で冗長的に複数のデバイスに保存されます。詳細については、「[S3 Express One Zone](directory-bucket-high-performance.md#s3-express-one-zone)」を参照してください。
+ **低冗長化ストレージ** (`REDUCED_REDUNDANCY`) – 低冗長化ストレージ (RRS) のクラスは、それほど重要ではない再生可能なデータを、S3 Standard ストレージクラスより低いレベルの冗長性で保存することができます。
**重要**  
このストレージクラスの使用は推奨しません。S3 Standard ストレージクラスの方がコスト効果に優れています。

  耐久性について、RRS オブジェクトの平均年間予測喪失率は 0.01 パーセントです。RRS オブジェクトが紛失した場合、Amazon S3 はそのオブジェクトへのリクエストに 405 エラーを返します。

## アクセスパターンが変化する、またはアクセスパターンが不明なデータを、自動的に最適化するためのストレージクラス
<a name="sc-dynamic-data-access"></a>

**S3 Intelligent-Tiering** (`INTELLIGENT_TIERING`) は、パフォーマンスへの影響やオペレーション上のオーバーヘッドを発生させることなく、データを最も費用効果の高いアクセス階層に自動的に移動することで、ストレージコストを最適化できるように設計された Amazon S3 ストレージクラスです。S3 Intelligent-Tiering は、アクセスパターンが変更されたときに、アクセス階層間で、細かなオブジェクトレベルでデータを移動することにより、自動的にコスト削減を実現する唯一のクラウドストレージクラスです。S3 Intelligent-Tiering は、アクセスパターンが不明または変化するデータのストレージコストを最小限に抑える場合に最適なストレージクラスです。S3 Intelligent-Tiering には取り出し料金は発生しません。

オブジェクトのモニタリングとオートメーションに対して発生する少額の月額料金で、S3 Intelligent-Tiering はアクセスパターンをモニタリングし、あまりアクセスされていないオブジェクトをより低コストのアクセス階層へ自動的に移動させることができます。S3 Intelligent-Tiering は、3 つの低レイテンシーかつ高スループットのアクセス階層で、自動的にストレージコストを削減できます。非同期でアクセスできるデータの場合は、S3 Intelligent-Tiering ストレージクラスで自動アーカイブ機能をアクティブ化することもできます。S3 Intelligent-Tiering は、99.9% の可用性と99.999999999% の耐久性を実現するように設計されています。

S3 Intelligent-Tiering は、3 つのアクセス階層にオブジェクトを自動的に保存します。
+ **高頻度アクセス** – S3 Intelligent-Tiering にアップロードまたは転送されたオブジェクトは、高頻度アクセス階層に自動的に保存されます。
+ **低頻度アクセス** – S3 Intelligent-Tiering では、30 日間連続してアクセスされなかったオブジェクトは低頻度アクセス階層に移動されます。
+ **アーカイブインスタントアクセス** – S3 Intelligent-Tiering では、90 日間連続してアクセスされていない既存のオブジェクトは、アーカイブインスタントアクセス階層に自動的に移動されます。

S3 Intelligent-Tiering では、これらの 3 つの階層に加えて、オプションとして次の 2 つのアーカイブアクセス階層が用意されています。
+ **アーカイブアクセス** – S3 Intelligent-Tiering では、非同期的にアクセスできるデータ向けにアーカイブアクセス層をアクティブ化するオプションが提供されます。アクティブ化された後、アーカイブアクセス階層は 90 日間以上してアクセスされなかったオブジェクトを自動的にアーカイブします。
+ **ディープアーカイブアクセス** – S3 Intelligent-Tiering では、非同期的にアクセスできるデータ向けにディープアーカイブアクセス階層をアクティブ化するオプションが提供されます。アクティブ化後、ディープアーカイブアクセス階層は 180 日間連続してアクセスされなかったオブジェクトを自動的にアーカイブします。

**注記**  
アーカイブインスタントアクセス階層をバイパスしたい場合は、アーカイブアクセス階層を 90 日間だけアクティブ化します。アーカイブアクセス階層は、分単位から時間単位の取得時間でストレージコストをわずかに削減します。アーカイブインスタントアクセス階層は、ミリ秒単位のアクセスと高いスループットパフォーマンスを実現します。
アプリケーションがオブジェクトに非同期でアクセスできる場合にのみ、アーカイブアクセス階層とディープアーカイブアクセス階層をアクティブにします。取得するオブジェクトがアーカイブアクセス階層またはディープアーカイブアクセス階層に保存されている場合は、まず `RestoreObject` を使用してオブジェクトを復元します。

[新しく作成されたデータを S3 Intelligent-Tiering](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-intelligent-tiering.html#moving-data-to-int-tiering) に移動して、デフォルトのストレージクラスとして設定することができます。また、[https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html) API オペレーション、AWS CLI、または Amazon S3 コンソールを使用して、アーカイブアクセス階層の 1 つまたは両方をアクティブ化することもできます。S3 Intelligent-Tiering の使用方法およびアクティブアクセス階層のアクティブ化の詳細については、「[S3 Intelligent-Tiering の使用](using-intelligent-tiering.md)」を参照してください。

Archive Access または Deep Archive Access 階層のオブジェクトにアクセスするには、まずそれらを復元する必要があります。詳細については、「[S3 Intelligent-Tiering アーカイブアクセス階層からのオブジェクトの復元](intelligent-tiering-managing.md#restore-data-from-int-tier-archive)」を参照してください。

**注記**  
オブジェクトのサイズが 128 KB 未満の場合は、モニタリングされず、自動階層化に適していません。小さいオブジェクトは必ず高頻度アクセス階層に保存されます。S3 Intelligent-Tiering の詳細については、「[S3 Intelligent-Tiering アクセス階層](intelligent-tiering-overview.md#intel-tiering-tier-definition)」を参照してください。

## アクセス頻度の低いオブジェクトのストレージクラス
<a name="sc-infreq-data-access"></a>

**S3 Standard – IA** と **S3 1 ゾーン – IA** のストレージクラスは、存続期間が長く、アクセス頻度の低いデータ用に設計されています (IA は *infrequent access* (低頻度アクセス) の略です)。S3 Standard – IA オブジェクトおよび S3 1 ゾーン – IA オブジェクトは、ミリ秒のアクセスに使用できます (S3 Standard ストレージクラスに似ています)。Amazon S3 では、これらのオブジェクトに取り出し料金が発生するため、アクセスが頻繁ではないデータに最適です。料金については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」を参照してください。

例えば、S3 Standard – IA と S3 1 ゾーン – IA のストレージクラスを選択し、次のことを行います。
+ バックアップの保存 
+ アクセスが頻繁ではないが、ミリ秒単位のアクセスを必要とする旧いデータに適しています。例えば、データのアップロード時に S3 Standard ストレージクラスを選択し、Amazon S3 がオブジェクトを S3 Standard – IA または S3 1 ゾーン – IA クラスに移動するようにライフサイクル設定を使用することができます。

  ライフサイクル管理の詳細については、「[オブジェクトのライフサイクルの管理](object-lifecycle-mgmt.md)」を参照してください。

**注記**  
S3 Standard – IA と S3 1 ゾーン – IA ストレージクラスは、サイズが 128 KB 以上あり、少なくとも 30 日間保存する予定のオブジェクトに最適です。オブジェクトが 128 KB 以下の場合、Amazon S3 は 128 KB に相当する料金を請求します。最小ストレージ期間の 30 日が過ぎる前にオブジェクトを削除した場合は、30 日分の料金が発生します。30 日前に削除、上書き、または別のストレージクラスに移行されたオブジェクトは、通常のストレージ使用料に加えて、最低 30 日間の残りの期間分の日割り料金が発生します。料金については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」を参照してください。

ストレージクラスの違いについては下記をご覧ください。
+ **S3 Standard-IA** (`STANDARD_IA`) – Amazon S3 は、地理的に分離された複数のアベイラビリティーゾーン間でオブジェクトデータを冗長的に保存します (S3 Standard ストレージクラスに似ています)。S3 Standard – IA オブジェクトはアベイラビリティーゾーンに障害が発生した場合の回復性に優れています。このストレージクラスは S3 1 ゾーン – IA クラスよりも優れた高可用性と回復性を提供します。S3 Standard と S3 Standard-IA 間のコストを最適化するために、「[Amazon S3 分析 – ストレージクラス分析](analytics-storage-class.md)」を使用できます。
+ **S3 One Zone-IA** (`ONEZONE_IA`) – Amazon S3 はオブジェクトデータを 1 つのアベイラビリティーゾーンでのみ保存するため、S3 Standard-IA よりも安価になります。ただし、地震や洪水といった災害によるアベイラビリティーゾーンの物理的な損失時においてデータの回復性はありません。S3 One Zone-IA ストレージクラスは S3 Standard-IA に並ぶ耐久性を備えていますが、可用性と回復性は劣ります。ストレージクラスの耐久性および可用性の比較情報については、このセクションの最後にある「[Amazon S3 ストレージクラスの比較](#sc-compare)」を参照してください。料金については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」を参照してください。データレジデンシーと分離のユースケースでは、AWS Local Zones にディレクトリバケットを作成し、S3 Express One Zone (`EXPRESS_ONEZONE`) および S3 One Zone-IA (`ONEZONE_IA`) ストレージクラスを使用できます。Local Zones のディレクトリバケットの詳細については、「[データレジデンシーワークロード](directory-bucket-data-residency.md)」を参照してください。

次の構成を推奨します。
+ **S3 Standard-IA** (`STANDARD_IA`) – プライマリまたは再作成できないデータのコピーでのみ使用します。
+ **S3 One Zone-IA** (`ONEZONE_IA`) – S3 クロスリージョンレプリケーション (CRR) を設定する際にアベイラビリティーゾーンで障害が発生した場合、オブジェクトレプリカ用にデータを再作成できるときに使用します。また、データレジデンシーと分離のために、AWS Local Zones にディレクトリバケットを作成し、S3 One Zone-IA ストレージクラスを使用できます。

## ほとんどアクセスすることのないオブジェクトのストレージクラス
<a name="sc-glacier"></a>

**S3 Glacier Instant Retrieval** (`GLACIER_IR`)、**S3 Glacier Flexible Retrieval** (`GLACIER`)、**S3 Glacier Deep Archive** (`DEEP_ARCHIVE`) ストレージクラスは、低コストで長期保存するために使用できるデータストレージおよびデータアーカイブ向けに設計されています。これらのストレージクラスでは、最小限のストレージ期間と取得料金になるため、ほとんどアクセスされないデータに対して最も効果的です。S3 Glacier ストレージクラスの詳細については、「[長期データストレージとしての S3 Glacier ストレージクラスを理解する](glacier-storage-classes.md)」を参照してください。

Amazon S3 は以下の S3 Glacier ストレージクラスを提供します:
+ **S3 Glacier Instant Retrieval** (`GLACIER_IR`) – ほとんどアクセスされず、ミリ秒単位の取得が必要な長期データに使用します。このストレージクラスのデータにはリアルタイムアクセスできます。
+ **S3 Glacier Flexible Retrieval** (`GLACIER`) – データの一部を数分で取得する必要があるアーカイブに使用します。このストレージクラスのデータはアーカイブされ、リアルタイムアクセスできなくなります。
+ **S3 Glacier Deep Archive** (`DEEP_ARCHIVE`) – ほとんどアクセスする必要がないデータのアーカイブに使用します。このストレージクラスのデータはアーカイブされ、リアルタイムアクセスできなくなります。

### アーカイブ済みオブジェクトの取得
<a name="sc-glacier-restore"></a>

オブジェクトのストレージクラスを S3 Glacier Flexible Retrieval (`GLACIER`) または S3 Glacier Deep Archive (`DEEP_ARCHIVE`) に設定するには、セクション [オブジェクトのストレージクラスを設定](sc-howtoset.md) で説明しているように、他のストレージクラスに対して行う場合と同様の方法で行います。ただし、S3 Glacier Flexible Retrieval および S3 Glacier Deep Archive オブジェクトはアーカイブされ、リアルタイムでアクセスできなくなります。詳細については、「[S3 Glacier Flexible Retrieval および S3 Glacier Deep Archive はアーカイブストレージクラスです。](archival-storage.md)」を参照してください。

**注記**  
S3 Glacier ストレージクラスを使用する場合、オブジェクトは Amazon S3 に残ります。Amazon Glacier サービスを別途使用して直接アクセスすることはできません。Amazon Glacier の詳細については、「[Amazon Glacier デベロッパーガイド](https://docs.aws.amazon.com/amazonglacier/latest/dev/)」を参照してください。

## Amazon S3 on Outposts のストレージクラス
<a name="s3-outposts"></a>

Amazon S3 on Outposts を使用すると、AWS Outposts リソースで S3 バケットを作成し、ローカルデータアクセス、ローカルデータ処理、データレジデンシーを必要とするアプリケーション用に、オンプレミスのオブジェクトを保存および取得できます。AWS Outposts では、Amazon S3 と同じ API オペレーションと機能 (アクセスポリシー、暗号化、タグ付けを含む) を使用できます。AWS マネジメントコンソール、AWS CLI、AWS SDK、または REST API を使用して S3 on Outposts を使用できます。

S3 on Outposts は、新しいストレージクラスである S3 Outposts (`OUTPOSTS`) を提供します。S3 Outposts のストレージクラスは、Outposts のバケットに格納されたオブジェクトに対してのみ使用できます。AWS リージョン の S3 バケットでこのストレージクラスを使用しようとすると、`InvalidStorageClass` エラーが発生します。さらに、S3 on Outposts に保存されているオブジェクトで他の S3 ストレージクラスを使用しようとすると、同じエラー応答が発生します。

S3 Outposts (`OUTPOSTS`) ストレージクラスに格納されているオブジェクトは、デフォルトでは Amazon S3 マネージド暗号化キー (SSE-S3) によるサーバー側の暗号化を使用して常に暗号化されます。詳細については、「[Amazon S3 マネージドキーによるサーバー側の暗号化 (SSE-S3)](UsingServerSideEncryption.md)」を参照してください。

お客様が用意した暗号化キー (SSE-C) を使用したサーバー側の暗号化を使用して、S3 Outposts ストレージクラスに格納されたオブジェクトを明示的に暗号化することもできます。詳細については、「[お客様が指定したキーによるサーバー側の暗号化 (SSE−C) の使用](ServerSideEncryptionCustomerKeys.md)」を参照してください。

**注記**  
S3 on Outposts は、AWS Key Management Service (AWS KMS) キー (SSE-KMS) を使用したサーバー側暗号化をサポートしていません。

Outposts 上の S3 の詳細については、「Amazon S3 on Outposts ユーザーガイド」の「[What is S3 on Outposts](https://docs.aws.amazon.com/AmazonS3/latest/s3-outposts/S3onOutposts.html)」を参照してください。**

## Amazon S3 ストレージクラスの比較
<a name="sc-compare"></a>

ストレージクラスの可用性、耐久性、最小ストレージ期間、その他の考慮すべき事項を含め、次の表で比較しています。


****  

| ストレージクラス | 対象 | 耐久性 (のために設計) | 可用性 (のために設計) | アベイラビリティーゾーン | 最小ストレージ期間 | 請求可能な最小オブジェクトサイズ | その他の考慮事項  | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
|  S3 Standard (`STANDARD`)  |  ミリ秒アクセスで頻繁にアクセスされたデータ (月に 2 回以上)  |  99.999999999%   |  99.99%  |  >= 3  |  なし  |  なし  |  なし  | 
|  S3 Standard–IA (`STANDARD_IA`)  |  存続期間が長く、ミリ秒単位のアクセスデータであまり頻繁にアクセスされない (1 か月に 1 回)  |  99.999999999%   |  99.9%  |  >= 3  |  30 日間  |  128 KB  |  GB 単位の取り出し料金が適用されます。  | 
|  S3 Intelligent-Tiering (`INTELLIGENT_TIERING`)  |  認識されていない、変更されている、または予測不可能なアクセスパターンを持つデータ  |  99.999999999%  |  99.9%  |  >= 3  |  なし  |  なし  |  オブジェクトごとのモニタリングとオートメーションの料金が適用されます。取り出し料はありません。128 KB 未満のオブジェクトはモニタリングされず、常に高頻度アクセス階層に保存されます。詳細については、「[S3 Intelligent-Tiering の仕組み](intelligent-tiering-overview.md)」を参照してください。  | 
|  S3 One Zone-IA (`ONEZONE_IA`)  |  再作成可能で、ミリ秒単位でアクセスされたデータでアクセス頻度が低く（月に 1 回)  |  99.999999999%   |  99.5%  |  1  |  30 日間  |  128 KB  |  GB 単位の取り出し料金が適用されます。アベイラビリティーゾーンの損失においては回復性がありません。  | 
|  S3 Express One Zone (`EXPRESS_ONEZONE`)  |  単一の AWS アベイラビリティーゾーン内のレイテンシーの影響を受けやすいアプリケーションに対する 1 桁のミリ秒単位のデータアクセス  |  99.999999999%   |  99.95%  |  1  |  なし  |  なし  |  S3 Express One Zone (`EXPRESS_ONEZONE`) のオブジェクトは、選択した単一の AWS アベイラビリティーゾーンに保存されます。  | 
|  S3 Glacier Instant Retrieval (`GLACIER_IR`)  | 存続期間が長く、ミリ秒のアクセスで四半期に一度アクセスされるアーカイブデータ | 99.999999999%  |  99.9%  |  >= 3  |  90 日間  |  128 KB  | GB 単位の取り出し料金が適用されます。 | 
|  S3 Glacier Flexible Retrieval (`GLACIER`)  | 存続期間が長く、取得時間は分から数時間になり、年に 1 回アクセスされたアーカイブデータ | 99.999999999%  |  99.99% (オブジェクトを復元後)  |  >= 3  |  90 日間  |  NA\$1  | GB 単位の取り出し料金が適用されます。これらにアクセスする前に、まずアーカイブされたオブジェクトを復元する必要があります。詳細については、「[アーカイブされたオブジェクトの復元](restoring-objects.md)」を参照してください。 | 
|  S3 Glacier Deep Archive (`DEEP_ARCHIVE`)  | 存続期間が長く、年に 1 回未満でアクセスされ、取得時間は何時間に渡ってアクセスされるアーカイブデータ | 99.999999999%  |  99.99% (オブジェクトを復元後)  |  >= 3  |  180 日間  |  NA\$1\$1  | GB 単位の取り出し料金が適用されます。これらにアクセスする前に、まずアーカイブされたオブジェクトを復元する必要があります。詳細については、「[アーカイブされたオブジェクトの復元](restoring-objects.md)」を参照してください。 | 
|  低冗長化ストレージ (`REDUCED_REDUNDANCY`) 非推奨  |  重要ではない、ミリ秒単位で頻繁にアクセスされるデータ  |  99.99%   |  99.99%  |  >= 3  |  なし  |  なし  |  なし  | 

\$1 S3 Glacier Flexible Retrieval では、アーカイブされたオブジェクトごとに 40 KB の追加メタデータが必要です。これには、S3 Glacier Flexier Flexible Retrieval レート (データの識別と取得に必要) で請求される 32 KB のメタデータと、S3 スタンダートレートで請求される追加の 8 KB データが含まれます。S3 Glacier Flexible Retrieval にアーカイブされたオブジェクトのユーザー定義名とメタデータを維持するには、S3 スタンダートレートが必要です。ストレージクラスの詳細については、「[Amazon S3 ストレージクラス](https://aws.amazon.com/s3/storage-classes/)」を参照してください。

\$1\$1 S3 Glacier Deep Archive には、アーカイブされたオブジェクトごとに 40 KB の追加メタデータが必要です。これには、S3 Glacier Deep Archive レート (データの識別と取得に必要) で請求される 32 KB のメタデータと、S3 スタンダートレートで請求される追加の 8 KB データが含まれます。Amazon S3 Glacier Deep Archive にアーカイブされたオブジェクトのユーザー定義の名前とメタデータを維持するには、S3 スタンダートレートが必要です。ストレージクラスの詳細については、「[Amazon S3 ストレージクラス](https://aws.amazon.com/s3/storage-classes/)」を参照してください。

S3 One Zone-IA (`ONEZONE_IA`) と S3 Express One Zone (`EXPRESS_ONEZONE`) を除くすべてのストレージクラスは、災害によるアベイラビリティーゾーンの物理的な損失に対して回復力を持つように設計されていることに注意します。また、アプリケーションシナリオのパフォーマンス要件の他に、コストについても考慮してください。ストレージクラスの料金については「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」をご覧ください。