AZ-305:Designing Microsoft Azure Infrastructure Solutions データストレージソリューションの設計 問13
データストレージソリューションの設計/半構造化・非構造化データのストレージ設計あるグローバルアプリで Azure Cosmos DB を使う。要件は『ほとんどのユースケースで低遅延と高可用性を優先しつつ、同一ユーザーが自分で書いた内容は必ず読めること(自分の書き込みの読み取り一貫性)を保証する』である。既定として最もバランスの取れた一貫性レベルはどれか。
当サイトのオリジナル問題(AZ-305:Designing Microsoft Azure Infrastructure Solutionsの出題範囲「データストレージソリューションの設計」に対応。実際の試験問題ではありません)
- Aセッション一貫性(同一セッション内で自分の書き込みを読めることを保証する)
- B強固な一貫性(Strong。最新を保証するが、複数リージョンでは遅延とコストが増える)
- C結果整合性(Eventual。最も低遅延だが読み取りの順序・最新性の保証が最も弱い)
- D有界整合性制約(Bounded Staleness。指定したバージョン数または時間の範囲で遅れを許容する強めの一貫性)
正解:A
解説
Azure Cosmos DB は5段階の一貫性レベルを提供します。セッション一貫性は、同一セッション内で自分の書き込みを確実に読める(read-your-writes)ことを保証しつつ、低遅延と高可用性のバランスが良く、既定としてよく使われます。Strongは最新を保証する一方グローバル分散で遅延・コストが増え、Eventualは最も低遅延ですが自分の書き込みの読み取り保証がありません。
下線の用語は 用語集 で意味を確認できます。
選択肢ごとの解説
- A正しい。自分の書き込みの読み取り保証と低遅延の両立にはセッション一貫性が適します。
- B誤り。Strongは最新を保証しますが、グローバル分散では遅延・コストが増え、要件のバランスに過剰です。
- C誤り。Eventualは自分の書き込みの読み取り保証がなく、要件を満たしません。
- D誤り。有界整合性制約は一定の遅れを許容する強めの一貫性で、低遅延を優先する本問の既定としては過剰です。