とあるITエンジニアたちの備忘録

新米エンジニア5人がお送りする、ちょっとためになる話

トランザクション管理と障害回復

みなさんこんにちは!!

最近飲むヨーグルトを毎日飲み始めた

chikokokoです。

高校までは運動を毎日おこなっていたので健康を意識して

いなかったのですが最近1人暮らしを始めて健康に気をつかわなければと

思うようになりました。

 

今回はトランザクション管理と障害回復についてお伝えできれば

なと思います。

 

トランザクションとは

トランザクションとは1連の処理をひとまとめにしたものをトランザクション

呼びます。

データベースはこのトランザクション単位で更新処理を管理します。

トランザクションでは1連の流れのなかでどこか1箇所でもエラーが発生したら、

全体を取り消しにしないといけません。

データベース更新前の状態を更新前ジャーナルから取得して、データベースを

データベースをトランザクション開始直前の状態にまで戻します。

この処理をロールバックと呼びます。

 

ジャーナルとは・・・コンピュータや通信機器が半自動的に記録する更新履歴

          や通信記録の情報のこと

 

一方、ディスク障害などでデータベースが故障してしまった場合は、定期に保存してあるバックアップファイルからデータを復元します。

データベースに行った更新情報をバックアップ以降の更新後ジャーナルから取得してデータベースを障害発生時直前の状態にまで復旧させます。

バックアップファイルによる復元からここに至るまでの一連の処理を

ロールフォワードと呼びます。

 

トランザクションを行われないと大きなトラブル

(例えば銀行振り込みをした際1つの処理がこけると一方の口座は減らされているのに

もう一方の口座では増えていないということがある等)が起こる可能性があるので

データベースというのはとても繊細なものだということがわかります。

 

今回は以上です。

ありがとうございました。