科目A-2(多肢選択式・四肢択一、25問)
あるシステムでは主系(プライマリ)から副系(スタンバイ)へ非同期レプリケーションでデータを転送している。主系で更新をコミットし、クライアントに応答した直後、副系への転送が完了する前に主系に障害が発生しフェールオーバーが行われた。このとき起こりうる事象として最も適切なものはどれか。
- ✓副系への転送が完了していなかった直近のコミット済み更新が、フェールオーバー後の副系には反映されておらず、データが失われる可能性がある
- B副系は主系のすべての更新を必ず保持しているため、データの欠落は発生しない
- C非同期レプリケーションでは常に主系と副系が同一トランザクション内で更新されるため、整合性は完全に保たれる
- Dフェールオーバー後は主系のデータが自動的に復元されるため、副系側の状態は無関係である
解説
非同期レプリケーションは、主系での更新確定(コミット)と副系への反映を切り離して行うため、性能面で有利な一方、主系がクライアントに応答した後で障害が起きると、副系にまだ転送されていない更新分がフェールオーバー後に失われる可能性がある。これは同期レプリケーションとの重要な違いである。
根拠シラバス「データベース技術の動向」分散データベース・レプリケーション(同期/非同期)