Courseiva

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

A social media company stores user-generated posts as JSON documents. Each post contains fields such as postId, userId, timestamp, and content. The application needs to query posts by userId and timestamp ranges with low latency, and also perform SQL-like queries across all posts. The data volume is growing rapidly and must scale globally. Which Azure data store should the company use?

⚠ Common exam trap

A common mix-up: candidates confuse Azure Table Storage's key-value model with document storage, mistakenly thinking its OData queries can handle complex JSON queries, but Table Storage cannot query nested JSON fields or perform SQL-like operations across all posts.

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 SQL API

Azure Cosmos DB SQL API is the correct choice because it provides native support for querying JSON documents with low-latency, including indexed queries on fields like userId and timestamp. Its global distribution capability ensures data can be replicated across multiple Azure regions for low-latency access worldwide, while its SQL API allows SQL-like queries across all posts, meeting both requirements.

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

    Incorrect. Azure Table Storage is a key-value store that does not support querying by arbitrary fields within JSON documents, nor does it provide SQL-like query capability. It is not suitable for complex queries on nested JSON data.

    When this WOULD be correct

    A company needs to store structured, non-relational data (e.g., device telemetry) with simple key-based lookups and high scalability, but does not require SQL queries or complex indexing. The application uses partition key and row key for fast access and can tolerate eventual consistency.

  • B) Azure Cosmos DB SQL API

    Why this is correct

    Correct. The Cosmos DB SQL API natively stores JSON documents, supports indexing on any field, and allows rich SQL-like queries. It offers global distribution, low latency, and scalable throughput, making it ideal for this scenario.

  • C) Azure Blob Storage

    Why it's wrong here

    Incorrect. Azure Blob Storage is for unstructured binary data (e.g., images, videos) and does not provide a query interface for JSON content. It cannot support the required SQL-like queries or low-latency point reads by userId.

    When this WOULD be correct

    A company needs to store and serve large media files (e.g., images, videos) for a web application with high throughput, and does not require querying individual fields within the files. The data is accessed via URLs and needs to be globally distributed with CDN integration.

  • D) Azure Cache for Redis

    Why it's wrong here

    Incorrect. Azure Cache for Redis is an in-memory data store best suited for caching and session management, not for persistent storage of JSON documents with complex querying capabilities. It lacks the durability and query features required.

    When this WOULD be correct

    A question requiring a high-performance, low-latency cache layer to accelerate read-heavy workloads, such as caching frequently accessed user profiles or session data, where data can be regenerated from a persistent store.

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 SQL APICorrect answer

Why this is correct

Correct. The Cosmos DB SQL API natively stores JSON documents, supports indexing on any field, and allows rich SQL-like queries. It offers global distribution, low latency, and scalable throughput, making it ideal for this scenario.

A) 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 SQL-like queries or native JSON querying. It lacks the indexing and query capabilities needed for low-latency queries on userId and timestamp ranges across globally distributed data.

★ When this WOULD be the correct answer

A company needs to store structured, non-relational data (e.g., device telemetry) with simple key-based lookups and high scalability, but does not require SQL queries or complex indexing. The application uses partition key and row key for fast access and can tolerate eventual consistency.

Why candidates choose this

Candidates may confuse Table Storage's NoSQL nature with Cosmos DB, or assume that JSON documents can be stored and queried in Table Storage because it supports entity properties, but they overlook the lack of native JSON support and advanced querying.

C) Azure Blob StorageWrong answer — click to see why

Why this is wrong here

Azure Blob Storage is optimized for storing large unstructured binary data, not for low-latency queries on JSON documents with SQL-like queries or global scaling of indexed data.

★ When this WOULD be the correct answer

A company needs to store and serve large media files (e.g., images, videos) for a web application with high throughput, and does not require querying individual fields within the files. The data is accessed via URLs and needs to be globally distributed with CDN integration.

Why candidates choose this

Candidates may associate JSON documents with blob storage because blobs can store any file type, including JSON, and overlook the need for querying and indexing capabilities that Cosmos DB provides.

D) Azure Cache for RedisWrong answer — click to see why

Why this is wrong here

Azure Cache for Redis is an in-memory cache, not a durable data store. It cannot serve as the primary store for user-generated posts that need to be persisted and queried with SQL-like queries across all posts.

★ When this WOULD be the correct answer

A question requiring a high-performance, low-latency cache layer to accelerate read-heavy workloads, such as caching frequently accessed user profiles or session data, where data can be regenerated from a persistent store.

Why candidates choose this

Candidates may think Redis's low-latency key-value lookups are suitable for querying posts by userId and timestamp, overlooking that it lacks persistence and SQL query capabilities.

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

This DP-900 question is part of Courseiva's 820-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam 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.