オブジェクトの有効期限 - Amazon Simple Storage Service

オブジェクトの有効期限

ライフサイクル設定に基づいて、オブジェクトの存続期間が終了すると、Amazon S3 はバケットの状態に応じて自動的にアクションを実行します。

  • バージョニングされていないバケット — Amazon S3 はオブジェクトを削除キューに追加し、オブジェクトを非同期的に完全に削除します。

  • バージョニングが有効なバケット – 現在のオブジェクトバージョンが削除マーカーではない場合、Amazon S3 は固有のバージョン ID を持つ削除マーカーを追加します。これにより、最新のバージョンが最新以外のバージョンとなり、削除マーカーが最新バージョンになります。

  • バージョニングが停止されたバケット — Amazon S3 はバージョン ID として null を使用する削除マーカーを作成します。この削除マーカーは、バージョン階層においてあらゆるオブジェクトバージョンをバージョン ID null に置き換えるため、オブジェクトが効率的に削除されます。

バージョニング対応のバケット (つまり、バージョニングが有効であるかバージョニングが停止されている) の場合、Amazon S3 による Expiration アクションの処理方法を決める考慮事項がいくつかあります。バージョニングが有効なバケットまたはバージョニングが停止されたバケットには、以下が適用されます。

  • オブジェクトの有効期限は、オブジェクトの最新のバージョンにのみ適用されます(最新以外のバージョンには影響しません)。

  • 1 つ以上のオブジェクトバージョンがあり、削除マーカーが最新バージョンである場合、Amazon S3 はアクションを実行しません。

  • 現在のオブジェクトバージョンが唯一のオブジェクトバージョンであり、削除マーカーでもある場合 (「期限切れオブジェクト削除マーカー」とも呼ばれます。すべてのオブジェクトバージョンが削除され、削除マーカーのみ残ります)、Amazon S3 は期限切れのオブジェクト削除マーカーを削除します。また、expiration アクションを使用して、期限切れオブジェクト削除マーカーをすべて削除するよう Amazon S3 に指示することもできます。例については、「例 7: 期限切れオブジェクト削除マーカーを削除する」を参照してください。

詳細については、「S3 バケットでのバージョニングの使用」を参照してください。

重要

S3 ライフサイクル設定に複数のルールがある場合、1 つのオブジェクトが複数の S3 ライフサイクルアクションの対象になることがあります。このような場合、Amazon S3 は以下の一般的なルールに従います。

  • 完全な削除は、移行より優先されます。

  • 移行は、削除マーカーの作成より優先されます。

  • オブジェクトが S3 Glacier Flexible Retrieval 移行と S3 標準 – IA 移行 (または S3 1 ゾーン – IA 移行) の両方の対象になる場合、Amazon S3 は S3 Glacier Flexible Retrieval の移行を選択します。

例については、「例 5: 重複するフィルター、競合するライフサイクルアクション、Amazon S3 がバージョン管理されていないバケットに対して行うこと」を参照してください。

オブジェクトの有効期限を確認する方法

オブジェクトに設定されている有効期限を調べるには、HEAD Object または GET Object API オペレーションを使用します。これらの API オペレーションでは、オブジェクトがキャッシュ可能でなくなる日時が指定されたレスポンスヘッダーが返されます。

注記
  • 有効期限が切れる日と Amazon S3 がオブジェクトを削除する日との間に遅延が生じることがあります。期限切れのオブジェクトに関連付けられている有効期限切れ、またはストレージ期間に対する料金は請求されません。

  • ライフサイクルルールを更新、無効化、または削除する前に、LIST API オペレーション (ListObjectsV2ListObjectVersionsListMultipartUploads など) または Amazon S3 インベントリ を使用して、Amazon S3 がユースケースに沿って対象オブジェクトを移行し、期限切れになっていることを確認します。

最小ストレージ期間料金

S3 Standard – IA、または S3 1 ゾーン – IA のストレージにあった期間が 30 日未満のオブジェクトを失効させる S3 ライフサイクル失効ルールを作成すると、30 日間の料金が発生します。S3 Glacier ストレージにあった期間が 90 日未満のオブジェクトを失効させるライフサイクル有効期限ルールを作成すると、90 日間の料金が発生します。S3 Glacier Deep Archive ストレージにあった期間が 180 日未満のオブジェクトを失効させるライフサイクル失効ルールを作成すると、180 日間の料金が発生します。

詳細については、「Amazon S3 の料金」を参照してください。