DP-900 · Domain 3 of 4

DP-900 Domain 3: Describe considerations for working with non-relational data on Azure

Choosing among Azure Blob storage, Azure Files and Azure Table storage, and knowing when Azure Cosmos DB fits and which of its APIs matches a document, key-value, column-family or graph workload.

Exam weight
15–20%
Official functional groups
2
Estimated questions estimate
~9
Suggested study time estimate
4–6 hrs

About 11 min read Reviewed October 2026

Overview

Domain 3 is the smallest DP-900 domain and has two functional groups. The first covers Azure Storage capabilities: Blob storage for large amounts of unstructured objects, Azure Files for managed file shares reached over SMB or NFS, and Azure Table storage for simple, low-cost key-value entities.

The second group covers Azure Cosmos DB: identifying the workloads it suits, such as globally distributed apps, IoT telemetry, retail catalogs and personalization, and describing its APIs. Those APIs let you work with Cosmos DB through a native NoSQL document model or through compatible interfaces for MongoDB, Apache Cassandra, Apache Gremlin and Table. The exam asks which service or API fits a stated need, so the key skill is matching data model, protocol and scale requirements to the right option.

How it's tested

Questions describe a storage need, such as a file share for legacy apps, cheap storage for rarely read archives, or a globally distributed app with low latency, and ask which service, tier or API applies. Clues are usually a protocol, an existing database technology, an access pattern or a latency and distribution requirement.

  • Pick the storage service

    Objects and media point to Blob storage, mounted shares over SMB or NFS to Azure Files, and simple keyed entities to Table storage.

  • Pick the access tier

    Frequently read data belongs in hot, infrequently read data in cool or cold, and long-term retention with hours of rehydration in archive.

  • Pick the Cosmos DB API

    An existing MongoDB or Cassandra application keeps its drivers through the matching API, graph traversal needs Gremlin, and new apps default to NoSQL.

Reasoning it through

A company runs an app built on Apache Cassandra and wants a managed, globally distributed service without rewriting data access code. Blob storage and Table storage would require new code and do not support the Cassandra Query Language. The NoSQL API is the native choice for new apps, not existing Cassandra clients. Azure Cosmos DB for Apache Cassandra accepts the existing drivers and CQL, so it meets the requirement.

Functional groups 2

Official functional groups from the Microsoft outline, in outline order.

3.1 Describe the capabilities of Azure storageFeatures of Azure Blob storage, Azure Files and Azure Table storage.
What it means
This group covers describing the features of Azure Blob storage, Azure Files and Azure Table storage, and recognizing which service suits a given storage need.
What to understand
Blob storage holds unstructured objects in containers within a storage account. Block blobs suit files and media, append blobs suit logs that grow by appending, and page blobs back virtual machine disks. Access tiers trade storage cost against access cost: hot, cool, cold and archive, with archive data needing rehydration before reads. Enabling a hierarchical namespace turns the account into Azure Data Lake Storage Gen2 for analytics. Azure Files provides fully managed file shares that machines mount over SMB or NFS, useful for lift-and-shift apps and shared configuration. Azure Table storage keeps schemaless entities addressed by a partition key and row key, offering cheap key-value storage without joins or relationships.
How it shows up
Expect a storage requirement and a choice between Blob, Files and Table, or a question about access tiers and blob types.
Common confusion
Thinking Blob storage can be mapped as a network drive like Azure Files; mounted shares are what Azure Files provides.
3.2 Describe the capabilities and features of Azure Cosmos DBAzure Cosmos DB use cases and its APIs.
What it means
This group covers identifying use cases for Azure Cosmos DB and describing the Azure Cosmos DB APIs that applications use to store and query data.
What to understand
Azure Cosmos DB is a fully managed NoSQL database with single-digit millisecond latency, automatic indexing, elastic scale through partitioning, and multi-region replication with optional writes in several regions. It fits IoT telemetry, retail and product catalogs, gaming leaderboards, personalization and web or mobile apps with global users. Throughput is provisioned in request units or consumed through serverless. The NoSQL API stores JSON documents and is queried with a SQL-like language. The MongoDB and Apache Cassandra APIs let existing apps keep their drivers, the Apache Gremlin API stores graphs of vertices and edges, and the Table API offers a premium upgrade path for Azure Table storage apps.
How it shows up
Expect a scenario naming global distribution, low latency or an existing open-source database, and you choose Cosmos DB and the right API.
Common confusion
Assuming the NoSQL API means no query language; it uses a SQL-like syntax over JSON documents.

High-yield concepts

