平成27年度 春期 午前Ⅱ 問18
データベース応用
NoSQLに関する問題
インターネット販売などの巨大な取引データを高速に処理するために,NoSQLと呼ばれるデータ処理方式が使われることがある。その特性のうち結果整合性(Eventual Consistency)の説明として,適切なものはどれか。
- アデータを複製し,複数サイトに分散して保持するとき,コンシステントハッシング手法によって,時間帯別に格納先を固定する。
- イ複数のクライアントからの更新要求が衝突する場合,ロック機構によってどちらかを待たせることで整合性を保つ。
- ウ分散した複製サイト間で更新内容を厳密に同期させずに,同期の一時的な遅れを許容する。
- エ分散した複製サイト間で更新内容を整合させるために,2相ロック方式を採用する。
答えと解説を見る
✓ これが正解ウ分散した複製サイト間で更新内容を厳密に同期させずに,同期の一時的な遅れを許容する。
解説
複製間の同期の遅れを一時的に許し、最終的に一致させる考え方です。
結果整合性は、データを複数のサイトに複製して持つときに、更新をすべての複製へ同時にそろえることを求めず、一時的に食い違う状態を許す考え方です。時間がたてば更新が行き渡り、最終的には各複製の内容が一致します。厳密に同期させると、どこか一つのサイトが応答しないだけで更新全体が待たされますが、遅れを許せば処理を止めずに大量の取引を受け付けられます。NoSQLの仕組みには、この性質を受け入れて性能や可用性を優先するものがあります。いつでも同じ値を読めることより、最後には同じ値になることを約束する、と覚えると、ロックで待たせる仕組みとの違いが分かります。
ほかの選択肢はなぜ違うのか
- アデータを複製し,複数サイトに分散して保持…:コンシステントハッシング手法は、データの格納先を各サイトに割り振るための方法で、時間帯で格納先を固定するものではありません。更新の同期をどこまで厳密にするかという結果整合性の話とも別です。
- イ複数のクライアントからの更新要求が衝突す…:ロック機構で一方を待たせて衝突を防ぐのは、常に整合した状態を保とうとする考え方です。同期の遅れを許して一時的な食い違いを認める結果整合性とは、方針が逆になります。
- エ分散した複製サイト間で更新内容を整合させ…:2相ロック方式で複製サイト間の更新をそろえるのは、すべての複製を常に一致させようとする厳密な制御です。一時的な不一致を許すことで処理を止めないという結果整合性の考え方とは合いません。
出典:平成27年度 春期 データベーススペシャリスト試験 午前Ⅱ 問18
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)