すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:ライフサイクルルールとバージョン管理によるストレージコストの削減

最終更新日:May 07, 2026

バケットでバージョン管理を有効化すると、Object Storage Service (OSS) は上書きまたは削除されたオブジェクトを以前のバージョンとして保存します。バケットに多数の以前のバージョンや削除マーカーが蓄積された場合、ライフサイクルルールを使用してこれらを自動的に削除できます。これにより、ストレージコストを削減し、オブジェクト一覧表示のパフォーマンスを向上させることができます。

前提条件

対象バケットでバージョン管理が有効化されていること。詳細については、「バージョン管理の有効化」をご参照ください。

ユースケース

examplebucket という名前のバケットでバージョン管理が有効化されているシナリオを想定します。ユーザーが 2 月 8 日に example.txt という名前のオブジェクトをアップロードした後、バージョン ID を指定せずに複数回オブジェクトを上書きまたは削除しました。各操作に対して Object Storage Service (OSS) は一意のバージョン ID を生成し、オブジェクトを以前のバージョンとして保存します。次の図に示すバージョン ID は説明のために簡略化されており、実際のバージョン ID を表すものではありません。versioning

これらの操作後、ユーザーは以下の操作を行いたいと考えています。

  • 5 月 8 日および 9 月 10 日のオブジェクトバージョンのみを保持する。

  • 5 月 8 日の以前のバージョンを現在のバージョンとして復元する。

操作手順

  1. 特定のオブジェクトバージョンの保持

    現在の日付が 9 月 10 日であると仮定します。5 月 8 日および 9 月 10 日のオブジェクトバージョンのみを保持するには、以下の設定でライフサイクルルールを構成します。

    1. OSS コンソール にログインします。

    2. 左側のナビゲーションウィンドウで バケット をクリックします。[Buckets] ページで examplebucket をクリックします。

    3. 左側のナビゲーションウィンドウで データ管理 > ライフサイクル を選択します。

    4. ルールの作成 をクリックします。以下の表の設定でライフサイクルルールを構成し、その他の設定はデフォルト値のままにします。

      セクション

      パラメーター

      説明

      基本設定

      ステータス

      有効 を選択します。

      ポリシー

      バケット全体に適用 を選択します。

      現在のバージョンのポリシー

      オブジェクトのライフサイクル

      削除マーカーの削除 を選択します。

      以前のバージョンに対するポリシー

      オブジェクトのライフサイクル

      指定の日数 を選択します。

      ライフサイクルベースのルール

      変更時刻 を 90 日に設定します。オブジェクトは、以前のバージョンになってから 90 日後に有効期限切れとなり、翌日に削除されます。

      説明

      この例では、5 月 8 日にアップロードされたオブジェクトが 9 月 10 日に以前のバージョンに移行します。以前のバージョンになってからの経過日数が 90 日未満であるため、そのオブジェクトは保持され、削除されません。

      フラグメントに対するポリシー

      フラグメント期限切れポリシー

      指定の日数 を選択します。

      フラグメントに対するルール

      値を 90 に設定します。不完全な multipart upload タスクのパーツは、作成後 90 日で有効期限切れとなり、翌日に削除されます。

    5. OK をクリックします。

  2. 特定のオブジェクトバージョンの復元

    5 月 8 日の以前のバージョンを現在のバージョンとして復元するには、以下の手順を実行します。

    1. examplebucket の管理ページで、オブジェクト管理 > オブジェクト を選択します。

    2. 履歴バージョン の横にある 表示 をクリックします。

    3. 最終変更日が 5 月 8 日の example.txt オブジェクトのバージョンを見つけます。

    4. 対象の以前のバージョンの [Actions] 列で、回復 をクリックします。

注意事項

ライフサイクルルールを使用してオブジェクトのバージョンを管理する際は、以下の点にご注意ください。

  • 現在のバージョンの有効期限切れ

    • バージョン管理が有効化されたバケットの場合、ライフサイクルルールによってオブジェクトの現在のバージョンが有効期限切れになると、OSS はオブジェクトを削除しません。代わりに、新しい現在のバージョンとして削除マーカーを追加し、有効期限切れになった現在のバージョンを以前のバージョンにします。

    • バージョン管理が一時停止されたバケットの場合、ライフサイクルルールによってオブジェクトの現在のバージョンが有効期限切れになると、OSS は null バージョン ID を持つ削除マーカーを新しい現在のバージョンとして追加します。オブジェクトは null バージョン ID を持つバージョンを 1 つしか持てないため、この新しい削除マーカーは null バージョン ID を持つ既存のバージョンを上書きします。

  • 以前のバージョンの有効期限切れ

    バージョン管理が有効化または一時停止されているバケットにおいて、ライフサイクルルールによってオブジェクトの以前のバージョンが有効期限切れになると、OSS はそのバージョンを完全に削除します。完全に削除された以前のバージョンは復元できません。

詳細については、「最終変更時刻に基づくライフサイクルルール」をご参照ください。

関連リソース

API オペレーションを使用してオブジェクトを復元することもできます。オブジェクトの以前のバージョンを現在のバージョンとして復元するには、以前のバージョンを同じバケットにコピーします。コピーされたオブジェクトが新しい現在のバージョンになります。詳細については、「CopyObject」をご参照ください。