【ばっくわーどりかばり】
バックワードリカバリ とは?
💡 やり直しじゃなく「なかったことにする」データベースの巻き戻し術
📌 このページのポイント
バックワードリカバリって、なんだか難しそうな名前だね…
簡単に言うと「途中で失敗した作業をなかったことにする」仕組みだよ。たとえば銀行の振込処理が途中でシステム障害になったとき、中途半端にお金が引かれた状態を元に戻すイメージだね
どうやって元に戻すの?
データベースは更新のたびにログファイルに「更新前のデータ」を記録しているんだ。障害が起きたら、そのログを後ろから順番にたどって、変更を一つずつ取り消していくんだよ
フォワードリカバリっていうのもあるよね?違いは何?
チェックポイントっていうのも関係あるの?
実際のデータベースだと自動でやってくれるの?
そうだよ。OracleやPostgreSQLなどの主要なDBMSはトランザクションログ(WAL)の仕組みを内蔵していて、障害時のロールバックは自動で行われるんだ。DBAが手動でログを操作することはほとんどないけど、仕組みを知っておくと障害対応のときに冷静に判断できるよ
情報処理試験にも出るのかな?
データベーススペシャリスト試験の定番テーマだよ。ARIES(アリエス)というリカバリアルゴリズムが特に有名で、UNDO(バックワード)とREDO(フォワード)を組み合わせた仕組みなんだ。試験対策にも実務にも役立つ知識だね
まとめ:ざっくりこれだけ覚えればOK!
バックワードリカバリって出てきたら「未完了の処理を巻き戻して元に戻すこと」と思えればだいたいOK!
📖 おまけ:英語の意味
「Backward Recovery」 = 後方回復
💬 Backward(後方へ)+Recovery(回復)で、ログを後ろから辿って元に戻すイメージだよ