Introduction
Databricks Unity Catalog provides a unified governance layer for managing data access and organizing datasets efficiently. One of its core principles is the three-level namespace, which ensures consistent data organization across different workspaces.
In this article, we'll focus on.
- Understanding the Metastore and its role.
- Explaining the three-level namespace structure.
- Querying data using SQL in a Databricks notebook.
Challenges
Before the Unity Catalog, Databricks stores the data within the workspace's Hive Metastore. This led to significant data-sharing challenges across teams and departments.
- Data Silos Across Workspaces: Each Databricks workspace had its own Hive Metastore, meaning data was not accessible across different workspaces.
- Complex and Inefficient Data Sharing: Alternatively, teams resorted to external storage solutions (e.g., mounting an external Data Lake), which required additional permissions and configurations.
- Lack of Centralized Governance: There is no single source of truth for auditing and governance, making it difficult to track who accessed what data.
Unity Catalog Metastore and three-level namespace

The top-level container is the Metastore. There are two key differences between Unity Catalog's Metastore and the Hive Metastore.
- This Metastore is defined at the regional level.
- It is the centralized metadata and governance layer for organizing and securing data across multiple workspaces.
Below the Metastore, Unity Catalog structures data in a three-level namespace:
- Catalog: The first-level container. You can define multiple catalogs in your Metastore.
- Schema: The next level is schema, and it's often referred to as Database. You can have multiple schemas within a Catalog.
- For the third level, we have Table, View, Function, and Volume.
- The table stores data in delta format.
- Volume allows you to store data in any format. This ranges from structure data (db table, XML), semi-structure (JSON), or binary file (Zip file).
Let's dive into the article on how to utilize the three-level namespace.
In this article, we will use the NYC Taxi sample data from Databricks.
We will be using Databricks' SQL Query for our demo.





Join the conversation! Your thoughts help the community grow.