平成30年度秋期 応用情報技術者試験 午前 問30

分野:データベース|実際に出題されたIPA過去問題

データベースシステムにおいて,二つのプログラムが同一データへのアクセス要求を行うとき,後続プログラムのアクセス要求に対する並行実行の可否の組合せのうち,適切なものはどれか。ここで,表中の○は二つのプログラムが並行して実行されることを表し,×は先行プログラムの実行終了まで後続プログラムは待たされることを表す。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より

※選択肢ア〜エは上の図表内に記載されています。

解答・解説を見る

正解:エ

AI解説

正解はエ。排他制御では、参照(読取り)には共有ロック、更新(書込み)には専有(排他)ロックを掛ける。共有ロック同士は両立するため「参照と参照」だけが並行実行可(○)で、どちらか一方でも更新を含む組合せ(参照と更新、更新と参照、更新と更新)は待たされる(×)。この組合せを示した表が正解である。 ア: 誤り。更新を含む組合せに○が付いているなど、共有ロックと専有ロックの両立関係に反する表である。 イ: 誤り。例えば参照同士を×とするなど、共有ロック同士は両立するという原則に合わない表である。 ウ: 誤り。更新同士や参照と更新の組合せを並行実行可としており、データの一貫性が保てない(ロストアップデートなどが起きる)表である。 エ: 正しい。参照(共有ロック)同士のみ○、更新(専有ロック)が絡む組合せは全て×という、ロック両立性行列のとおりの表である。 💡 ロック両立性は「共有×共有だけOK、専有が絡めば全部NG」と覚える。読み手同士は邪魔しないが、書き手は誰とも同時に触れない、とイメージすると忘れない。

出典:平成30年度 秋期 応用情報技術者試験 午前 問30 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「データベース」分野の攻略ポイント

関係モデル・正規化・SQL・トランザクション管理・障害回復・データベース設計が中心です。計算問題は少なく、定義と手順を正確に覚えていれば確実に得点できる、いわば「取りこぼしてはいけない」分野です。特に正規形とACID特性は毎年のように形を変えて出ます。

データベースの攻略ポイントをすべて見る(要点5項目・ひっかけ3項目)→

同じ分野(データベース)の過去問