ロールバック
【英】roll back
ロールバックとは、データベース処理において、トランザクション処理中にエラーが発生した場合に、そのトランザクション処理を開始する前の状態までデータベースを戻すことである。
トランザクションは、関連する複数の処理を1つの処理単位として捉えたものであり、一度トランザクションを開始したら該当するトランザクションに含まれるすべての処理が正常に終了しなければならない。これは、データベースの整合性が維持されなくなるからである。このトランザクション中に異常終了してしまったり、処理中の状態のまま通常よりも大幅に時間が経っている場合などに、一旦処理を中止してロールバックを行う。ロールバックによって処理前のデータベースの状態に戻し、再び1から同じトランザクション処理をすることで、データベースのデータに整合性が保たれる。
データベースでは、プログラムさえ正しければ常に異常なく稼動するわけではなく、例えば、データ更新時にネットワーク障害が起きればデータがなくなってしまうこと(データ落ち)も起きるし、他のシステムの異常でデータベースが認識できない場合などもあり得る。そのためロールバックの機能は重要視される。
|