DBトランザクション制御と回復(COMMIT・デッドロック・ロールフォワード)

更新日:

用語解説

トランザクションの確定、並行処理の競合、障害後の回復方法をまとめて整理します。

■ 試験で押さえるポイント

  • 処理と回復 COMMITはトランザクションの更新を確定します。

  • 一般に更新内容を回復可能にするログが安定記憶へ書き出された時点で完了として扱います。

  • デッドロックは複数の処理が互いのロック解放を待ち続ける状態です。

  • 資源を常に同じ順序で確保する、処理を短くする、タイムアウトを設けるなどで回避・検出します。

  • ロールフォワードはバックアップを復元した後、更新後ログを順に適用して障害直前の状態へ進める回復方法です。

  • ロールバックは未完了処理を更新前情報で取り消します。

処理

目的

判断ポイント

COMMIT

更新を確定

回復可能なログの安定記憶への書込み

ROLLBACK

未完了更新を取消し

更新前情報で後退復帰

ROLLFORWARD

バックアップ後の更新を再適用

更新後ログで前進復帰

デッドロック回避

相互待ちを防止

全処理でロック取得順を統一

解説画像

音声で聞く

同じ分野の用語