トランザクション関連 |
---|
◆ ACID特性 DBMS( DataBase Management System の略 要は Oracle や SQLServer 等のこと) が持つべき特性についてです。
過去問題では、よく原子性について出題されるそうです。 ◆ 障害回復について まずは、トランザクションについて記述しておきます。 トランザクションとは、関連する複数の処理を一つの処理単位としてまとめたものを言います。 簡単に言えば、何か商品を買ったとすれば、注文表にデータが1つ追加し、在庫から個数分減らす処理を1つのトランザクションと呼びます。 ここでは、そのトランザクションの処理中に、何らかの障害で処理が停止するとデータの更新がどの辺りまで進んでいるのか分からなくなり整合性が取れなくなります。 そこでデータの状態を、障害発生前の整合性の取れた状態にするのがロールバック、またはロールフォワードです。 ロールバックとは、トランザクションが開始する前の状態に戻すことを言います。 通常は処理中にディスクが壊れたとかではない何らかのエラー(通信エラーとか)で、トランザクションが中断された場合に行なうものです。 ロールフォワードとは、通常はディスクが壊れた時に使われる操作であって、バックアップファイルを使用して一旦データを復元します。 そのあとバックアップ後に更新されたデータはログファイル(ジャーナルファイル 過去問題では「更新後情報」などで出題されている)など使用して、復元します。 過去問題でも出題されたのがチェックポイント。 チェックポイントとはトランザクションによるデータの更新をメモリに蓄積しておき、一定の間隔でまとめて記録されています。 (コミットとはまた別のもの) このタイミングをチェックポイントと言い、このチェックポイントが完了したトランザクションはディスクに反映済みなので、それ以前のデータの回復作業は不要となります。(ディスクが壊れたとかではなければ) ◆ 2相コミットについて 分散システム(分散データベース)のトランザクションのシステムです。 データを分散管理しているので、データの整合性が合うように調停者というものをおき、コミットしたい時に調停者に問い合わせないといけないシステムです。
|
TOPページに戻る |