DP-750: Unity Catalog Object Model Explained and with Real Exam Questions

By 5 min read
DP-750: Unity Catalog Object Model Explained and with Real Exam Questions

When preparing for DP-750: Microsoft Certified: Azure Databricks Data Engineer Associate, you must understand how Unity Catalog organizes data.

Unity Catalog is not only a permission system. It is the central governance layer for data and AI assets in Azure Databricks. It provides a structured object model for organizing data, applying access control, managing metadata, and supporting governance across workspaces.

For DP-750, the most important Unity Catalog structure is:

metastore
  └── catalog
        └── schema
              └── table / view / volume / function / model

Azure Databricks documentation describes catalogs as the first layer in Unity Catalog’s three-level namespace: catalog.schema.table-etc. A catalog contains schemas, and schemas contain tables, views, volumes, models, and functions.

---

1. What is a Unity Catalog metastore?

A metastore is the top-level container for Unity Catalog metadata.

It contains securable objects such as:

  • catalogs
  • schemas
  • tables
  • views
  • volumes
  • functions
  • storage credentials
  • external locations
  • connections
  • foreign catalogs

In practice, you usually do not create a new metastore for every team or department. A metastore is often shared across a Databricks account or region, while catalogs and schemas are used to organize and isolate business domains, environments, or data products.

For DP-750, when a question says:

> The workspace is attached to a Unity Catalog metastore.

it means the workspace can use Unity Catalog objects such as catalogs, schemas, managed tables, external locations, and governed permissions.

---

2. What is a catalog?

A catalog is the first level of the Unity Catalog namespace.

Example:

sales.transactions.orders

In this name:

sales        = catalog
transactions = schema
orders       = table

A catalog is the primary unit of data organization and logical isolation in Unity Catalog. Microsoft documentation explains that catalogs often mirror organizational units or software development lifecycle scopes, such as business units, domains, or environments.

Common catalog design patterns include:

dev
test
prod

or:

sales
finance
hr

or:

bronze
silver
gold

However, for governance and isolation, catalogs are often better used for business domains or environments, while schemas are used for more granular organization.

---

3. What is a schema?

A schema is the second level of the Unity Catalog namespace.

Example:

finance.procurement.assets

In this name:

finance     = catalog
procurement = schema
assets      = table

A schema organizes data and AI assets into a more granular category than a catalog. Microsoft documentation says schemas typically represent a single use case, project, or team sandbox, and they help with access control and data discovery.

For DP-750, schemas are often used to organize data by:

  • team
  • project
  • department area
  • data layer
  • sandbox
  • curated domain

Example:

finance.default
finance.procurement
finance.reporting

---

4. What is a table?

A table is a data object inside a schema.

Example:

finance.procurement.assets

This is a fully qualified table name.

For Unity Catalog, managed tables are usually the recommended default table type. Microsoft documentation says Unity Catalog managed tables are the default and recommended table type in Azure Databricks for Delta Lake and Apache Iceberg, and Unity Catalog manages read, write, storage, and optimization responsibilities for them.

For DP-750, if a question asks you to create a table in a specific catalog and schema, you can either:

  1. use the full three-part name:
CREATE TABLE finance.procurement.assets (
    asset_id INT,
    asset_name STRING,
    asset_type STRING
);

or:

  1. set the current catalog and schema first:
USE CATALOG finance;
USE SCHEMA procurement;

CREATE TABLE assets (
    asset_id INT,
    asset_name STRING,
    asset_type STRING
);

Both approaches identify the same table location in the Unity Catalog namespace.

---

5. Three-level namespace

Unity Catalog uses a three-level namespace:

catalog.schema.object

For tables, this means:

catalog.schema.table

Example:

finance.procurement.assets

This structure matters in DP-750 because many exam questions test whether you know where an object belongs.

|Object|Level| |---|---| |Metastore|Top-level metadata container| |Catalog|First namespace level| |Schema|Second namespace level| |Table|Third namespace level| |View|Third namespace level| |Volume|Third namespace level| |Function|Third namespace level| |Model|Third namespace level|

A common exam trap is confusing catalog and schema.

For example:

CREATE CATALOG schema2

is wrong if the requirement is to create a schema named schema2 inside an existing catalog.

The correct pattern is:

CREATE SCHEMA catalog1.schema2;

---

6. Managed location

A managed location is a cloud storage path used by Unity Catalog to store managed objects such as managed tables and managed volumes.

Managed storage can be configured at different levels:

metastore
catalog
schema

Microsoft documentation explains that managed tables and volumes are stored in managed storage locations, and that managed storage can be set at the metastore, catalog, or schema level. Data is stored at the lowest available location in the hierarchy.

This hierarchy is important:

Schema managed location
    overrides catalog managed location

Catalog managed location
    overrides metastore managed location

Metastore managed location
    fallback default

So if a schema has its own managed location, managed tables in that schema use the schema’s managed location.

---

7. MANAGED LOCATION vs LOCATION

This is a very important DP-750 exam detail.

For Unity Catalog schemas, if you want to specify the storage location, you should use:

MANAGED LOCATION

not:

LOCATION

Microsoft documentation for CREATE SCHEMA states that LOCATION is not supported in Unity Catalog, and if you want to specify a storage location for a schema in Unity Catalog, you must use MANAGED LOCATION.

Correct example:

CREATE SCHEMA catalog1.schema2
MANAGED LOCATION 'abfss://container@storageaccount.dfs.core.windows.net/data';

Incorrect example:

CREATE SCHEMA catalog1.schema2
LOCATION 'abfss://container@storageaccount.dfs.core.windows.net/data';

For DP-750, remember:

> Unity Catalog schema storage path = MANAGED LOCATION

