Describe considerations for working with non-relational data on Azure →easyMultiple ChoiceObjective-mapped
DP-900 Practice Question: Describe considerations for working with non-relational data on Azure
A mobile game developer needs to store player session data. Each session has a unique SessionID, a UserID, a start timestamp, an end timestamp, and a collection of game events (each event is a JSON object). The application requires low-latency point reads by SessionID and the ability to query all sessions for a given UserID within a time range. The schema of game events can vary between sessions (e.g., new event types added frequently). The developer wants a fully managed NoSQL database that supports flexible schemas and secondary indexing. Which Azure data store should they choose?
⚠ Common exam trap
Many candidates confuse Azure Table Storage with a fully queryable NoSQL database, but it lacks secondary indexing and complex query support, making it unsuitable for time-range 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 with the NoSQL API
Azure Cosmos DB with the NoSQL API is the correct choice because it provides a fully managed, globally distributed NoSQL database with native support for flexible schemas (schemaless JSON documents), low-latency point reads by partition key (SessionID), and automatic secondary indexing for querying by UserID within a time range. Its ability to handle varying game event schemas without schema migrations makes it ideal for this use case.
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 with the NoSQL API
Why this is correct
Azure Cosmos DB with the NoSQL API is a multi-model database that natively stores JSON documents and automatically indexes every property, including UserID and timestamp, enabling fast, schema-flexible queries. Its single-digit-millisecond latency and partition-based scaling suit high-volume game telemetry, while its SQL-like query syntax supports rich filters and time-range lookups on arbitrary fields without requiring a predefined schema.
- ✗
Azure Table Storage
Why it's wrong here
Azure Table Storage is a key-value NoSQL store that organizes data into entities partitioned by a partition key and row key, with no native secondary indexes. Because of this, querying by UserID would require a full table scan unless UserID is explicitly placed in the partition key, making time-range or attribute-based filtering inefficient. While Table Storage can store JSON text, it treats the string as opaque and cannot parse or index its internal fields at the record level.
- ✗
Azure Blob Storage
Why it's wrong here
Azure Blob Storage is designed for storing large, unstructured binary or text objects such as game assets, log files, or backups, not for individual session records. It offers no record-level querying or indexing—each blob must be downloaded in its entirety to inspect its contents, so retrieving a specific session would require scanning all blobs and parsing each one. This approach becomes prohibitively slow and expensive when a high volume of small session events must be queried by user or timestamp.
- ✗
Azure Cache for Redis
Why it's wrong here
Azure Cache for Redis is an in-memory data store intended for caching frequently accessed data or transient state, not as a durable system of record for session history. It supports data structures like hashes and sorted sets but lacks native secondary indexes on arbitrary fields and has no SQL-like query engine, so filtering sessions by UserID across many keys requires client-side iteration. Data is also inherently volatile unless persistence is explicitly configured, risking loss in a mobile game telemetry workload.
Go deeper
Related to this question
Learn chapter
Data Roles and Core Concepts
Key term
Azure Cosmos DB
Azure Cosmos DB is a fully managed, globally distributed NoSQL database service that offers fast reads and writes anywhere in the world with automatic scaling and multiple consistency models.
Key term
Schema
A schema is a blueprint or logical structure that defines how data is organized, stored, and accessed in a database or information system.
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 →
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.