過去問解きまくり研究所 ホーム

令和2年度 10月 午前Ⅱ 問1

データベース応用

CAP定理に関する問題

図のデータベース1,2は互いのデータの複製をもつ冗長構成である。クライアントからの更新・参照要求を受けたデータベースサーバ(以下,サーバという)は直下のデータベースを更新・参照し,他方のサーバにデータ更新を通知する。通知を受けたサーバは直下のデータベースに更新を反映する。

サーバ1,2間のネットワークが分断し,データ更新を通知できなくなったとき,CAP定理で重視する特性(C,A,P)に対するサーバの挙動のうち,適切な組合せはどれか。

構成図:

クライアント1 ―(更新・参照要求)→ サーバ1 ―(更新・参照)→ データベース1
クライアント2 ―(更新・参照要求)→ サーバ2 ―(更新・参照)→ データベース2
サーバ1 ←(更新を通知)→ サーバ2

選択肢は原典ではCAP定理の特性C及びPを重視する場合/CAP定理の特性A及びPを重視する場合の表。

答えと解説を見る

✓ これが正解イCAP定理の特性C及びPを重視する場合:一方のサーバは停止し,もう一方のサーバは動作し続ける。 / CAP定理の特性A及びPを重視する場合:両方のサーバが動作し続ける。

解説

CとP重視なら片方を止め、AとP重視なら両方を動かし続けます。

ネットワークが分断されると、二つのサーバは更新を互いに通知できなくなります。このとき両方のサーバが更新を受け付け続けると、データベース1と2の内容が食い違っていきます。一貫性(C)と分断耐性(P)を重視するなら、食い違いを生まないことが優先なので、一方のサーバを止めて、もう一方だけで処理を続けます。可用性(A)と分断耐性(P)を重視するなら、どちらのクライアントにも応答し続けることが優先なので、両方のサーバを動かし続け、内容の食い違いは分断が解消してから合わせます。分断が起きたときは、止めて一貫性を守るか、動かして可用性を守るかの選択になる、と押さえると判断できます。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:令和2年度 10月 データベーススペシャリスト試験 午前Ⅱ 問1

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)