ゼロから始める資格学習
全23章・シラバス6.5保存した教材
← 第21章「データベース」の目次へ
21-08 · トランザクション処理3節・復習・3問

同時更新の衝突を調整する

このパートで確かめること
  • 両方の更新を反映した正しい結果を確認する
  • 古い値による判断を防ぐ排他制御の手順を選ぶ
  • デッドロックを通常の待ちと区別し、予防や解消を説明する
表示・保存
説明 1 / 3
このページの目次 3節・復習と3問
  1. 1説明を読む
  2. 2復習する
  3. 3問題を解く
  4. 4次へ進む

1同じ残高を同時に読むと

残高10,000円をAとBが同時に読んだ例を考える。Aは1,000円減らして9,000円を書き、Bは古い10,000円から2,000円減らして8,000円を書くと、Aの更新が消える。正しくは合計3,000円減って7,000円だ。

同時実行制御は、こうした食い違いを防ぎながら複数の処理を進める仕組み。単に処理を高速化するだけでは解決しない。どのデータをいつ読んで更新するかを調整する必要がある。

古い残高で上書きする例
項目意味・例
A10,000−1,000=9,000
B古い10,000−2,000=8,000
正しい合計10,000−1,000−2,000=7,000

例は学習用です。

ハルとビットで、使い方を確かめよう

ハル

残高を速く保存すれば大丈夫?

ビット

古い値を読んでいる問題は残るよ。更新の順序を調整しよう。

2ロックで対象を保護する

排他制御は、一つの処理が更新中のデータに対して、競合する他の処理のアクセスを制限する仕組み。ロックはそのための制御の手段。Aの更新が終わるまでBを待たせれば、Bは更新後の9,000円を読んで7,000円にできる。

読取り同士は共存できるなど、実際の制御ロックの種類・粒度・方式による。表全体を常に一人しか使えなくする、と決めつけない。ロックはアクセスの調整、コミットは確定、ロールバックは取消しだ。

順序を調整する
項目意味・例
Aが保護して更新10,000→9,000
A終了後にBが更新9,000→7,000
結果両方の更新を反映

例は学習用です。

3互いの解放待ちを解消する

デッドロックは、複数の処理が互いに相手の持つ資源の解放を待ち、進めなくなる状態。Aが商品XをロックしてYを待ち、BがYをロックしてXを待つと循環になる。単に一方が待っているだけとは違う。

対策には、資源を取る順序を統一して予防する、循環を検知して一方を取り消し再実行するなどがある。チェックポイントバックアップ障害回復の仕組みで、待合せの循環そのものを解消する操作ではない。

デッドロック:互いに解放を待つ
処理AXを保持しているYを待つXを待つ処理BYを保持している

AはBが持つY、BはAが持つXの解放を待ち、どちらも進めません。矢印はデータの流れではなく「相手の資源解放を待つ」関係を示します。

ハルとビットで、使い方を確かめよう

ハル

待つこと全部がデッドロック

ビット

互いの解放待ちが循環して進めない状態をいうよ。

2

復習

このレッスンを振り返ろう

同じ10,000円を元に二つの引落し結果を上書きすると何が起こりますか。

答え方と、確認するポイント

一方の更新が失われることがあります。1,000円と2,000円の両方を反映した7,000円になるよう、読取りと更新の順序を調整します。

保存だけを順番にすれば、古い残席を二人が使う問題は解決しますか。

答え方と、確認するポイント

古い値を読んで判断する問題が残ります。競合する確認と更新を保護し、次の処理が更新後の値を確認するようにします。

AとBが互いの資源を待つ状態をどう予防しますか。

答え方と、確認するポイント

資源を取得する順序を統一して循環を作らないようにします。起きた循環を検知して一方を取り消し、再実行する解消策もあります。

3

問題で確かめる

学んだことを問題で確かめよう

入門の確認問題3問で、この範囲の考え方を使います。答えを選んだら、正解の理由とほかの選択肢の違いも確かめましょう。

オリジナル入門問題1 / 3問
10,000円から1,000円と2,000円を正しく差し引いた残高は?
ヒントを見る

二つの引出額の両方を、元の残高から差し引きましょう。

オリジナル入門問題 · シラバス 6.5

3問中0問の答えと解説を確認しました。選んだ答えの理由も確かめてから、次へ進みましょう。

自作解説 · 2026.09.15 確認
出典・参考資料を確認する

学習範囲:IPA シラバス Ver.6.5 ↗ 項目57。身近な例・会話・図解・確認問題は当サイトのオリジナルです。

学習範囲と参考資料

シラバスは学習範囲の根拠です。説明は参考資料を基に当サイトが作成しています。身近な事例・会話・図の数値は学習用の架空例です。2026年9月10日確認。

3問 / 操作体験

模試の操作を試す

解答から結果の確認までを、3問で体験できます。100問・120分の第1模試も無料で利用できます。