複数の利用者がデータベースの同じレコードを更新するときに, データの整合性を保つために行う制御として, 適切なものはどれか。
平成28年度 秋期 ITパスポート試験 問81
This question's explanation and your answers so far.
問 81
Incorrectア
Normalization is a database design technique that splits tables into appropriate forms (first through third normal form, etc.) to reduce data redundancy and inconsistency. It belongs to the design stage and is not a mechanism that controls simultaneous updates by multiple users at run time, so it is wrong.
Incorrectイ
Timer monitoring is a mechanism that watches, based on time, whether a response or process completes within a fixed period (such as timeout detection). It is not a control that prevents conflicts from simultaneous updates to protect consistency, so it is wrong.
Incorrectウ
Rollforward is a failure-recovery technique that, when a failure occurs, uses a backup and the after-update log (journal) to re-advance processing and restore the data to the state just before the failure. It is a means of repairing damaged data and does not control the simultaneous updates themselves, so it is wrong.
- エ
正解 The correct answer is “エ Lock / unlock”. When multiple users update the same record at the same time, a later write may overwrite and erase an earlier update (a lost update), which risks breaking data consistency. Exclusive (concurrency) control is what prevents this: while a transaction is updating a record, it places a lock on that record to make other users wait, and once the processing finishes it unlocks and releases the record. This prevents conflicts from simultaneous updates and keeps the data consistent.
- Exclusive (concurrency) control (lock / unlock) = a mechanism that, when multiple transactions update the same data at the same time, uses locks to make others wait, thereby preventing conflicts (such as lost updates) and keeping data consistent.
- Normalization is a database design technique, rollforward is a failure-recovery technique, and timer monitoring is time-based monitoring; all three have a purpose different from controlling simultaneous updates.