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
バックアップと静止状態
Search
Satoru Takeuchi
PRO
July 01, 2021
Technology
140
0
Share
バックアップと静止状態
以下動画のテキストです
https://youtu.be/SIlS8pQWfnc
Satoru Takeuchi
PRO
July 01, 2021
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
システム強制終了時にファイルシステムの整合性を保つ~ コピーオンライト編 ~
sat
PRO
0
40
システム強制終了時に ファイルシステムの整合性を保つ ~ ジャーナリング編 ~
sat
PRO
1
45
ファイルシステムの整合性を回復するfsck
sat
PRO
1
45
小学校5,6年生向けキャリア教育 大人になるまでの道
sat
PRO
8
3.9k
ファイルシステムの不整合
sat
PRO
2
140
書籍執筆での生成AIの活用
sat
PRO
2
480
ChatGPTに従って体調管理2026
sat
PRO
0
180
eBPF
sat
PRO
1
150
waruiBPF
sat
PRO
0
130
Other Decks in Technology
See All in Technology
生成AIが変える SaaS の競争原理と弁護士ドットコムのプロダクト戦略
bengo4com
1
3.4k
AgentCore×VPCでの設計パターンn選と勘所
har1101
4
380
コードや知識を組み込む / Incorporate Code and Knowledge
ks91
PRO
0
210
雑談は、センサーだった
bitkey
PRO
2
200
もっとコンテンツをよく構造化して理解したいので、LLM 時代こそ Taxonomy の設計品質に目を向けたい〜!
morinota
0
170
多角的な視点から見たAGI
terisuke
0
120
AIと乗り切った1,500ページ超のヘルプサイト基盤刷新とさらにその先の話
mugi_uno
2
300
『生成AI時代のクレデンシャルとパーミッション設計 — Claude Code を起点に』の執筆企画
takuros
2
2.1k
Digital Independence: Why, When and How
wannesrams
0
280
GitHub Copilot CLI と VS Code Agent Mode の使い分け
tomokusaba
0
140
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
530
AndroidアプリとCopilot Studioの統合
nakasho
0
200
Featured
See All Featured
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
110
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Prompt Engineering for Job Search
mfonobong
0
290
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Building Adaptive Systems
keathley
44
3k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
190
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
230
Code Reviewing Like a Champion
maltzj
528
40k
Site-Speed That Sticks
csswizardry
13
1.2k
Git: the NoSQL Database
bkeepers
PRO
432
67k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Transcript
バックアップと静止点 Jul. 1st, 2021 Satoru Takeuchi twitter: satoru_takeuchi, EnSatoru 1
バックアップの課題 • バックアップはいつでも取っていいというわけではない ◦ バックアップ中のデータは変化しうる • 例: 以下ディレクトリdir0のバックアップをとる 2 foo
bar dir0 file0 file1
理想的なケース 3 foo bar dir0 file0 file1 foo bar dir0
file0 file1 foo bar dir0 file0 file1 foo dir0.bak file0 foo bar dir0.bak file0 file1 コピー開始 file0をコピー file1をコピー
まずいケース 4 foo bar dir0 file0 file1 foo bar dir0
file0 file1 foo baz dir0 file0 file1 dir0.bak foo baz dir0.bak file0 file1 バックアップ開始 file0をコピー file1をコピー foo baz dir0 file0 file1 foo dir0.bak file0 別のプロセスが file1を更新 foo file0
まずいケース 5 foo bar dir0 file0 file1 foo bar dir0
file0 file1 foo baz dir0 file0 file1 dir0.bak foo baz dir0.bak file0 file1 バックアップ開始 file0をコピー file1をコピー foo baz dir0 file0 file1 foo dir0.bak file0 別のプロセスが file1を更新 foo file0 • 正しいデータをバックアップでき ていない
もっとまずいケース 6 foo bar dir0 file0 file1 コピー開始 file0を途中(“fo”)ま でコピー
file0の残りとfile1をコピー foo bar dir0 file0 file1 fo dir0.bak file0 別のプロセスがfile0 を”baz”に書き換え baz bar dir0 file0 file1 fo dir0.bak file0 baz bar dir0 file0 file1 foz dir0.bak file0 bar file1
もっとまずいケース 7 foo bar dir0 file0 file1 コピー開始 file0を途中(“fo”)ま でコピー
file0の残りとfile1をコピー foo bar dir0 file0 file1 fo dir0.bak file0 別のプロセスがfile0 を”baz”に書き換え baz bar dir0 file0 file1 fo dir0.bak file0 baz bar dir0 file0 file1 foz dir0.bak file0 • 正しいデータをバックアップでき ていない • file0の中身に不整合発生 bar file1
解決策 • バックアップ時にはデータを誰も更新しない状態にする ◦ 静止点(quiescent point)、静止状態(quiescent state)などと呼ぶ • バックアップが終われば更新再開 •
静止点を作るための機能もある ◦ 例: Linuxのファイルシステムにおける fsfreezeコマンド 1. fsfreeze -f <mount point> # 静止点を作る(freeze)。以後のwriteはブロックされる 2. cp -a <mount point> backup # バックアップをとる 3. fsfreeze -u <mount point> # データ更新再開 8 時間 データ更新可 不可 可 バックアップ開始! 終了!
さらなる課題 • データ量が増えるほど静止点を保持しなければならない時間が長くなる ◦ その間データの更新ができない 9 時間 データ更新可 小さなデータの場合 不可
可 大きなデータの場合 データ更新可 不可 可 バックアップ開始! 終了!ちょっと辛かった! バックアップ開始! 終了!すげえ辛かった!
まとめ • バックアップはいつ取ってもいいというわけではない • データを更新しない静止点を作った上で採取する必要がある • データ量が多いほど静止点を保持する時間が長くなるので辛い ◦ 📝 解決策は今後の動画で
! 10