実体験から始める情報講座

ITパスポート講座

★ 猫本 6-06 トランザクション処理(その1) ★

ITパスポート 令和2年度 問72

2台のPCから一つのファイルを並行して更新した。ファイル中のデータnに対する処理が①~④の順に行われたとき,データnは最後にどの値になるか。ここで,データnの初期値は10であった。

ア  5
イ  10
ウ  12
エ  17

解説

(頭の準備体操)

排他制御(同時実行制御):「あるトランザクションが共有データを更新しようとしたとき,そのデータに対する他のトランザクションからの更新を禁止すること」(IP30.2.63)


① 10-5=5

② 10+7=17

③ 5をデータnに書き込む

④ 17をデータnに書き込む

最後にデータnが12となるべきところが,17となる。

よって,エである。


このように,同一のデータを同時に更新すると,データの不整合が生じる。

これを防ぐのが,排他制御である。同時実行制御ともいう。

解答

ITパスポート 令和元年度秋期 問64

データベース管理システムにおける排他制御の目的として,適切なものはどれか。

ア  誤ってデータを修正したり,データを故意に改ざんされたりしないようにする。
イ  データとプログラムを相互に独立させることによって,システムの維持管理を容易にする。
ウ  データの機密のレベルに応じて,特定の人しかアクセスできないようにする。
エ  複数のプログラムが同一のデータを同時にアクセスしたときに,データの不整合が生じないようにする。

解説

(頭の準備体操)

排他制御(同時実行制御):「あるトランザクションが共有データを更新しようとしたとき,そのデータに対する他のトランザクションからの更新を禁止すること」(IP30.2.63)


ア  アクセス制御の目的
イ  データベースの目的
ウ  アクセス制御の目的
エ  排他制御の目的(正解)

解答

ITパスポート 平成28年度秋期 問81

複数の利用者がデータベースの同じレコードを更新するときに,データの整合性を保つために行う制御として,適切なものはどれか。

ア  正規化
イ  タイマ監視
ウ  ロールフォワード
エ  ロック/アンロック

解説

(頭の準備体操)

排他制御(同時実行制御):「あるトランザクションが共有データを更新しようとしたとき,そのデータに対する他のトランザクションからの更新を禁止すること」(IP30.2.63)


ア  データの矛盾や重複を排除することを目的に,複数の表に分ける。
イ  アプリケーションのハングアップなどを防ぐために,アプリケーションの稼働状況を監視するための機能
ウ  「データベースが格納されている記憶媒体に故障が発生した場合,バックアップファイルとログを用いてデータベースを回復する操作」(FE30.2.30)
エ  「複数のユーザが同時に同じデータを更新しようとしたとき,データの整合性を保つために,そのデータへのアクセスを一時的に制限する仕組みを排他制御という。これを実現する一つの方法は,データを更新する前に,そのデータにロックをかけ,処理が終了するまでほかのユーザからのアクセスを制限することである。」(IP23.1.78)(正解)

解答