Soru

Zorluk: ZorAzure Database Services (Relational, Non-Relational, and Cosmos DB)

A company is planning to migrate a legacy financial application to Azure. The application's database relies heavily on traditional relational features, including strict schema enforcement, foreign key constraints, and complex multi-table joins. A developer suggests migrating this database directly to Azure Cosmos DB using the SQL API. Why is Azure Cosmos DB with the SQL API unsuitable for this workload without a major redesign of the database?

  1. A
    Azure Cosmos DB is a relational database that requires all data to be stored in structured tables, but it does not support SQL-based query syntax.
  2. B
    Azure Cosmos DB requires the customer to manually apply operating system patches and configure the database engine, leading to excessive administrative overhead.
  3. Azure Cosmos DB is a non-relational database designed for schema-agnostic document storage, meaning it does not natively enforce relational database features like foreign key constraints or complex multi-table joins.Cevap
  4. D
    Azure Cosmos DB is a Software as a Service (SaaS) offering designed only for end-user productivity, meaning it cannot host custom database schemas or integrate with custom web applications.

Cevap

Azure Cosmos DB is a non-relational database designed for schema-agnostic document storage, meaning it does not natively enforce relational database features like foreign key constraints or complex multi-table joins.
The correct answer explains that Azure Cosmos DB is a non-relational (NoSQL) database engine. Because it is designed for horizontal scale and schema-agnostic document storage, it does not natively enforce relational database behaviors like foreign keys or complex multi-table joins. Transitioning a traditional relational database workload to Cosmos DB SQL API without redesigning the data model is not possible.

Adım Adım Çözüm

1
Analyze the database requirements of the legacy application.
The application requires relational database features, specifically strict schema enforcement, foreign keys, and complex table joins.
To identify whether a relational or non-relational database structure is required.
2
Evaluate the architecture of Azure Cosmos DB and its SQL API.
Azure Cosmos DB is a non-relational (NoSQL) database. Its SQL API is for querying document data models (JSON files) using SQL syntax, but it does not support relational capabilities.
To verify if the recommended database option natively supports the required features.
3
Compare the developer's recommendation with the application's requirements.
Azure Cosmos DB cannot support the legacy workload directly because it does not natively enforce relational constraints or joins, requiring a major redesign.
To determine the suitability and explain the deficiency of the proposed solution.

Anahtar Kavram

Azure Cosmos DB is a fully managed NoSQL (non-relational) database service. Despite offering a SQL API, it does not support traditional relational database features such as foreign keys or multi-table joins natively.
Tahmini Süre:2m 0s
Bu soruyu puanla