S3 Versioningを理解する

Versioningの版IDと削除マーカーを読み解き、誤上書きから復元できる保存設計を学びます。

この単元で学ぶこと

  • 版と削除マーカーの動作を説明する
  • 過去の版を復元する方法を判断する
  • 版保持の費用と権限を管理する

本文解説

1. キーと版ID キーはinvoice.csvのような保存名です。Versioningが有効なバケットでは、同じキーへの書込みでも版IDが異なります。キーだけを指定する取得と、特定の版IDを指定する取得の違いが出発点です。

2. 上書き後の履歴 月曜日にv1、火曜日にv2を保存した場合、通常の取得は最新のv2を返します。v1は非現行版として残り、必要な権限があれば版IDで取得できます。ファイルの変更差分だけが保存されると仮定しないでください。

3. 版IDなしの削除 Versioning有効時に版IDを指定せず削除すると削除マーカーが最新になります。通常の取得では削除済みとして見えますが、過去のデータ版がその場で全消去されるわけではありません。画面で見えない状態とデータ消失を区別します。

4. 版を指定した削除 特定の版IDを指定する削除はその版の完全削除です。Object Lock等の保護がなく認可された場合、以前の版を残す機能だけでこの操作を防げません。削除権限を業務ロールと保管管理ロールで分ける設計が役立ちます。

5. 復元の二つの見方 過去の内容を読むだけならその版IDを指定します。過去の内容を通常取得の最新として使いたいなら、以前の版を同じキーへコピーして新しい現行版を作る方法を検討します。削除マーカーを取り除く方法も、どの版が最新になるか確認して使います。

6. 停止は消去ではない Versioningを一度有効にしたバケットでは、停止しても既存の版は消えません。停止後のnull版の扱いは有効状態と異なります。保護を続けたい環境では、費用対策として不用意に停止する前にLifecycleを検討します。

7. 非現行版の整理 現行版に有効期限を設けるだけでは、残っている古い版の保存量を十分に管理できません。NoncurrentVersionExpiration等を別に検討します。監査や復元で必要な期間を短くしすぎないよう、削除条件を実データへ適用する前に確認します。

8. 費用を数える 20 MBの版を4版残せばデータ量は80 MBです。毎日大きなファイルを全更新する処理では履歴が急増します。復元試験ではキー一覧だけでなく版一覧を確認し、過去版取得と削除マーカーの扱いを試します。

図解

版IDなしの削除後
この例はVersioning有効のバケットです。版IDを指定した削除は別の動作です。

重要ポイント

  • 版IDが個々の内容を識別する。
  • 削除マーカーと版の完全削除は別。
  • 非現行版も保存量と権限の管理が必要。

間違えやすい点

  • 削除マーカーを全履歴消去と取り違える。
  • Versioningを削除禁止機能と考える。
  • 現行版の有効期限だけで全履歴が整理されると考える。

用語解説

非現行版
同じキーに残る最新以外のデータ版。
削除マーカー
版IDなし削除等で追加され、通常の取得を削除済みとして見せる版。
null版
Versioning未有効や停止時の書込みで扱われる版IDがnullの版。

関連教材

参考資料

教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。

確認問題の出題・採点や学習履歴の保存にはログインが必要です。