IT初心者の為のページ

IT関連企業に所属している私が 、IT関連の知識(?)や噂、面白ネタなどを 中心に解りやすくギャグテイストで 更新していきます。

【IT資格】排他制御について

スポンサーリンク

style="display:inline-block;width:336px;height:280px"

data-ad-client="ca-pub-3427361850690554"

data-ad-slot="3629978829">

今回で言う所の排他制御っていうのは、データベースで

言う所の排他制御です。

データベースと言うのは、言わずと知れた、企業や組織の

情報の図書室の様なもので、何か判らないことや、参照

したい事がある場合にはこのデータベースを参照して

必要な情報を確認したり、情報が変化した際には変更を

上書き出来たりする便利なものですが。

単純な話、このデータベースと言うのは、例えば何ですが

一つの会社の会社員全員が情報を変更出来たり、改ざん出来

たりするとマズイものなのです。

例を挙げると、例えば商品Aと言うものが現時点で二つあったと

します。その時点でBさんという人がこの商品Aの情報がある

データベースにアクセスしており、この商品が一つ売れて残り

一つになっていたとします。となると、商品Aは現時点で残り

一つなので、数を二つから一つに変更しなければいけない、Bさんが

この時点で商品Aの情報を一つに書き替えた、とします。

しかし、実はBさんがアクセスした直後にCさんもこの商品Aの

残りの数を確認するために同じデータベースに入っていたとしたら、、

残りは既に一つしか無いにも関わらず、画面で見えている商品Aの

データは二つ。と表されている状態で、Cさんはこの商品Aを三つ

売ってしまいました。さてどうなるでしょう、、と言う感じで

こう言った矛盾点を無くすための制御が、排他制御と言うものです。

簡単に言えば、誰かがあるデータベースを使っている間、他の人は

この「あるデータベース」に書き加えたり、変更したりする事が

出来ないようにするものです。

この排他制御には、二種類あって

・共有ロック

・占有ロック

があります。共有ロックは、ロックをかけている人以外がこの情報に

アクセスし、内容を読むことに問題はありませんが、情報を変更

することができない状態にするものです。

占有ロックは、ロックをかけている人以外は内容を読むことも情報を

変更することも出来ない状態です。なので、商品発注などの際は

こちらの占有ロックのほうが良いかもしれませんね。常に正確な

情報が確認出来るわけですから。

ちなみに「デッドロック」と言う現象がありますが、これはほぼ同時に

ロックをかけた人が存在するときに、処理が進まなくなってしまう現象

です。まあ、いわば一つのバグと言うか、フリーズ状態になってしまう

って言うことですね。

関連記事

【IT資格】画像データ

【IT資格】音声データ

【IT資格】フォルダ、ディレクトリ