分野 T|テクノロジ
トランザクション処理(排他制御・コミット・ロールバック・デッドロック)
今の制度の過去問(3回分)では、トランザクション処理の適切な記述を選ぶ形が、合わせて2問出ています。
シラバス案 Ver.0.1(2026年8月31日公表)の『4-17-4 トランザクション処理』
最終更新
よく出る形
- トランザクション処理の記述のうち、適切な物を選ぶ(3回分で2問)
- 問われるとしたら:事例で、更新が途中で失敗したときの対応を選ぶ形
- 問われるとしたら:コミット(確定)、ロールバック(取消し)の a〜c の組合せの形
- 問われるとしたら:デッドロック(待ち合い)が起きた状態の説明を選ぶ形
覚えること
- トランザクション:データベースへの一連の更新処理を、ひとまとまりにした単位
- コミット:一連の処理が全て成功したとき、変更結果を確定すること
- ロールバック:途中で失敗したとき、処理前の状態に戻すこと
- 確定後の変更:コミットで確定した変更は、ロールバックでは戻せない
- 同時実行制御(排他制御):複数のトランザクションが同じデータを同時に更新しようとするとき、矛盾が起きないようにすること
- ロック:更新中のデータを、ほかのトランザクションが更新できないようにすること
- デッドロック:複数のトランザクションが互いに相手のロックの解除を待ち続け、どれも進めなくなる状態
- ログ:データベースの更新履歴を記録したファイル
ひっかけ
- コミットは確定、ロールバックは取消し。取りちがえない
- 失敗時に戻すのはロールバック。排他制御は同時更新の矛盾を防ぐ
- デッドロックは、更新の矛盾ではなく、待ち合いで進めない状態
想定問題
4問(四肢択一)。選ぶと、その場で正解と解説が開きます。
このときのデータベースの対応として、最も適切なものはどれか。
正解:ウ ロールバックして、在庫数を減らした更新も取り消し、開始前の状態に戻す。
ポイント
更新が途中で失敗したときの対応を、コミット、ロールバック、排他制御、ログの働きで区別する問題です。
考え方と解き方
一連の更新は、全て成功して確定するか、失敗したら全て取り消すかのどちらかで終えます。途中までの更新だけを確定すると、在庫数と注文記録が食いちがう、と考えると誤りが分かります。
- 在庫数を減らす更新と注文記録の追加は、1つのトランザクションです。注文記録の追加が失敗したので、一連の処理は成功していません。
- 途中で失敗したときは、ロールバックで、処理を始める前の状態に戻します。
- したがって、最も適切なのは ウ です。
ほかの選択肢
- ア コミットは、全て成功したときに変更結果を確定する処理です。一部の更新だけを確定すると、在庫数と注文記録が食いちがったままになります。
- イ 排他制御は、同時の更新による矛盾を防ぐ仕組みで、失敗した更新を元に戻す働きはありません。
- エ ログは更新履歴を記録するファイルで、削除しても、行われた更新は取り消されません。
覚えておくこと
- ロールバック:途中で失敗したとき、処理前の状態に戻すこと
- コミット:一連の処理が全て成功したとき、変更結果を確定すること
(テーマ・覚えること)
適切なものだけを全て挙げたものはどれか。
- a 2つの更新がどちらも成功した時点でコミットすると、その変更結果がデータベースに確定される。
- b 送金元の更新と送金先の更新は、どちらか一方だけが確定されることがないよう、ひとまとまりとして扱われる。
- c コミットで確定した振込の変更に誤りが見つかったときは、ロールバックを行えば、確定前の状態に戻せる。
正解:ア a、b
ポイント
コミット、トランザクションのまとまり、ロールバックの働きを、a〜c で判定する問題です。
考え方と解き方
確定したあとでも元に戻せると考えて、c を適切とするのが、典型的な間違え方です。
- a は適切です。全ての更新が成功したときにコミットすると、変更結果が確定します。
- b は適切です。トランザクションは一連の更新をひとまとまりにした単位で、全て成功したときに確定し、途中で失敗したときは処理前に戻します。
- c は不適切です。コミットで確定した変更は、ロールバックでは戻せません。
- したがって、適切なのは a、b で、ア です。
ほかの選択肢
- イ c も適切としていますが、確定した変更はロールバックでは戻せないので、c は不適切です。
- ウ a が適切なのに入っておらず、不適切な c が入っています。
- エ a、b が適切なのに入っておらず、不適切な c だけになっています。
覚えておくこと
- コミット:一連の処理が全て成功したとき、変更結果を確定すること
- トランザクション:データベースへの一連の更新処理を、ひとまとまりにした単位
- 確定後の変更:コミットで確定した変更は、ロールバックでは戻せない
(テーマ・覚えること)
この食いちがいを防ぐ対応として、最も適切なものはどれか。
正解:エ 一方が更新している間はロックをかけて、もう一方の同時の更新を待たせる。
ポイント
同じデータの同時の更新で起きる食いちがいを、何で防ぐかを問う問題です。
考え方と解き方
同時の更新でも、あとで結果を確かめれば済むと考えて、コミットを保留する方法(ウ)や、後から終わった方を残す方法(イ)を選びがちです。更新が重ならないよう、順番に行わせる仕組みが要ります。
- 事例は、複数の更新が同じデータを同時に更新して、一方の更新が失われています。
- このようなときは、同時実行制御(排他制御)で、ロックにより、更新中のデータをほかの更新が変更できないようにして、矛盾を防ぎます。
- したがって、最も適切なのは エ です。
ほかの選択肢
- ア バックアップで戻せるのは、食いちがいが起きたあとです。同時の更新で食いちがいが起きること自体は防げません。
- イ 同時に進めると、更新が重なって食いちがいが起きます。あとから終わった方だけを残しても、先の更新は失われます。
- ウ 保留しても、同じデータを同時に更新する問題は残ります。更新を順番に行う仕組みが要ります。
覚えておくこと
- 同時実行制御(排他制御):複数のトランザクションが同じデータを同時に更新しようとするとき、矛盾が起きないようにすること
- ロック:更新中のデータを、ほかのトランザクションが更新できないようにすること
(テーマ・覚えること)
この状態の説明として、最も適切なものはどれか。
正解:イ デッドロックが起きていて、2つの処理が互いに相手の終了を待ち続け、どちらも進めなくなっている。
ポイント
互いに待ち合って進めなくなった状態が、デッドロックであることを問う問題です。
考え方と解き方
処理が失敗して元に戻ったわけではなく、待ち合いで止まっているだけです。同時の更新で矛盾が起きた状態とも別になります。
- 処理 P は Y を、処理 Q は X を待ち、互いに相手の更新の終了を待ち続けています。
- このように、複数の処理が互いに相手のロックの解除を待ち、どれも進めなくなる状態が、デッドロックです。
- したがって、最も適切なのは イ です。
ほかの選択肢
- ア 排他制御が働いていれば、同時の更新は起きません。この事例は、同時の更新による矛盾ではなく、待ち合いで止まっています。
- ウ 事例では、処理は失敗しておらず、待ち続けています。ロールバックされて、前の状態に戻っているわけではありません。
- エ 電源の停止は、事例に書かれていません。事例では、処理は動いたまま、互いに待ち合っています。
覚えておくこと
- デッドロック:複数のトランザクションが互いに相手のロックの解除を待ち続け、どれも進めなくなる状態
- 同時実行制御(排他制御):複数のトランザクションが同じデータを同時に更新しようとするとき、矛盾が起きないようにすること
(テーマ・覚えること)
このテーマの過去問
過去問を解く(2問)同じ分野のテーマ(テクノロジ)
- グループウェアとコミュニケーションツール(チャット・オンライン会議・CMS)今の制度の過去問(3回分)には出ていませんが、新しいシラバス案(Ver.0.1)にある項目です。問われるとしたらの形でまとめています。
- オフィスソフトの使い方(表計算の絶対参照・ピボットテーブル・差込み印刷)今の制度の過去問(3回分)では、表計算ソフトの式の問題が2問、オフィスツールの選択が1問、合わせて3問出ています。
- IoT・CPS・デジタルツイン・センサー今の制度の過去問(3回分)では、IoT の事例、自動運転のレベル、センサーの役割が、合わせて3問出ています。
- 身の回りのデジタル機器(ウェアラブル・スマートスピーカー・タブレット)今の制度の過去問(3回分)には出ていませんが、新しいシラバス案(Ver.0.1)にある項目です。問われるとしたらの形でまとめています。
- OSの役割とファイルの場所(ディレクトリパス・ショートカット)今の制度の過去問(3回分)には出ていませんが、新しいシラバス案(Ver.0.1)にある項目です。問われるとしたらの形でまとめています。
- CPU・メモリ・USB(コンピュータの中身とつなぎ方)今の制度の過去問(3回分)では、電源を切ると消えるメモリと GPU が、合わせて2問出ています。
- 入出力装置と記録媒体(プリンター・SSD・フラッシュメモリ)今の制度の過去問(3回分)では、OCR が2問、タッチパネルの方式、半導体メモリの記憶媒体、スキャナーの解像度が各1問で、合わせて5問出ています。
- RAIDと稼働率(信頼性・スケールアウト・RASIS)今の制度の過去問(3回分)では、稼働率の計算が2問、RAID の実効容量が1問、合わせて3問出ています。
- 通信プロトコル(TCP・HTTP・SMTP・POP3・DHCP)今の制度の過去問(3回分)では、ポート番号、FTP の役割、メールの送受信に使うプロトコルの組合せが、合わせて3問出ています。
- 電子メール・cookie・モバイル通信(5G・SIM・テザリング)今の制度の過去問(3回分)では、cookie、プラチナバンド、LPWA が、合わせて3問出ています。
- データベースの基本と設計(RDBMS・主キー・正規化)今の制度の過去問(3回分)では、表の用語、正規化、主キー・外部キー、データベース設計の分析が、合わせて6問出ています。
- 関係演算(選択・射影・結合)今の制度の過去問(3回分)では、2つの表を使って条件に合う行を読み取る問題が、1問出ています。
- 機械学習(教師あり学習・教師なし学習・強化学習・過学習)今の制度の過去問(3回分)では、教師あり学習・教師なし学習の手法を選ぶ a〜c の組合せが、1問出ています。
- ディープラーニング(ニューラルネットワーク・画像認識)今の制度の過去問(3回分)では、ディープラーニングに用いる技術、バックプロパゲーション、音声認識が、合わせて4問出ています。
- 生成AIの仕組み(LLM・トークン・RAG)今の制度の過去問(3回分)では、生成AIの説明を選ぶ形が1問出ています。
- 情報デザインとUI(ユーザビリティ・アクセシビリティ)今の制度の過去問(3回分)では、デザインの原則、アクセシビリティ、シグニファイアが、合わせて3問出ています。
- ユニバーサルデザインとピクトグラム今の制度の過去問(3回分)には出ていませんが、新しいシラバス案(Ver.0.1)にある項目です。問われるとしたらの形でまとめています。
- 画像・音声・動画のファイル形式と圧縮(JPEG・MP3・可逆圧縮)今の制度の過去問(3回分)には出ていませんが、新しいシラバス案(Ver.0.1)にある項目です。問われるとしたらの形でまとめています。
- 色の表し方と解像度(RGB・CMYK・dpi)今の制度の過去問(3回分)には出ていませんが、新しいシラバス案(Ver.0.1)にある項目です。問われるとしたらの形でまとめています。
- 画像処理ソフトとXR(AR・VR・メタバース)今の制度の過去問(3回分)では、AR と VR の活用事例が、合わせて2問出ています。