Courseiva

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

A social media application stores user profiles as JSON documents. Each user profile can have different attributes (e.g., some have 'education', others have 'work experience'). The application needs to query profiles by any attribute with low latency. Which Azure data store is most appropriate?

⚠ Common exam trap

Many candidates confuse Azure Table Storage's key-value model with a document database, assuming it can query arbitrary attributes efficiently, but Table Storage requires a composite key and lacks secondary indexes for ad-hoc queries on non-key fields.

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

Azure Cosmos DB (SQL API)

Azure Cosmos DB with the SQL API is the correct choice because it natively supports schema-agnostic JSON documents, allowing each user profile to have varying attributes without requiring a fixed schema. Its indexing policies enable low-latency queries on any attribute, and it provides single-digit millisecond response times for point reads and queries, which is essential for a social media application.

Answer analysis

Option-by-option breakdown

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

  • Azure Blob Storage

    Why it's wrong here

    Azure Blob Storage is optimized for unstructured binary data such as images, videos, or entire files, not for querying the internal structure of stored documents. Although you could save a JSON file as a blob, you would need to download the whole blob and parse it yourself to find a user profile, because Blob Storage provides no indexing or query engine over JSON attributes.

    When this WOULD be correct

    A question that asks for storing and serving large media files (e.g., user-uploaded photos or videos) with high throughput and low cost, where querying by content attributes is not required.

  • Azure Table Storage

    Why it's wrong here

    Azure Table Storage is a key-value store that relies on a fixed schema of typed properties, requiring each user profile to be flattened into columns like PartitionKey, RowKey, and predefined entity fields. It cannot natively represent nested JSON objects or support ad-hoc queries against arbitrary attributes, making it unsuitable for user profiles whose fields vary from one document to the next.

    When this WOULD be correct

    A question where the application needs to store large amounts of structured, non-relational data (e.g., device logs or metadata) and query primarily by a known partition key and row key, with no requirement for flexible schema or querying by arbitrary attributes.

  • Azure Cosmos DB (SQL API)

    Why this is correct

    Azure Cosmos DB (SQL API) is a purpose-built NoSQL document database that stores data natively as JSON. Its schema-agnostic model lets each user profile contain a different set of attributes without migrations, while automatic indexing on every property enables fast, attribute-level queries via SQL syntax. This directly matches the requirement for flexible JSON documents with varying structures.

  • Azure SQL Database

    Why it's wrong here

    Azure SQL Database is a relational database that expects a predefined, normalized schema of tables and columns. While it offers limited JSON functions by storing JSON as text, performing attribute-level queries requires casting or extracting values and schema adjustments like adding computed columns, which becomes cumbersome as user profile attributes change or diversify across users.

    When this WOULD be correct

    A question where the data has a fixed schema, requires complex relational queries (e.g., JOINs, aggregations), and needs ACID transactions. For example: 'An e-commerce application stores orders with line items and needs to generate sales reports using SQL queries.'

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.

Azure Cosmos DB (SQL API)Correct answer

Why this is correct

Azure Cosmos DB (SQL API) is a purpose-built NoSQL document database that stores data natively as JSON. Its schema-agnostic model lets each user profile contain a different set of attributes without migrations, while automatic indexing on every property enables fast, attribute-level queries via SQL syntax. This directly matches the requirement for flexible JSON documents with varying structures.

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 or videos, not for querying JSON documents by arbitrary attributes with low latency. It lacks native indexing and query capabilities for nested JSON fields.

★ When this WOULD be the correct answer

A question that asks for storing and serving large media files (e.g., user-uploaded photos or videos) with high throughput and low cost, where querying by content attributes is not required.

Why candidates choose this

Candidates may think JSON documents are just files, so Blob Storage seems suitable. They overlook the need for flexible querying across varying attributes, which Blob Storage does not support efficiently.

Azure Table StorageWrong answer — click to see why

Why this is wrong here

Azure Table Storage is a NoSQL key-value store that does not support querying by arbitrary attributes with low latency; it requires a partition key and row key for efficient queries, making it unsuitable for ad-hoc queries on any attribute in JSON documents.

★ When this WOULD be the correct answer

A question where the application needs to store large amounts of structured, non-relational data (e.g., device logs or metadata) and query primarily by a known partition key and row key, with no requirement for flexible schema or querying by arbitrary attributes.

Why candidates choose this

Candidates may confuse Table Storage's NoSQL nature with Cosmos DB's document capabilities, or assume that any NoSQL store can handle flexible schema queries efficiently, overlooking Table Storage's limited querying model.

Azure SQL DatabaseWrong answer — click to see why

Why this is wrong here

Azure SQL Database requires a fixed schema, but the question specifies that user profiles have varying attributes (JSON documents with different fields). This makes it unsuitable for schema-less, flexible document storage.

★ When this WOULD be the correct answer

A question where the data has a fixed schema, requires complex relational queries (e.g., JOINs, aggregations), and needs ACID transactions. For example: 'An e-commerce application stores orders with line items and needs to generate sales reports using SQL queries.'

Why candidates choose this

Candidates may associate 'query by any attribute' with SQL's querying capabilities, overlooking the schema flexibility requirement. They might also assume that any structured data store can handle JSON, ignoring the need for native document support.

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

Courseiva writes every DP-900 question from scratch — 820 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. 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.