DP-900Azure の非リレーショナル データMEDIUM単一選択

あるゲーム会社が、MongoDB のクライアントライブラリを使ってすでに開発済みの実績・スコア管理アプリをクラウドに移行したい。コード変更を最小限にしながら Azure のマネージドサービスへ移行する場合、最も適切な Azure Cosmos DB の API はどれか。

  1. A. Cosmos DB for Cassandra — CQL を使いワイドカラム形式でデータを管理する
  2. B. Cosmos DB for Table — Azure Table Storage から移行しやすい API 互換を提供する
  3. C. Cosmos DB for NoSQL — JSON ドキュメントを SQL ライクな構文でクエリできる
  4. D. Cosmos DB for MongoDB — MongoDB ワイヤープロトコルに互換性があり既存コードを再利用できる
解答と解説を見る

正解: D

Cosmos DB for MongoDB は MongoDB のワイヤープロトコルと互換性を持ち、既存の MongoDB クライアントドライバーやライブラリをほとんどそのまま使用できる。接続文字列を変更するだけで既存の MongoDB アプリを Azure Cosmos DB に移行でき、コード変更を最小限に抑えられる。選択肢 C の Cosmos DB for NoSQL は Azure 独自の SQL ライクな構文(SELECT * FROM c WHERE c.id = '...' など)でクエリを行うため、MongoDB クライアントライブラリとは互換性がなくコードの書き直しが必要になる。選択肢 A の Cosmos DB for Cassandra は Cassandra Query Language(CQL)を使用するもので、MongoDB とは全く異なるプロトコルである。選択肢 B の Cosmos DB for Table は Azure Table Storage との互換性を提供するものであり、MongoDB アプリの移行先としては適切でない。

▸ この試験を本気で演習する(全150問・無料)