Question

Difficulty: HardAzure Cosmos DB and NoSQL Solutions

You are a Solutions Architect designing a data migration and modernization strategy for an enterprise. You need to map several application workloads and legacy databases to the most appropriate Azure Cosmos DB API based on their data model, query requirements, and migration constraints. Match each workload scenario on the left with the correct Azure Cosmos DB API on the right.

  • A legacy tabular database storing time-series sensor logs must be migrated from an Apache Cassandra cluster. The solution must support existing Cassandra Query Language (CQL) queries and driver configurations with minimal code modifications.Azure Cosmos DB for Apache Cassandra
  • A social network application requires a database that can store complex relationships between users, pages, and posts. The solution must support low-latency graph traversals and queries utilizing vertices and edges.Azure Cosmos DB for Apache Gremlin
  • A product catalog storing hierarchical JSON documents must be migrated from an on-premises MongoDB replica set. The solution must maintain compatibility with existing MongoDB query operators and drivers.Azure Cosmos DB for MongoDB
  • A new order processing application requires a transactional store with full support for SQL-like queries, schema-agnostic indexing, and server-side programming via JavaScript stored procedures.Azure Cosmos DB for NoSQL

Answer

Legacy Cassandra workloads match to Azure Cosmos DB for Apache Cassandra; Graph workloads match to Azure Cosmos DB for Apache Gremlin; Legacy MongoDB workloads match to Azure Cosmos DB for MongoDB; Native SQL-based transactional document workloads match to Azure Cosmos DB for NoSQL.
The correct matches align the workload migration requirements and data models with the corresponding Azure Cosmos DB APIs. Apache Cassandra workloads map to the Cassandra API to preserve CQL compatibility; graph workloads map to the Gremlin API for vertices/edges traversals; MongoDB document models map to the MongoDB API to preserve driver and operator compatibility; and native SQL-based transactional document workloads map to the NoSQL API.

Step-by-Step Solution

1
Analyze the legacy data store and compatibility requirements for the first scenario, which mentions an Apache Cassandra database, CQL queries, and Cassandra driver configurations.
Identify that Azure Cosmos DB for Apache Cassandra is wire-protocol compliant and preserves CQL compatibility.
This avoids code rewrites for Cassandra driver-based applications.
2
Analyze the query and model requirements for the second scenario, which specifies low-latency graph traversals, relationships, vertices, and edges.
Identify that Azure Cosmos DB for Apache Gremlin is the graph-optimized API supporting Apache TinkerPop and Gremlin queries.
Other APIs do not natively support graph-specific traversal mechanics.
3
Analyze the document structure and driver compatibility requirements for the third scenario, which highlights hierarchical JSON documents and MongoDB query operators.
Identify that Azure Cosmos DB for MongoDB provides the required wire protocol compatibility for MongoDB applications.
This allows existing MongoDB applications to run on Cosmos DB without code modification.
4
Analyze the requirements for the new transactional application in the fourth scenario, focusing on SQL queries, server-side JavaScript execution, and schema-agnostic indexing.
Identify that Azure Cosmos DB for NoSQL is the native document API providing these capabilities.
The NoSQL API natively supports SQL query dialect and server-side JavaScript programming.

Key Concept

Selecting the appropriate Azure Cosmos DB API based on database compatibility, data structure, and query language capabilities.
Estimated Time:2m 0s
Rate this question