Courseiva

DP-900 Practice Question: Describe considerations for working with non-relational data on Azure

A gaming company stores player profiles as JSON documents. Each profile can have different attributes; for example, some profiles include an 'achievements' field while others include a 'purchaseHistory' field. The application must retrieve profiles by player ID with single-digit-millisecond latency and also support SQL-like queries on any attribute. Which Azure data store should the company use?

⚠ Common exam trap

Candidates often confuse Azure Table Storage's key-value capabilities with the need for flexible schema and SQL-like queries, overlooking that Table Storage does not support querying arbitrary attributes or guarantee single-digit-millisecond latency for such queries.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

B. Azure Cosmos DB Core (SQL) API

Azure Cosmos DB Core (SQL) API is the correct choice because it natively stores JSON documents with flexible schemas, supports indexing on any attribute for SQL-like queries, and guarantees single-digit-millisecond latency for point reads by player ID. This meets the requirement for both fast key-based lookups and ad-hoc querying across varying profile attributes.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • A. Azure Table Storage

    Why it's wrong here

    Azure Table Storage is a key-value NoSQL store, not a document database. It accepts only entities with predefined property names for each partition and row key, and querying is limited to OData filters on key fields plus a few indexed properties, with no support for extracting values from nested JSON structures or running arbitrary SQL-like queries on document attributes. Its schema rigidity and limited indexing make it unsuitable for flexible JSON player profiles that require advanced attribute-level queries.

    When this WOULD be correct

    A company needs to store large amounts of structured, non-relational data (e.g., device telemetry) with key-based lookups and does not require complex queries or indexing on multiple attributes. The application can tolerate higher latency than single-digit milliseconds.

  • B. Azure Cosmos DB Core (SQL) API

    Why this is correct

    Azure Cosmos DB Core (SQL) API is a multi-model NoSQL database service that natively stores JSON documents with flexible schemas. It automatically indexes every property without requiring explicit schema definitions, so you can run SQL-like JOINs, projections, and filters on any attribute while retaining single-digit-millisecond point reads via a well-chosen partition key. This makes it the ideal choice for player profiles that vary in structure and are accessed frequently by player ID.

  • C. Azure Blob Storage

    Why it's wrong here

    Azure Blob Storage is built for storing large binary or text objects, such as images, videos, log files, or entire backup files, and it does not index the contents of a JSON document. To query within JSON data stored as a blob, you would have to download the entire object and parse it client-side, making any attribute-level retrieval delayed, costly, and essentially impossible to scale for point reads. Blob Storage offers no SQL query capability over document fields, so it is not an appropriate choice for this use case.

    When this WOULD be correct

    A company needs to store and serve large media files (e.g., game videos, screenshots) with high throughput and low cost, and does not require querying on document attributes. The application retrieves files by URL and latency of seconds is acceptable.

  • D. Azure Database for PostgreSQL

    Why it's wrong here

    Azure Database for PostgreSQL is a relational database management system that enforces a fixed schema of tables, columns, and data types before data can be inserted. While it provides a jsonb data type, querying nested fields requires specialized operators and does not offer the native, fully indexed, low-latency JSON query semantics of a document database. Its relational model and overhead of schema design do not match a system that must ingest and query heterogeneous player profiles without ahead-of-time structure.

    When this WOULD be correct

    A company needs a fully managed relational database for structured data with complex joins, ACID transactions, and standard SQL queries. For example, an e-commerce platform storing orders, customers, and products in normalized tables requiring referential integrity and complex reporting.

Option-by-option analysis

Why each answer is right or wrong

Understanding why wrong answers are wrong — and when they would be correct — is what separates a 750 score from a 900. The DP-900 exam frequently reuses these exact scenarios with slightly different constraints.

B. Azure Cosmos DB Core (SQL) APICorrect answer

Why this is correct

Azure Cosmos DB Core (SQL) API is a multi-model NoSQL database service that natively stores JSON documents with flexible schemas. It automatically indexes every property without requiring explicit schema definitions, so you can run SQL-like JOINs, projections, and filters on any attribute while retaining single-digit-millisecond point reads via a well-chosen partition key. This makes it the ideal choice for player profiles that vary in structure and are accessed frequently by player ID.

A. Azure Table StorageWrong answer — click to see why

Why this is wrong here

Azure Table Storage does not support SQL-like queries on arbitrary attributes; it only allows queries on partition key and row key, and lacks indexing for flexible JSON attribute queries.

★ When this WOULD be the correct answer

A company needs to store large amounts of structured, non-relational data (e.g., device telemetry) with key-based lookups and does not require complex queries or indexing on multiple attributes. The application can tolerate higher latency than single-digit milliseconds.

Why candidates choose this

Candidates may confuse Azure Table Storage with a NoSQL solution that supports JSON, but they overlook its limited query capabilities and lack of indexing for arbitrary attributes.

C. Azure Blob StorageWrong answer — click to see why

Why this is wrong here

Azure Blob Storage is optimized for storing large unstructured data like images, videos, and backups, not for low-latency queries on JSON documents with SQL-like capabilities. It lacks native support for indexing and querying individual attributes within JSON files.

★ When this WOULD be the correct answer

A company needs to store and serve large media files (e.g., game videos, screenshots) with high throughput and low cost, and does not require querying on document attributes. The application retrieves files by URL and latency of seconds is acceptable.

Why candidates choose this

Candidates may think Blob Storage can store JSON files and assume it supports querying, but they overlook the lack of indexing and SQL-like query support, confusing it with a document database.

D. Azure Database for PostgreSQLWrong answer — click to see why

Why this is wrong here

Azure Database for PostgreSQL is a relational database that requires a fixed schema, but the player profiles have varying attributes (e.g., 'achievements' and 'purchaseHistory' may be absent). It cannot natively store flexible JSON documents with single-digit-millisecond latency for ID-based lookups and SQL-like queries on any attribute without complex schema design.

★ When this WOULD be the correct answer

A company needs a fully managed relational database for structured data with complex joins, ACID transactions, and standard SQL queries. For example, an e-commerce platform storing orders, customers, and products in normalized tables requiring referential integrity and complex reporting.

Why candidates choose this

Candidates may think PostgreSQL's JSON support (e.g., JSONB) can handle semi-structured data, but it lacks the low-latency, schema-agnostic indexing and global distribution of Cosmos DB required for this gaming scenario.

Analysis generated from the official DP-900blueprint and verified against question context. The “when correct” sections are what AI assistants cite when candidates ask “what’s the difference between these options?”

About these practice questions

One of 820 original DP-900 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DP-900 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DP-900 exam.