GLOSSARY · DATABRICKS

Databricks catalogs and schemas, explained.

By Chris Davidson, founder of yForest · Updated September 26, 2026

A table's full name in Databricks is catalog.schema.table, three levels, not two. Here's what each one actually means and why it matters when you're writing SQL or browsing an explorer.

Start 14-day free trial Download on theMac App Store

No credit card. 14 days. Cancel in one click.

macOS 15+ · Apple Silicon native · 14-day free trial · No credit card

Quick answer: In Databricks, a catalog is the top-level container, often one per environment or business unit. A schema (Databricks also calls it a database) sits inside a catalog and groups related tables. A table sits inside a schema. Together they form catalog.schema.table, the fully qualified name Unity Catalog uses everywhere, including in QueryFlow's explorer and SQL editor.

Three levels, not two

Most relational databases give you two levels of grouping: a database, and schemas inside it. Databricks, under Unity Catalog, adds a level on top: a catalog. The full hierarchy is catalog, then schema, then table, and a fully qualified name looks like retail.gold.sales_by_product, catalog first. If you've worked mostly in Postgres or MySQL, this extra layer is the main adjustment.

What a catalog actually is

A catalog is the broadest container, often used to separate environments (dev, staging, prod) or major business domains (marketing, finance, product). Permissions can be granted at the catalog level, so a catalog is also a natural access boundary: a team might have full access to one catalog and none to another, regardless of what schemas exist inside either.

What a schema is

Inside a catalog, a schema (sometimes still called a database, the two terms are used interchangeably in Databricks) groups related tables. A common pattern is bronze, silver, gold schemas within one catalog, representing raw, cleaned, and business-ready layers of the same data. That's a convention, not a Databricks requirement, but it's common enough that you'll see it in most Unity Catalog setups.

A worked example

Say your company has a retail catalog with bronze, silver and gold schemas. A query against the business-ready layer looks like:

SELECT product_category, sum(revenue) AS total_revenue
FROM retail.gold.sales_by_product
WHERE sale_date >= current_date() - interval 30 days
GROUP BY product_category;

Swap gold for silver or bronze and you're querying an earlier stage of the same pipeline, in the same catalog, assuming your access allows it.

How this shows up in QueryFlow

The explorer in a Databricks connection follows this exact structure: catalogs at the top level, schemas inside each one, tables inside each schema. Set a default Catalog and Schema when you connect if you work mostly in one place, or leave them blank and browse the full structure. Autocomplete in the SQL editor understands the three-level naming too, so typing a catalog name narrows suggestions to its schemas, and a schema name narrows to its tables.

Where it matters beyond querying

When you set up a Databricks connection as a Data Sync target, the target table you pick still follows catalog.schema.table, and permissions are still checked at whichever level your service principal or token has been granted. If a sync fails with an access error, the catalog or schema level, not just the table, is usually where to look first.

A quick way to check what you can see

Running a metadata query against the information schema is often faster than clicking through the explorer level by level when you're not sure what you have access to:

SELECT table_catalog, table_schema, count(*) AS tables
FROM system.information_schema.tables
GROUP BY table_catalog, table_schema
ORDER BY table_catalog, table_schema;

That one query gives you the whole shape of what your token or service principal can see, catalog and schema together, without browsing the tree manually.

A note on naming conventions

Bronze, silver, gold is common but not universal, some teams use raw, staging, curated instead, or something specific to their own domain. There's no Databricks enforcement of any particular scheme, so when you join a new team, a quick look at the schema names in a catalog usually tells you which convention, if any, they've settled on.

QueryFlow Studio $9.99/mo · $99/yr
QueryFlow Pipelines $29.99/mo · $199.99/yr

Frequently asked

Is a schema the same thing as a database in Databricks?

Yes, Databricks uses the terms interchangeably. A schema and a database refer to the same level in the hierarchy.

Do I need to set a default catalog and schema?

No, it's optional. Leaving them blank lets you browse everything your access allows; setting defaults just saves typing if you mostly work in one place.

Can permissions differ between schemas in the same catalog?

Yes, Unity Catalog permissions can be set at the catalog, schema, or table level independently.

See your catalogs, not just your tables.

14-day free trial, no card. Connect a warehouse and browse the hierarchy.

Start 14-day free trial

No credit card. 14 days. Cancel in one click.