The terms, rules and formulas this domain turns into questions most often.

  • Azure Blob storage

    Object storage for unstructured data.

    Remember
    Containers hold block, append and page blobs.
    Tested as
    Storage service questions.
    Trap
    Treating it as an SMB file share.
  • Access tiers

    Hot, cool, cold and archive blob tiers.

    Remember
    Lower storage cost means higher access cost and latency.
    Tested as
    Cost optimization questions.
    Trap
    Expecting instant reads from archive.
  • Azure Data Lake Storage Gen2

    Blob storage with a hierarchical namespace.

    Remember
    Folders and POSIX-style permissions for analytics.
    Tested as
    Analytics storage questions.
    Trap
    Thinking it is a separate database service.
  • Azure Files

    Managed file shares in the cloud.

    Remember
    Mounted over SMB or NFS by many clients.
    Tested as
    Lift-and-shift and shared file questions.
    Trap
    Using it for object storage of media at scale.
  • Azure Table storage

    Key-value store for schemaless entities.

    Remember
    Entities found by partition key and row key.
    Tested as
    Simple NoSQL questions.
    Trap
    Expecting joins or foreign keys.
  • Azure Cosmos DB

    Globally distributed, fully managed NoSQL database.

    Remember
    Low latency, automatic indexing, multi-region replication.
    Tested as
    NoSQL service questions.
    Trap
    Assuming it supports only one data model.
  • Request units

    Normalized measure of Cosmos DB throughput.

    Remember
    Reads, writes and queries all consume RUs.
    Tested as
    Cost and scale questions.
    Trap
    Confusing RUs with storage size.
  • NoSQL API

    Native Cosmos DB API for JSON documents.

    Remember
    Default choice for new Cosmos DB apps.
    Tested as
    API selection questions.
    Trap
    Picking it for existing MongoDB code.
  • API for MongoDB

    MongoDB wire-protocol compatibility.

    Remember
    Existing MongoDB drivers and tools keep working.
    Tested as
    Migration questions.
    Trap
    Thinking the app must be rewritten.
  • API for Apache Cassandra

    Column-family model with CQL support.

    Remember
    Existing Cassandra apps connect unchanged.
    Tested as
    Migration questions.
    Trap
    Choosing Table storage instead.
  • API for Apache Gremlin

    Graph database API.

    Remember
    Vertices and edges for relationship-heavy data.
    Tested as
    Graph questions.
    Trap
    Modeling deep relationships in Table storage.
  • Table API

    Cosmos DB API compatible with Azure Table storage.

    Remember
    Adds global distribution and dedicated throughput.
    Tested as
    Upgrade path questions.
    Trap
    Assuming it is the same as Table storage.

Side by side

Concepts candidates mix up, compared on the point that decides the answer.

Azure Storage services

ConceptMeaningKey differenceCommon trap
Blob storage Object storage in containers Unstructured objects accessed by URL or SDK Expecting to mount it as an SMB drive
Azure Files Managed file shares Mounted by many machines over SMB or NFS Choosing it for petabyte media archives
Table storage Key-value entity store Partition key and row key lookups, no schema Expecting relational queries

Azure Cosmos DB APIs

ConceptMeaningKey differenceCommon trap
NoSQL Native JSON document API SQL-like queries, best for new apps Using it for unchanged MongoDB code
MongoDB MongoDB-compatible document API Keeps existing MongoDB drivers Assuming code must be rewritten
Apache Cassandra Column-family API with CQL Keeps existing Cassandra apps Confusing it with the Table API
Apache Gremlin Graph API Traverses vertices and edges Using documents for deep relationship queries
Table Key-value API compatible with Table storage Premium global option for Table apps Thinking it changes the data model

Blob access tiers

ConceptMeaningKey differenceCommon trap
Hot Frequently accessed data Highest storage cost, lowest access cost Leaving old backups here
Cool and cold Infrequently accessed data Lower storage cost, minimum retention periods Ignoring early deletion charges
Archive Offline long-term retention Cheapest storage, rehydration takes hours Expecting immediate reads

Exam traps

