DBデータベーススペシャリスト試験 午前Ⅱ

令和6年度秋期 データベーススペシャリスト 午前Ⅱ 問15

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

トランザクションT₁とT₂の並行実行における不整合検索異状(inconsistent retrieval anomaly)の説明はどれか。

選択肢

  1. ア
    T₁がxを更新した後コミットする前に,T₂もxを更新すること
  2. イ
    T₁とT₂が同時にデータxを読み,T₁はxを更新する。T₂は更新前のxの値に基づいてデータyを更新することによって,yの値がxの値に基づかなくなること
  3. ウ
    先行するT₁が更新したデータxを,後続のT₂が読んで処理を行うとき,T₁がロールバックすると,T₂もロールバックしなければならなくなること
  4. エ
    先行するT₁が更新したデータxを,後続のT₂が読んで処理を行った後に,T₁がロールバックすることによって,T₂は結果的に誤った処理になること
解き方のヒントを見る

不整合検索異状の確認視点

並行するトランザクションが同じデータを扱う場面で、読み取りの時点と更新の前後に注目し、各処理が得た情報の一貫性をどのように捉えるかを整理するためのヒントです。

この問題で問われていること

この問題では、二つの処理が同時進行することで、同一対象への読み取り結果がどの時点の状態を表すのかに焦点を絞り、更新との関係と観測された値の整合性を確認してください。

視点

不整合検索異状は、並行実行中の読み取りがどの状態を観測したものかを整理する観点で捉えます。処理の順序、読み取り、更新の関係を区別して確認しましょう。

確認ポイント

  • 読み取りが行われた時点を確認する
  • 別の処理による更新との前後関係を整理する
  • 観測した情報が一貫した状態を示すか考える
正解と解説を見る

正解

イ

解説

不整合検索異状は、並行実行中に古い値を基に別データを更新し、データ間の関連性が崩れる現象です。設問では、T₁とT₂がxを読み、T₁の更新前のxを基にT₂がyを更新するため、xとyの整合した関係が失われる。

理由

正解はイ。T₁とT₂がxを同時に読み、T₂が更新前のxを基にyを更新すると、T₁によるxの更新後には、yが現在のxに対応しない状態になる。このように、複数データの整合性が崩れる現象が不整合検索異状です。

比較

アは同じデータを同時期に更新する更新競合、ウはロールバックの影響が後続処理へ及ぶ連鎖的な問題、エは未確定の更新結果を読み取った後に更新元がロールバックする問題を述べており、不整合検索異状の定義とは異なる。

選択肢ア

これは不正解だよ。T₁がxを更新してコミットする前にT₂もxを更新する状況は、同じデータへの更新が競合する問題を表す。設問の不整合検索異状は、古い読み取り値を基に別データを更新し、データ間の整合性が崩れる現象であり、単なる同一データの更新競合とは異なる。

選択肢イ(正解)

これは正解だよ。T₁とT₂がxを読み、T₁がxを更新する一方で、T₂が更新前のxの値を基にyを更新すると、更新後のxとyの関係が一致しなくなる。このように、読み取り時点のずれによって複数データの整合性が失われる現象が不整合検索異状である。

選択肢ウ

これは不正解だよ。T₂がT₁の更新したxを読んだ後、T₁のロールバックによってT₂もロールバックが必要になる状況は、未確定データの読み取りに伴う連鎖的なロールバックの問題である。不整合検索異状は、古い値を基に別データを更新する点が中心となる。

選択肢エ

これは不正解だよ。T₂がT₁の更新後のxを読んで処理した後、T₁がロールバックしてT₂の処理結果が誤りになる状況は、未コミットの更新結果を読み取る問題に該当する。不整合検索異状は、同時に読んだ古い値と別データの更新による不整合を指す。

学習のポイント

読み取り時点と更新対象の関係を、トランザクションの時系列で整理する。

出典:独立行政法人 情報処理推進機構(IPA)令和6年度秋期 データベーススペシャリスト試験 午前Ⅱ 問15(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針