---

8. Organizing catalogs and schemas

Unity Catalog design is about balancing:

  • governance
  • isolation
  • discoverability
  • naming consistency
  • access control
  • operational simplicity

Microsoft’s setup guidance says catalogs are the primary unit of data isolation in Unity Catalog, and all schemas, tables, volumes, views, and functions live in catalogs. It also recommends creating catalogs around logical boundaries such as business units, environments, or major data products.

For example, if your company has departments such as:

sales
finance
hr

and each department must have independently managed access and logically isolated assets, then each department can have its own catalog:

sales
finance
hr

Each catalog can then contain schemas:

sales.raw
sales.cleansed
sales.curated

finance.raw
finance.cleansed
finance.curated

hr.raw
hr.cleansed
hr.curated

This supports centralized governance while keeping access boundaries clear.

---

9. Development area organization

Another common DP-750 pattern is about organizing development areas.

If the requirement says:

  • isolated development areas
  • standard naming conventions
  • centralized governance
  • consistent structure

then do not let every team create random objects in the default catalog and schema.

A better pattern is:

development catalog
  ├── team_a_schema
  ├── team_b_schema
  └── team_c_schema

For example:

dev.team_sales
dev.team_finance
dev.team_iot

This keeps development isolated while still enforcing a shared naming standard.

In DP-750, if the case study says that naming conventions are inconsistent and development teams need isolated areas, the answer is usually:

> shared development catalog + standardized naming convention + separate schema per team

---

10. DP-750 decision table for Unity Catalog object model

|Scenario in the question|Best answer pattern| |---|---| |Need to create a schema inside catalog1|CREATE SCHEMA catalog1.schema_name| |Need schema-specific managed storage|MANAGED LOCATION| |Need to create a table in a specific schema|USE CATALOG, USE SCHEMA, then CREATE TABLE| |Need logical isolation for departments|Separate catalog per department| |Need isolated development areas with standard naming|Shared development catalog + schema per team| |Need consistent raw, cleansed, curated organization|Standard catalog/schema structure| |Need centralized governance|Unity Catalog| |Need object name with catalog, schema, table|Three-level namespace|

---

Real Exam Questions

Question 4

You have an Azure Databricks workspace that is attached to a Unity Catalog metastore named metastore1, metastore1 contains a catalog named catalog1.

You need to create a new schema named schema2 that meets the following requirements:

  • Is contained in catalog1
  • Uses abfss://container@storageaccount.dfs.core.windows.net/data as the managed location

Which SQL statement should you execute?

A. CREATE SCHEMA catalog1.schema2 LOCATION ‘abfss://container@storageaccount.dfs.core.windows.net/data’;

B. CREATE SCHEMA catalog1.schema2 MANAGED LOCATION ‘abfss://container@storageaccount.dfs.core.windows.net/data’; ✅ Correct Answer

C. CREATE CATALOG schema2 MANAGED LOCATION ‘abfss://container@storageaccount.dfs.core.windows.net/data’;

D. CREATE SCHEMA catalog1.schema2 WITH DBPROPERTIES (LOCATION-’abfss://container@storageaccount.dfs.core.windows.net/data’);

---

Question 6

You have an Azure Databricks workspace that is enabled for Unity Catalog and contains a catalog named finance, finance contains two schemas named default and procurement.

You need to create a table named assets in the procurement schema, assets must contain the following columns:

  • asset_id
  • asset_type
  • asset_name

How should you complete the SQL statement?

USE CATALOG finance;
USE SCHEMA procurement;
CREATE TABLE assets (
    asset_id INT,
    asset_name STRING,
    asset_type STRING
);

✅ Correct Answer

---

Question 15

Useful case information

Contoso identifies the following governance requirements:

  • Centralize the metadata catalog.
  • Provide isolated development areas that follow standard naming conventions.
  • Establish a consistent structure for organizing raw, cleansed, and curated data.

You need to organize Unity Catalog. The solution must meet the governance requirements.

What should you do?

A. Use a single shared schema for all the development teams and rely on table-level permissions for isolation.

B. Enable the development teams to create objects directly in the default catalog and schema.

C. Create a separate catalog for each development team and enable each team to choose its own schema names.

D. Create a shared development catalog, enforce a standardized naming convention, and assign each development team its own schema. ✅ Correct Answer

---

Question 30

Your company has sales, finance, and HR departments.

You have an Azure Databricks workspace that is enabled for Unity Catalog.

You need to implement Unity Catalog to meet the following requirements:

  1. Access to Unity Catalog for each department must be managed independently from that of the other departments.
  1. The data assets of each department must be isolated logically from those of the other departments.
  1. The solution must support centralized governance.

What should you do for each department?

A. Create a separate Azure Data Lake Storage Gen2 account.

B. Create dynamic views.

C. Create a new workspace.

D. Create a new catalog. ✅ Correct Answer

---

Key takeaways

For DP-750, Unity Catalog object model questions are usually about where objects belong and how to organize them for governance.

Remember these patterns:

  • Unity Catalog uses the namespace: catalog.schema.object
  • A catalog is the first level of data organization and logical isolation.
  • A schema is the second level and often represents a project, use case, or team sandbox.
  • Tables, views, volumes, functions, and models live inside schemas.
  • To create a schema inside a catalog, use CREATE SCHEMA catalog.schema.
  • To specify a Unity Catalog schema storage path, use MANAGED LOCATION.
  • For independent department-level access, create separate catalogs.
  • For isolated development areas with standard naming, use one shared development catalog and one schema per team.

If you understand the object model, many Unity Catalog questions become much easier because you can identify whether the answer should be at the catalog level, schema level, or table level.

Add Comments

Comments

Loading comments...