Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
S3のライフサイクル設計でハマったポイント
Search
Kumada
August 18, 2025
Technology
360
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
S3のライフサイクル設計でハマったポイント
Kumada
August 18, 2025
Other Decks in Technology
See All in Technology
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
140
取引先から届く 「セキュリティチェックシート」の読み解き方
kamadamakoto
0
150
まちスペース®とデジタルツインと「まちづくり」
hiro_ogi
0
120
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
210
JavaScript 研修 (2026)
recruitengineers
PRO
2
560
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
330
サイバー捜査員研修(後半)
nomizone
1
880
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
240
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
17
7.4k
グローバル基準のSREは、運用現場でどう機能したか:成熟度アセスメントの実践 / SRE NEXT 2026
sorawatanabe
0
240
【CEDEC2026】『GRANBLUE FANTASY: Relink - Endless Ragnarok』のバトル制作事例 ~最高のキャラゲーを目指して~
cygames
PRO
0
300
MulticaとPi Coding Agentで、小規模OSSを30本同時運用した流れ
eiei114
0
120
Featured
See All Featured
The SEO identity crisis: Don't let AI make you average
varn
0
530
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
KATA
mclloyd
PRO
35
15k
Designing for Timeless Needs
cassininazir
1
440
Code Reviewing Like a Champion
maltzj
528
40k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
940
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
450
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
First, design no harm
axbom
PRO
2
1.2k
Done Done
chrislema
186
16k
Transcript
S3のライフサイクル設計時にハマったポイント JAWS-UG初心者支部#67 真夏のStorage-JAWSコラボ回! LT資料 2025/08/14 日本アイ・ビー・エム システムズ・エンジニアリング株式会社 kumada(熊田 真由子)
2 自己紹介 • 名前:熊田 真由子(くまだ まゆこ) • 所属:日本アイ・ビー・エム システムズ・エンジニアリング 株式会社
• AWS歴 - 2022年4月新卒入社 - 配属以来、AWSのインフラ基盤設計構築に従事 - 2025 Japan AWS Jr.Champions
3 S3のライフサイクルルールとは… S3バケット内のオブジェクトに対して自動的にアクションを適用するための設定 S3のライフサイクルルール S3 Standard S3 Glacier Flexible Retrieval
作成されてから180日後に、 Glacier Flexible Retrieval に移行 作成されてから365日後に、 削除 S3 Standard
4 バージョニングとは… • 1つのファイル(オブジェクト)に同じファイル名で更新がかかった際に、更新前の状態を上書きす るのではなく、バージョンIDを区別してS3側が保持すること S3のバージョニング ファイル名=a.jpg バージョンID=1 更新前 ファイル名=a.jpg
バージョンID=2 ファイル名=a.jpg バージョンID=1 更新後 現行バージョン 非現行バージョン
5 バージョニングを有効しているS3バケットのオブジェクト削除では、論理削除、物理削除の概念がある • 論理削除:データ自体は残っているけど扱いとしては削除済みにすること • 物理削除:データ自体を消し去ること バージョニング有効時のオブジェクト削除の仕組み ファイル名=a.jpg バージョンID=2 ファイル名=a.jpg
バージョンID=1 削除マーカー バージョンID=3 削除マーカーが最新バージョ ンとして追加され、一見削除 されているように見えるが、 旧バージョンのデータが残っ た状態 • 論理削除 • 物理削除 ファイル名=a.jpg バージョンID=2 ファイル名=a.jpg バージョンID=1 削除 削除 各バージョンのファイルその ものを削除する
6 ライフサイクルルールでファイルを完全に削除するには、2段階のアクション設定が必要 バージョニング有効時のライフサイクル設計(ファイルの完全削除) 論理削除(削除マーカーの追加) 最新(現行)バージョン以外を 物理削除 ファイル名=a.jpg バージョンID=2 ファイル名=a.jpg バージョンID=1
削除マーカー バージョンID=3 1. オブジェクトの現行バージョンを 有効期限切れにする ファイル名=a.jpg バージョンID=2 ファイル名=a.jpg バージョンID=1 削除マーカー バージョンID=3 2. オブジェクトの非現行バージョンを 完全に削除 削除 削除
7 「オブジェクトの非現行バージョンを完全に削除」実行後も、削除マーカーだけ残る場合がある 削除マーカーだけが残ってしまう状態が発生 ファイル名=a.jpg バージョンID=2 ファイル名=a.jpg バージョンID=1 削除マーカー バージョンID=3 •
オブジェクトの非現行バージョン を完全に削除 削除 削除 削除マーカー バージョンID=3 • 削除マーカーのみ残る オブジェクト名に応じた Amazon S3ストレージ料金 が発生 削除マーカーだけ残った削除マーカーをライフサイクルルールで削除するには、、 • 「オブジェクトの現行バージョンを有効期限切れにする」 • 「有効期限切れの削除マーカーを削除」 のいずれかのライフサイクルルールのアクションを使って削除できる
8 削除マーカー バージョンID=3 ライフサイクルルールで削除マーカーを削除する方法① • 「オブジェクトの現行バージョンを有効期限切れにする」アクションを使った方法 • 非現行バージョンがなく、かつ現行バージョンが削除マーカーである状態のオブジェクトについては、 定義された日数が経過後、削除マーカーの削除を実行 ファイル名=a.jpg
バージョンID=2 ファイル名=a.jpg バージョンID=1 削除マーカー バージョンID=3 1. オブジェクトの現行 バージョンを有効期限 切れにする 2. オブジェクトの非現 行バージョンを完全 に削除 ファイル名=a.jpg バージョンID=2 ファイル名=a.jpg バージョンID=1 削除マーカー バージョンID=3 削除 削除 3. オブジェクトの現行 バージョンを有効期限 切れにする 削除 削除マーカーが追加され てからの経過日数で削除 =1からの経過日数 「オブジェクトの現行バージョンを有効期限切れにする」の実行を、オブジェクト作成から365日後と定義してい た場合、削除マーカー削除実行までは1の実行(=削除マーカーの作成)から数えて365日かかる (ただし、2が実行された時点で、1で定義している日数が経過している場合は、2の実行後に自動で削除される) 同じアクション
9 ライフサイクルルールで削除マーカーを削除する方法② • 「有効期限切れの削除マーカーを削除」アクションを使った方法 • 有効期限切れの削除マーカーとは、非現行バージョンがなく、かつ現行バージョンが削除マーカーで ある状態のオブジェクトを指す 削除マーカー バージョンID=3 ファイル名=a.jpg
バージョンID=2 ファイル名=a.jpg バージョンID=1 削除マーカー バージョンID=3 1. オブジェクトの現行 バージョンを有効期限 切れにする 2. オブジェクトの非現 行バージョンを完全 に削除 ファイル名=a.jpg バージョンID=2 ファイル名=a.jpg バージョンID=1 削除マーカー バージョンID=3 削除 削除 3. 有効期限切れの削除 マーカーを削除 削除 1日1回非同期で削除が実行 ※「オブジェクトの現行バージョンを有効期限切れにする」と「有効期限切れの削除マーカーを削除」は、 同じルールで設定不可、ルールを分ける必要あり
10 • バージョニング有効時のライフサイクル設計では、オブジェクトを完全に削除したい場合、物理削 除までするよう気を付ける • 削除マーカーは残っていると、微々たる量ではあるが課金が発生してしまうので、消すライフサイ クルルールを必要に応じて設定する まとめ