Each trap is an answer that looks right. Learn the clue that should change your mind.

  1. Blob as a file share

    What candidates pick
    Use Blob storage so legacy servers can map a network drive.
    Why it looks right
    Both hold files.
    Why it's wrong
    Mapped drives over SMB or NFS are provided by Azure Files, not Blob storage.

    Clue to watch for Words like mount, mapped drive or SMB.

  2. Archive for active data

    What candidates pick
    Move monthly reports to archive to save money.
    Why it looks right
    Archive is the cheapest tier.
    Why it's wrong
    Archive data must be rehydrated for hours before reads, which suits only rarely needed data.

    Clue to watch for The data must be available on demand.

  3. Rewrite for Cosmos DB

    What candidates pick
    Migrate a MongoDB app to the NoSQL API.
    Why it looks right
    NoSQL is the native API.
    Why it's wrong
    The API for MongoDB lets existing drivers and queries work without a rewrite.

    Clue to watch for The scenario stresses minimal code changes.

  4. Table storage for global apps

    What candidates pick
    Use Azure Table storage for a globally distributed low-latency app.
    Why it looks right
    It is a cheap key-value store.
    Why it's wrong
    Cosmos DB, optionally through its Table API, provides multi-region replication and latency guarantees.

    Clue to watch for Users in several regions and strict latency.

  5. Relational for graphs

    What candidates pick
    Store a social network in Azure SQL Database.
    Why it looks right
    SQL is familiar.
    Why it's wrong
    Deep relationship traversal is the specific use case for the Gremlin graph API.

    Clue to watch for Questions about friends of friends or connected entities.

  6. Data Lake as a new service

    What candidates pick
    Deploy Data Lake Storage Gen2 as a service separate from Azure Storage.
    Why it looks right
    It has its own name.
    Why it's wrong
    Data Lake Storage Gen2 is a storage account with the hierarchical namespace enabled.

    Clue to watch for A question about enabling folder-level analytics storage.

Answer framework

Use these steps to choose a non-relational storage service, tier or Cosmos DB API.

  1. Identify the data model: unstructured objects, files on a share, simple key-value entities, JSON documents, column families or a graph of relationships.
  2. If files must be mounted by servers or users over SMB or NFS, choose Azure Files; for objects reached through URLs or SDKs, choose Blob storage.
  3. For Blob storage, pick the access tier from how often data is read and how quickly it must be available.
  4. If the scenario needs global distribution, multi-region writes or consistently low latency, choose Azure Cosmos DB.
  5. Choose the Cosmos DB API from existing technology: MongoDB, Cassandra or Table apps keep their API, graphs use Gremlin, new apps use NoSQL.

Practice question

A retailer is building a new product catalog app. Each product has different attributes stored as JSON, users are spread across three continents, and reads must have low latency in every region. Which Azure service and API should the team choose?

Choose one answer

Want more like this? The DP-900 practice test has questions for every domain.

Checklist

0 of 11

Tick each one you can do without notes. Your ticks stay in this browser.

Study strategy

This domain is compact, so aim to master it in a few focused sessions. Begin with a storage account in the Azure portal or a sandbox. Upload a file as a block blob, change its access tier, create a file share and look at the connection script for mounting it, then add a few entities to a table. Seeing the three services side by side makes the boundaries obvious.

Next, create a free-tier or serverless Cosmos DB account with the NoSQL API, add a few JSON items with different properties and run a query. Read the API overview page and build a five-row table of API, data model and when to choose it. Then drill short scenarios: a legacy app that needs a mapped drive, seven years of compliance records, an existing Cassandra cluster, a fraud graph, and a mobile game with players worldwide. If you can name the service and API for each without hesitation, you are ready for this part of the exam.

FAQ

How much of DP-900 is Domain 3, Describe considerations for working with non-relational data on Azure?

Microsoft weights the non-relational data domain at 15–20% of DP-900, the smallest share, split between Azure Storage and Azure Cosmos DB.

What is the difference between Blob storage and Azure Files?

Blob storage is object storage accessed through URLs and SDKs. Azure Files provides shares that machines mount as drives over SMB or NFS.

Which Cosmos DB API should a new application use?

The NoSQL API is the native and generally recommended choice for new applications that store JSON documents.

Can I move a MongoDB app to Cosmos DB without rewriting it?

Yes, the Azure Cosmos DB for MongoDB API supports MongoDB drivers and tools, so most apps need only a connection string change.

Is Azure Data Lake Storage Gen2 a separate product?

It is built on Blob storage. You enable a hierarchical namespace on a storage account to get folder semantics and fine-grained permissions.

What are request units in Cosmos DB?

A normalized measure of the CPU, memory and IO an operation uses, used for provisioning and billing throughput.

When is Azure Table storage enough instead of Cosmos DB?

When you need cheap, simple key-value storage in a single region without strict latency or global distribution requirements.

Other Data & Analytics certifications

Where the same subject shows up in other exams. Cards marked "Same subject" open the matching domain.

Test your Domain 3 knowledge

You have reviewed Blob storage, Azure Files, Table storage and Cosmos DB with its APIs. Check whether you can match each storage need to the right service.

Keep going