DP-203 Design and implement data storage Practice Question
A data engineer needs to store JSON documents that are frequently updated by multiple users concurrently. The solution must support optimistic concurrency control and have built-in indexing on all fields. Which Azure data store should be used?
⚠ Common exam trap
Candidates often choose Azure SQL Database because they associate concurrency control with relational databases, overlooking that Cosmos DB is purpose-built for JSON documents with automatic indexing and native optimistic concurrency via ETags, which is more aligned with the requirements than a relational store.
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 (SQL API) is the correct choice because it natively supports optimistic concurrency control via ETags (HTTP entity tags) and provides automatic indexing of all fields without requiring manual index management. This makes it ideal for storing JSON documents that are frequently updated by multiple concurrent users, as it ensures conflict detection and resolution while maintaining high performance.
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 Cosmos DB (SQL API)
Why this is correct
Azure Cosmos DB (SQL API) natively supports optimistic concurrency control through ETag-based conditional writes, satisfying the concurrent multi-user update requirement. Its automatic indexing policy indexes every property by default, meeting the built-in indexing constraint without manual configuration. JSON documents are stored natively, so no schema translation is needed.
- ✗
Azure Blob Storage
Why it's wrong here
Blob Storage offers no optimistic concurrency on individual JSON fields and no automatic indexing of document properties; ETag-based conditional writes apply to whole blobs, not field-level updates. It suits storing large unstructured files or static JSON archives, not concurrently edited documents requiring indexed queries.
- ✗
Azure SQL Database
Why it's wrong here
Azure SQL Database stores relational rows, not JSON documents, and its indexing covers defined columns rather than every field automatically. It is tempting because it supports JSON functions and optimistic concurrency via rowversion, but the requirement for built-in indexing on all fields points to a document database.
- ✗
Azure Table Storage
Why it's wrong here
Table Storage supports ETag optimistic concurrency, but entities are key-value rows without built-in indexing on all fields, so querying arbitrary JSON properties requires full scans. It fits cheap, high-volume keyed lookups, not flexible document queries across every field.
Go deeper
Related to this question
About these practice questions
This DP-203 question is part of Courseiva's 509-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 →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DP-203 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-203 exam.