Azure非リレーショナル定義問題

あるスタートアップがオンプレミスのMongoDBアプリケーションをAzureに移行します。「既存のMongoDBドライバ(PyMongo)を使い続けたい」「コードの書き直しを最小限にしたい」「グローバル分散と高可用性が必要」という要件があります。最適なサービスはどれか?

A.Cosmos DB(Core SQL API)― JSONドキュメントをSQL APIで管理
✗ Core SQL APIはMongoDBドライバ(PyMongo)と互換性がなく、クエリをSQL APIに書き直す必要がある。
B.Cosmos DB(MongoDB API)← 正解
✓ 正解。Cosmos DB for MongoDB(MongoDB API)はMongoDBのワイヤープロトコルと互換性があり、PyMongoなどの既存ドライバをそのまま使用できる。コードの大幅な書き直しなしに移行可能。
C.Azure SQL Database ― 既存ドキュメントをリレーショナルに変換
✗ Azure SQL Databaseへの移行はスキーマ設計とクエリを全面的に書き直す必要がある。
D.Cosmos DB(Cassandra API)― MongoDBの代替として活用
✗ Cassandra APIはCQL(Cassandra Query Language)を使用し、MongoDBドライバとは互換性がない。

DP-900:Microsoft Azure Data Fundamentals の問題一覧