Question

Difficulty: Very hardAzure Database Services (Relational, Non-Relational, and Cosmos DB)

A company is designing a transaction auditing system that requires strict relational schemas, foreign key constraints, and complex multi-table SQL queries. The database administrator proposes using Azure Cosmos DB with the API for NoSQL to meet these requirements. Which statement correctly evaluates this proposal?

  1. The proposal is incorrect because Azure Cosmos DB is a non-relational database designed for semi-structured data; its API for NoSQL queries JSON documents and does not support traditional relational database constraints and joins.Answer
  2. B
    The proposal is correct because the API for NoSQL allows Azure Cosmos DB to function as a traditional relational database that fully supports relational schemas, foreign keys, and multi-table joins.
  3. C
    The proposal is incorrect because Azure Cosmos DB is an Infrastructure as a Service (IaaS) solution, requiring the company to manually configure and patch the operating system to support relational features.
  4. D
    The proposal is incorrect because Azure Cosmos DB is a Software as a Service (SaaS) application, which prevents developers from defining custom database tables or querying them with SQL.

Answer

The proposal is incorrect because Azure Cosmos DB is a non-relational database designed for semi-structured data; its API for NoSQL queries JSON documents and does not support traditional relational database constraints and joins.
The correct answer is correct because Azure Cosmos DB is fundamentally a non-relational database. The API for NoSQL provides a familiar SQL-like syntax to query semi-structured JSON document files, but it does not support relational constraints, foreign keys, or traditional relational multi-table JOIN operations.

Step-by-Step Solution

1
Analyze the database requirements of the transaction auditing system.
The system requires strict relational schemas, foreign key constraints, and complex multi-table SQL queries.
These are core characteristics of relational databases (SQL databases).
2
Evaluate the database model and capabilities of Azure Cosmos DB.
Azure Cosmos DB is a globally distributed, non-relational (NoSQL) database engine.
Understanding the database model helps determine if it fits the relational requirements.
3
Analyze the function of the Azure Cosmos DB API for NoSQL (formerly SQL API).
The API for NoSQL allows developers to query JSON documents using SQL-like syntax, but does not enforce relational constraints or native multi-table joins.
This resolves the misconception that a SQL-like query interface makes a database relational.
4
Determine the validity of the proposal based on model compatibility.
The proposal is incorrect because Azure Cosmos DB cannot natively satisfy the strict relational and schema constraints required by the system.
Matching requirements to database capabilities leads to the correct evaluation.

Key Concept

Azure Cosmos DB is a NoSQL (non-relational) database service, and its API for NoSQL is used for querying JSON document structures, not for enforcing traditional relational database constraints.
Rate this question