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.
No credit card. 14 days. Cancel in one click.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Yes, Databricks uses the terms interchangeably. A schema and a database refer to the same level in the hierarchy.
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.
Yes, Unity Catalog permissions can be set at the catalog, schema, or table level independently.
14-day free trial, no card. Connect a warehouse and browse the hierarchy.
No credit card. 14 days. Cancel in one click.