Courseiva

Selecting Azure Cosmos DB for a Global Product Catalog

A company stores JSON documents for a product catalog. Each document has a flexible schema because different product categories have different attributes. The catalog is read-heavy and requires low-latency lookups by product ID. The company expects to handle millions of products and needs to serve customers globally with low latency. Which Azure NoSQL data store should they choose?

Quick Answer

Azure Cosmos DB is the correct choice because it is a globally distributed, multi-model NoSQL database that natively supports JSON documents with a flexible schema, making it ideal for a product catalog where different categories have varying attributes. Its automatic indexing enables single-digit-millisecond latency for read-heavy lookups by product ID, while turnkey global distribution allows you to replicate data across Azure regions to serve customers worldwide with low latency. On the Microsoft Azure Data Fundamentals DP-900 exam, this question tests your understanding of when to choose Cosmos DB over other Azure data stores like SQL Database or Table Storage—a common trap is selecting Azure SQL Database for structured data, but remember that Cosmos DB is the go-to for globally distributed, schema-flexible JSON workloads. A helpful memory tip: think “Cosmos = global + flexible JSON + fast reads,” and recall that if the scenario mentions “millions of products” and “worldwide low latency,” Cosmos DB is almost always the answer.

⚠ Common exam trap

A common mix-up: candidates confuse Azure Table Storage's key-value model with a document database, overlooking that Table Storage does not support flexible JSON schemas or global distribution with low-latency reads, while Cosmos DB is explicitly designed for these requirements.

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

Azure Cosmos DB is the correct choice because it is a globally distributed, multi-model NoSQL database that natively supports JSON documents with flexible schemas, provides single-digit-millisecond latency for read-heavy workloads via automatic indexing, and offers turnkey global distribution across Azure regions to serve customers worldwide with low latency.

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 Table Storage

    Why it's wrong here

    Azure Table Storage is a NoSQL key-value store that does not support document models with nested attributes easily. It also does not provide global distribution with low-latency guarantees across regions.

  • Azure Blob Storage

    Why it's wrong here

    Blob Storage stores unstructured binary or text data, not designed for querying individual documents by key. It is not a document database.

  • Azure Cosmos DB

    Why this is correct

    Azure Cosmos DB is a globally distributed NoSQL database that supports flexible schemas and document models via its SQL API. It offers low-latency reads and writes with guarantees of <10 ms for reads and can be replicated across Azure regions.

  • Azure SQL Database

    Why it's wrong here

    Azure SQL Database is a relational database requiring a fixed schema. It does not natively support flexible document schemas without using JSON functions, but it is not designed as a NoSQL document store for high-throughput read-heavy workloads with global distribution.

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

Same concept, more angles

5 more ways this is tested on DP-900

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A retail company is designing a product catalog for its e-commerce website. Each product has a unique ProductID, a name, a price, and a variable number of attributes (e.g., size, color, weight) that differ across product categories. The application requires ability to read a product's details by ProductID with single-digit millisecond latency from any Azure region globally. The schema must be flexible to accommodate new attributes without schema changes. Which Azure data store should the company choose?

medium
  • A.Azure Cosmos DB using the NoSQL API
  • B.Azure Table Storage
  • C.Azure SQL Database
  • D.Azure Blob Storage

Why A: Azure Cosmos DB with the NoSQL API is correct because it provides a fully managed, globally distributed NoSQL database that supports flexible schemas (allowing variable product attributes without schema changes) and guarantees single-digit millisecond read latency at any scale from any Azure region via its multi-region write and read replicas. The unique ProductID serves as a natural partition key, enabling efficient point reads with consistent low latency.

Variation 2. A retail company stores product catalog data as JSON documents. Each product has a different set of attributes depending on its category (e.g., electronics have 'voltage', clothing has 'size'). The application needs to query products by category and price range efficiently. Which Azure data store is most appropriate for this workload?

easy
  • A.Azure Cosmos DB
  • B.Azure SQL Database
  • C.Azure Blob Storage
  • D.Azure Table Storage

Why A: Azure Cosmos DB is the most appropriate choice because it natively supports JSON documents with flexible schemas, enabling each product to have a different set of attributes per category. Its indexing policies can be configured to efficiently support queries filtering by category and price range, and it offers low-latency, high-throughput access ideal for retail catalog workloads.

Variation 3. A retail company plans to store product catalog data that includes product ID, name, description, price, and a varying set of attributes (e.g., size, color, material). The application requires low-latency reads and writes, global distribution, and the ability to handle schema flexibility. Which Azure data store is best suited for this workload?

easy
  • A.Azure SQL Database
  • B.Azure Cosmos DB
  • C.Azure Table Storage
  • D.Azure Blob Storage

Why B: Azure Cosmos DB is the best choice because it provides low-latency reads and writes (single-digit milliseconds at the 99th percentile), global distribution with multi-region writes, and automatic schema flexibility through its document model. It supports varying product attributes (e.g., size, color, material) without requiring schema changes, and its turnkey global distribution ensures data is replicated across regions for fast access.

Variation 4. A retail company wants to store product catalog data in a non-relational format. The data includes product ID, name, description, price, and an array of tags. The data is frequently updated and must support low-latency reads and writes at global scale. Which Azure service should they use?

easy
  • A.Azure Cosmos DB
  • B.Azure Table Storage
  • C.Azure Blob Storage
  • D.Azure Cache for Redis

Why A: Azure Cosmos DB is a globally distributed NoSQL database service that supports low-latency reads and writes at global scale. It can store JSON documents with arrays, making it suitable for product catalog data that includes tags. Azure Table Storage is a key-value store but lacks global distribution and support for complex queries. Azure Blob Storage is designed for unstructured blob data, not transactional updates. Azure Cache for Redis is an in-memory cache, not a durable data store for product catalogs.

Variation 5. You need to store a collection of JSON documents that contain user profile data. The data is frequently queried by user ID and by email address. The solution must support indexing on multiple fields and provide low-latency queries. Which Azure service should you use?

easy
  • A.Azure Table Storage
  • B.Azure Cache for Redis
  • C.Azure Cosmos DB
  • D.Azure Blob Storage

Why C: Azure Cosmos DB is a NoSQL database that supports indexing on multiple fields and provides low-latency queries on JSON documents. Option A is wrong because Azure Table Storage is a key-value store with limited indexing (only on partition key and row key). Option B is wrong because Azure Cache for Redis is an in-memory cache, not a durable indexed store. Option D is wrong because Azure Blob Storage stores unstructured blobs and does not support indexing on document fields.

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.