過去問ドリル

DP-900:Microsoft Azure Data Fundamentals Azure の非リレーショナルデータ 問4

Azure の非リレーショナルデータ/Azure Cosmos DB の機能

ある IoT 基盤チームは、オンプレミスで Apache Cassandra を使って稼働している時系列データ基盤をそのまま Azure へ移行しようとしています。移行にあたり、既存の CQL(Cassandra Query Language)によるクエリやドライバー、アプリケーションコードはできるだけ変更せずに使い続けたいと考えています。選択すべき Azure Cosmos DB の API はどれか。

当サイトのオリジナル問題(DP-900:Microsoft Azure Data Fundamentalsの出題範囲「Azure の非リレーショナルデータ」に対応。実際の試験問題ではありません)

正解:C

解説

正解は Azure Cosmos DB for Apache Cassandra です。この API は Cassandra のワイヤプロトコルに対応しており、既存の CQL によるクエリやドライバー、アプリケーションコードをほとんど変更せずに Azure Cosmos DB へ移行できます。Azure Cosmos DB for NoSQL は Cosmos DB ネイティブの SQL ライクなクエリと専用 SDK を使う API、for MongoDB は MongoDB のワイヤプロトコルに対応した API、for Apache Gremlin はグラフ探索言語 Gremlin を使うグラフデータベース向けの API であり、いずれも Cassandra 互換の移行シナリオには適しません。既存資産の互換性を重視する場合は、移行元のプロトコルに対応した API を選ぶことが重要です。

選択肢ごとの解説

  • A誤り。Azure Cosmos DB for NoSQL は Cosmos DB ネイティブの SQL ライクなクエリと専用 SDK を使う API であり、既存の CQL ベースのアプリケーションをそのまま移行する用途には向きません。
  • B誤り。Azure Cosmos DB for MongoDB は MongoDB のワイヤプロトコルに対応した API であり、MongoDB アプリケーションの移行には適していますが、CQL や Cassandra 向けドライバーとの互換性はありません。
  • C正しい。Azure Cosmos DB for Apache Cassandra は Cassandra のワイヤプロトコルに対応しており、既存の CQL によるクエリやドライバー、アプリケーションコードをほとんど変更せずに移行できます。
  • D誤り。Azure Cosmos DB for Apache Gremlin はグラフ探索言語 Gremlin を使うグラフデータベース向けの API であり、Cassandra 互換の要件には合いません。
DP-900:Microsoft Azure Data Fundamentalsの問題を演習モードで解く