Skip to content

Setting up Unity Catalog

We set up Unity Catalog with catalogues for each domain, group-based permissions and column-level lineage. Koninklijk Concertgebouworkest uses it in its data platform.

The Koninklijk Concertgebouworkest makes scattered information easy to find in a data platform with Unity Catalog

For the Koninklijk Concertgebouworkest, we developed a data platform on Databricks and Azure, using Delta Lake, Unity Catalog and dbt. We connect, structure and standardise data from multiple systems and archives, making information quicker to find and widely accessible across the organisation.

Read the case study

Who can see which table, and where does this figure come from?

The tables are still in the Hive metastore, access is managed per workspace, and when a figure in Power BI doesn’t match, an engineer traces it back manually. Unity Catalog brings permissions, owners and lineage together in one place.

Book a meeting
Vier collega's ordenen gekleurde memoblaadjes in groepen op een glazen wand.

A well-configured catalogue manages access, ownership and provenance across all workspaces

Discuss your Unity Catalog setup

Catalogues by environment and domain

A schema for each team, with one group owning each catalogue. You bind production catalogues to production workspaces so development environments cannot access them.

Permissions through groups

Groups come from your identity provider, such as Microsoft Entra ID, at account level. Jobs that write to production run under a service principal.

Lineage and audit

Unity Catalog records lineage down to column level and logs access in the system table for auditing. This lets you see in advance which reports a change will affect.

Configuration as code

We define catalogues, permissions and external locations in Terraform so every change is traceable. Terraform is also part of Vivara’s data platform.

The structure follows who needs which data, not the folders in your storage

  1. Map and organise

    We map out workspaces, Hive tables, mounts and groups, then design the catalogues with an owner for each one.

  2. Identities and permissions

    Groups come from your identity provider at account level. We assign permissions by catalogue and schema, not by user.

  3. Migrate and close down

    We migrate the tables, update jobs to reference the new names, then disable DBFS mounts and old access.

Do you need to move to Unity Catalog now, or can it wait?

Talk it through with us

A good fit if

Your workspace predates November 2023 and still uses the Hive metastore, several teams share data, or you need to show who has accessed sensitive data.

Not a good fit if

You have one new workspace with a small team. Unity Catalog is already enabled, and your team can often set up a catalogue for each environment with a few groups themselves.

What determines the scope

The number of workspaces and Hive tables, files and scripts on DBFS, jobs that use old table names, and whether groups already come from your identity provider. You provide an owner for each domain.

Do all jobs need to migrate at once?

No. With Hive metastore federation, you can access existing tables through Unity Catalog while migrating jobs step by step. Databricks does recommend completing the migration.

Federate, SYNC or CLONE: how do you migrate Hive tables?

Federate, then upgrade

Choose this if you want to keep history, permissions and views without moving data. We recommend it for most tables, with SET MANAGED as the final step.

SYNC to external tables

Choose this if the tables are already in your own cloud storage and you want to run both setups in parallel for a while. You can schedule SYNC; the files stay where they are.

CLONE to managed tables

Choose this if your managed Delta tables are in the DBFS root. A deep clone copies data and metadata; you then update your jobs and permissions.

We set up Unity Catalog as part of the Databricks platforms we build

Data Science Lab has worked with data and AI since 2016 and is a Databricks Partner. We have built data platforms on Databricks for clients including Koninklijk Concertgebouworkest and Vivara, and are building one for Fokker Services Group.

Book an introductory meeting

In our first conversation, we’ll look at your existing workspaces and metastore

Stef Stoelwinder

Stef Stoelwinder

Business Development

Stef is your first point of contact. We’ll discuss how your Databricks is currently set up and who needs to see which data.

How do we keep track of who can access which data in Databricks?

Describe how your Databricks environment is currently set up. We’ll reply by email or arrange an initial conversation.

Enter a valid email address.

Let us know how we can help you.

Frequently asked questions

Unity Catalog is Databricks’ governance layer. It controls access for every query, records lineage and logs activity for auditing. Tables, views, volumes, functions and models have a three-part name: catalog.schema.object.

One metastore per cloud region holds the catalogues for all workspaces in that region. Unity Catalog is enabled by default for workspaces created after 8 November 2023. It is a building block of your data foundation.

First, users, groups and service principals move to the account level, and workspace-local groups become account groups. Then you connect the workspace to a metastore, migrate the tables and grant permissions to the groups.

Next, queries and jobs are updated to use the new names, files move from DBFS to volumes, and compute runs on Databricks Runtime 13.3 LTS or higher. For large environments, there is UCX, a Databricks Labs tool that starts with an assessment. Databricks does not formally support UCX.

Unity Catalog automatically records lineage for queries on Databricks, down to column level, across all workspaces connected to the same metastore. You can see which jobs, notebooks and dashboards populate or use a table. The system tables system.access.table_lineage and column_lineage retain records for a year.

There are gaps. If you rename a table or column, its lineage is lost. If you refer to a path rather than a table name, you will not see column-level lineage in Catalog Explorer. You can add Power BI as an external object.

Yes. A row filter is a SQL function that determines whether a user can see each row, for example by showing only their own region. A column mask displays a masked value, such as a partially obscured BSN.

For applying this across many tables, Databricks recommends ABAC: policies at catalogue or schema level that use governed tags. Data Classification can automatically identify and tag sensitive data. Your organisation decides which data is sensitive and who can see what.

For a managed table, Unity Catalog manages both access and the files, in Delta or Iceberg format. Databricks recommends managed tables for new tables because maintenance and optimisation are then automatic.

External tables are stored at a path in your own storage, registered through an external location. They are useful during migration because the data does not need to move. Ideally, let other tools read from them only: writing outside Unity Catalog bypasses permissions, auditing and lineage.

Compute must run in a Unity Catalog access mode: standard, where multiple users share a cluster, or dedicated, for one user or group. Databricks recommends standard unless a workload needs something it does not support, such as Databricks Runtime for ML, GPUs, R or RDDs.

During a migration, we therefore review all clusters and jobs. This also reveals old runtimes and code that relies directly on mounts.

Unity Catalog is the tool: it enforces permissions, shows data origins and logs access. Your organisation agrees who owns a domain, which definitions apply and who approves access. You can read about that under data governance.

We set up the catalogue to reflect those agreements, with groups as owners and requests routed to the relevant owner. If we build the platform, we can also manage it through management and continuous improvement.

If you have a new workspace with one small team and a handful of tables. Unity Catalog is already enabled; a catalogue for each environment and permissions managed through a few groups are enough.

If you are still unsure whether Databricks is the right platform, start with that decision. Read Databricks implementation to see how we set up a lakehouse, and partners to see how we compare Databricks and Microsoft Fabric.