データベーススペシャリスト

データベーススペシャリスト試験 ACID特性のAC 2層コミット

今回は短めです。ACIDのACの部分の補足です。

ACとは「Atomicity 原始性」「Consistency 一貫性」です。

今回は特殊パターン?の2層コミットに関して解説します。

原始性と一貫性

トランザクションにおける原始性とは

「すべて成功かすべて失敗」にするという事です。

中途半端な処理は許しません。

 

一貫性とは矛盾しないデータという事です。

詳しくはこちらで解説しています。

データベーススペシャリスト試験 トランザクションと排他制御 解説DBMSとは,データベースと それを扱うソフトウエアの事です。 データベースはそれをためておく場所 MSはマネージメントシステムな...

分散DBにおける2層コミットメント制御

2層コミットメントとは,

例えば大阪と東京などに,物理的に離れた場所に

データベースが分散されて配置されている場合で

その中のデータの整合性を合わせておく必要がある場合に

使用します。

 

例えば大阪にトランザクション処理をしてコミットし,

東京にトランザクション処理をしてコミットする場合,

最初の大阪は成功したけど東京では失敗したって場合は

東京だけロールバックしても意味がないですよね?

 

大阪もしっかり,データを戻す処理が必要です。

でも大阪のデータを戻す最中にエラーになったら?って

考えたら,非常に複雑なエラー処理になります。

 

そこで,大阪のトランザクション処理をして

OKだった場合,コミットかロールバックをするよっていう

状態にしておいて,

東京のトランザクション処理をします。

 

東京も成功した場合に

大阪と東京のデータを両方コミットします。

 

これを2層コミットメントといいます。

SQLやデータベースについてもっと学びたい方は次の記事でおすすめの書籍を紹介しています↓

SQLServerやデータベースに関する書籍のおすすめランキング!SQLをこれからはじめようと思っている人や,普段SQLを使った仕事をしているけどもっと詳しくなりたい!という方向けに,どんな本を読めばい...

<<   1   2   3   4   5   6   7   8   9    10   11   12   >>

トップページへ戻る

 

オブジェクト指向の原則 単一責務の原則

C#を正しい3層構造で造れてますか?

非売品コースを受け取る

#00_はじめに
#01_単一責務の原則とは
#02_原則違反の例
#03_変更理由単位でクラスを分ける
#04_3層構造の例
#05_修正箇所を最小にできる
#06_修正する場所が明確になる
#07_共通化しましょうという話ではない
#08_少々悪いコードでも問題視しない理由
#09_探しやすいコード
#10_クラスは機能ごとに小さく作る
#11_小さなクラスがそれぞれに協調して目的を達成させる
#12_多数の部品群のなかから摘まんで作る
#13_クラスはどこまで小さくすればいいのか
#14_アンダーソン式単一責務の原則
#15_最小カプセルの検証_監視タイマークラス
#16_最小カプセルの検証_受注画面クラス
#17_最小カプセルの検証_ユーザークラス
#18_最小カプセルの検証_商品マスターデータアクセス
#19_登場人物に合わせたモデリングの四角と線
#20_四角と線を最小カプセル化する
#21_アンダーソン式手順
#22_パターンを見つけ出す
#23_プログラミングの自問
#24_さいごに