Microsoft Azure Data FundamentalsDescribe how to work with non-relational data on AzureMedium

A company is migrating an existing on-premises application that heavily uses Apache Cassandra to Azure. The application requires a database service that is fully compatible with Cassandra's query language (CQL) and drivers, offers high availability, and can scale globally with minimal code changes. Which Azure non-relational data service should the company choose?

  1. AAzure Data Lake Storage Gen2
  2. BAzure Table Storage
  3. CAzure Cosmos DB (SQL API)
  4. DAzure Cosmos DB (Cassandra API)
Show answer & explanation

Correct answer: D. Azure Cosmos DB (Cassandra API)

Azure Cosmos DB's Cassandra API provides wire protocol compatibility with Apache Cassandra. This allows existing Cassandra applications to migrate to Azure Cosmos DB with minimal code changes, while benefiting from Cosmos DB's global distribution, high availability, and scalability.

Why the other options are wrong

  • A. Azure Data Lake Storage Gen2 is for big data analytics and file storage, not a transactional database compatible with Cassandra.
  • B. Azure Table Storage is a simple key-value store and is not compatible with Cassandra's data model or CQL.
  • C. Azure Cosmos DB SQL API uses a different data model (document) and query language, requiring significant code changes for a Cassandra application.

Azure Cosmos DB (Cassandra API)

A fully managed Apache Cassandra-compatible database service within Azure Cosmos DB, allowing existing Cassandra applications to run on Azure without code changes.

  • Wire protocol compatible with Apache Cassandra.
  • Supports Cassandra Query Language (CQL) and existing Cassandra drivers.
  • Leverages Cosmos DB's global distribution, scalability, and high availability.
  • Ideal for migrating existing Cassandra workloads to Azure.

Memory trick: To bring your 'Cassandra Elephant' to the cloud, use the 'Cassandra API' path.

More Describe how to work with non-relational data on Azure questions