Azure非リレーショナル定義問題
Cosmos DB(Core SQL API)でコンテナを設計する際、「パーティションキーの選択」として最も適切なのはどれか?
A.値が常に同じ列(例:ステータス=「アクティブ」のみ)をパーティションキーにする
✗ 値が常に同じ(カーディナリティが1)列をパーティションキーにすると、全データが1つの論理パーティションに集中し「ホットパーティション」が発生してスケールアウトできない。
B.カーディナリティ(値の種類)が高く、書き込み・読み取りが均等に分散する列をパーティションキーにする← 正解
✓ 正解。パーティションキーはカーディナリティが高い(値の種類が多い)列を選ぶことで、データと負荷を複数の物理パーティションに均等に分散できる。顧客IDやデバイスIDが典型例。
C.最も頻繁にクエリで使うWHERE条件の列であれば何でもよい
✗ クエリ効率だけでなくデータ分散(負荷均等化)を考慮してパーティションキーを選ぶ必要がある。クエリ頻度だけが基準ではない。
D.パーティションキーは後から変更できるため、最初は気にしなくてよい
✗ パーティションキーはコンテナ作成後は変更できない。最初の設計が極めて重要。
「Azure非リレーショナル」の他の問題
あるSNS企業がユーザー同士の「フォロー」「フレンド」関係を管理するDBを設計しています。主な操作は「友達の友達を3ホッ…あるIoT企業が10,000台のスマートホームデバイスから温度・湿度・電力消費量を毎秒収集・保存しています。「デバイスI…あるECサイトがAzure Table Storageで商品カタログ(5億件)を管理しています。「クエリレイテンシが増加…あるスタートアップがオンプレミスのMongoDBアプリケーションをAzureに移行します。「既存のMongoDBドライバ…あるゲーム会社が1億人のプレイヤープロファイルを管理するDBを設計しています。「プレイヤーごとに所持アイテムが異なる(ス…Cosmos DB(Core SQL API)とCosmos DB(MongoDB API)を比較したとき、「完全に新規…
IT・クラウド の関連資格
AWS Certified Cloud Practitioner(CLF-C02)
AWSクラウドの入門資格。クラウドの概念・AWSのコアサービス・セキュリティ・料金モデルを問う。
AWS Certified Solutions Architect - Associate(SAA-C03)
AWSでのシステム設計能力を問うアソシエイト資格。高可用性・セキュリティ・コスト最適化の設計が中心。
AZ-900:Microsoft Azure Fundamentals
クラウドとAzureの基礎を問うMicrosoft認定資格。クラウドの概念、Azureの主要サービス、セキュリティ・コンプライアンス・料金を扱う。