×
データベース

排他制御(DB)の解説(基本情報技術者シラバス用語)

排他制御(DB)とは

排他制御とは、データベースにおいて複数のユーザーが同時に同じデータを書き換えようとしたときに、データの矛盾や破壊を防ぐための仕組みです。もし同時に複数の書き込みが行われると、後から書き込まれたデータで上書きされ、先に書き込んだ内容が消えてしまう「更新消失」などの問題が発生します。これを防ぎ、データの整合性を担保するために、ある処理がデータを編集している間は、他の処理がそのデータを変更できないように「ロック(鍵)」をかけます。

ロックには、データを読み込むことはできるが変更はさせない「共有ロック」と、読み込みも変更も制限する「占有ロック」があります。これらを適切に使い分けることで、データの正しさを保ちながら、多くのユーザーが効率よくデータベースを利用できるようになります。

具体例

例えば、残り1席の飛行機の座席予約システムを考えてみましょう。AさんとBさんが同時にこの座席の購入ボタンを押しました。