平成24年春期試験問題 午前Ⅱ 問19
問19解説へ
二つのトランザクションT1,T2が,データa,bに並行してアクセスする。T1,T2の組合せのうち,直列可能性を保証できるものはどれか。ここで,トランザクションの各操作の意味は次のとおりとする。
- LOCK x :データxをロックする。
- READ x :データxを読み込む。
- WRITE x :データxを書き出す。
- UNLOCK x :データxをアンロックする。
正解 エ問題へ
分野:テクノロジ系
中分類:データベース
小分類:トランザクション処理
中分類:データベース
小分類:トランザクション処理
広告
解説
直列可能性とは、複数のトランザクションが同時実行される際にトランザクションが交互にどのような順序で実行されても、1つずつを順次処理したときと同じ結果になることを言います。
一般的なDBMSではロックを用いて直接可能性の確保を行います。それぞれのトランザクションが2相ロック方式、すなわちデータを読書きする前にはそのデータをロックする、必要なデータを全てロックした後のみアンロックができる、に従えば直列可能性が保証されます。したがって選択肢の各トランザクションが2相ロック方式に則ったものであるかが判断基準になります。
一般的なDBMSではロックを用いて直接可能性の確保を行います。それぞれのトランザクションが2相ロック方式、すなわちデータを読書きする前にはそのデータをロックする、必要なデータを全てロックした後のみアンロックができる、に従えば直列可能性が保証されます。したがって選択肢の各トランザクションが2相ロック方式に則ったものであるかが判断基準になります。
- T1,T2ともにデータaがロックの前に読み込まれているため条件を満たしません。
- T1,T2ともにデータaのアンロック後にデータbをロックしているため条件を満たしません。
- T2は条件を満たしていますが、T1はデータaのアンロック後にデータbをロックしているため条件を満たしません。
- 正しい。T1,T2ともに2相ロックに則っているため直列可能性が保証されます。
広告