PMプロジェクトマネージャ試験 午前Ⅰ
平成31年度春期 プロジェクトマネージャ 午前Ⅰ 問9
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- ア整合性の取れたデータベースに対して,トランザクション実行後も整合性が取れている性質である。
- イ同時実行される複数のトランザクションは互いに干渉しないという性質である。
- ウトランザクションは,完全に実行が完了するか,全く実行されなかったかの状態しかとらない性質である。
- エひとたびコミットすれば,その後どのような障害が起こっても状態の変更が保たれるという性質である。
解き方のヒントを見る
性質が守る対象から説明を見分ける
トランザクションの各特性は、それぞれ別の種類の問題に備えるために定められています。指定された性質の名前だけで判断せず、その説明がどのような状況で何を保証しようとしているのかに着目して、他の特性の説明と区別して考えましょう。
この問題で問われていること
問われているのは用語の暗記よりも、ある性質が「何が起きたときに」「何を守るか」を他の性質と取り違えずに捉えられるかです。似た言葉で書かれた説明でも、想定している状況や守る対象が異なれば別の特性を指す点に注意します。
視点
トランザクションの特性は、それぞれがある懸念に対する約束として定められたものと整理すると区別しやすくなります。どの記述を検討する場合も、その記述が何を保証しようとしているのかを自分の言葉で言い換えてみてください。言い換えた内容が、指定された性質の約束と一致しているかを確かめます。キーワードが似ていても、保証しようとしている中身が別の性質の約束と重なっていないかを落ち着いて見直すことが大切です。
確認ポイント
- 指定された性質が、どのような懸念に備えるための約束なのかを自分の言葉で説明できるか
- 検討している記述が、どの状況を想定し、何が損なわれるのを防ごうとしているかを言い換えたか
- 言い換えた内容が、指定された性質ではなく別の特性の約束に当てはまっていないかを見直したか
正解と解説を見る
正解
ア
解説
一貫性(Consistency)は、整合性の取れたデータベースに対してトランザクションを実行した後も、整合性が保たれるという性質です。したがって正解はアです。イは独立性、ウは原子性、エは耐久性の説明です。
正解の理由
一貫性とは、トランザクションの実行前にデータベースが整合性制約(主キーの一意性、参照整合性、業務上のルールなど)を満たしていれば、実行後も制約を満たした状態が保たれるという性質です。選択肢アは「整合性の取れたデータベースに対して、トランザクション実行後も整合性が取れている性質」と述べており、この定義と一致します。
他の性質との比較
イの「同時実行される複数のトランザクションが互いに干渉しない」は独立性(Isolation)です。ウの「完全に実行が完了するか、全く実行されないかの状態しかとらない」は原子性(Atomicity)で、処理の一部だけが反映された中途半端な状態を許しません。エの「コミット後はどのような障害が起きても変更が保たれる」は耐久性(Durability)です。
選択肢ア(正解)
これは正解だよ。一貫性(Consistency)は、トランザクションの実行前にデータベースが整合性制約(主キーの一意性、参照整合性、残高が負にならないといった業務ルールなど)を満たしていれば、実行後もその制約を満たした状態が保たれるという性質だよ。アは「整合性の取れたデータベースに対して、トランザクション実行後も整合性が取れている」と述べていて、この定義にそのまま当てはまるよ。
選択肢イ
これは不正解だよ。同時に実行される複数のトランザクションが互いに干渉せず、一つずつ順番に実行した場合と同じ結果になることを保証するのは、独立性(Isolation)の説明だよ。ロックなどの排他制御で実現される性質で、実行後の整合性を保つ一貫性とは別の特性なんだ。
選択肢ウ
これは不正解だよ。トランザクションは「完全に実行が完了する」か「全く実行されない」かのどちらかの状態しかとらない、つまり処理の一部だけが反映された中途半端な状態を許さないという性質は、原子性(Atomicity)の説明だよ。途中で失敗したときはロールバックで実行前の状態に戻すことで実現されるよ。一貫性の説明ではないね。
選択肢エ
これは不正解だよ。いったんコミットすれば、その後にシステム障害などが起きても変更内容が失われずに保たれるという性質は、耐久性(Durability、永続性ともいう)の説明だよ。ログの記録や、ロールフォワードによる障害回復などで実現される性質で、一貫性の説明ではないよ。
学習のポイント
ACID特性の四つの性質の名前と定義を正しく対応付け、それぞれを区別できるようにすること。
出典:独立行政法人 情報処理推進機構(IPA)平成31年度春期 プロジェクトマネージャ試験 午前Ⅰ 問9(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針