databricks_catalog Resource
June 12, 2026 ยท View on GitHub
Within a metastore, Unity Catalog provides a 3-level namespace for organizing data: Catalogs, Databases (also called Schemas), and Tables / Views.
A databricks_catalog is contained within databricks_metastore and can contain databricks_schema. By default, Databricks creates default schema for every new catalog, but Terraform plugin is removing this auto-created schema, so that resource destruction could be done in a clean way.
-> This resource can only be used with a workspace-level provider!
Example Usage
resource "databricks_catalog" "sandbox" {
name = "sandbox"
comment = "this catalog is managed by terraform"
properties = {
purpose = "testing"
}
}
Argument Reference
The following arguments are required:
name- Name of Catalog relative to parent metastore.storage_root- (Optional ifstorage_rootis specified for the metastore) Managed location of the catalog. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space,&, etc., they should be percent-encoded (space ->%20, etc.). If not specified, the location will default to the metastore root location. Change forces creation of a new resource.provider_name- (Optional) For Delta Sharing Catalogs: the name of the delta sharing provider. Change forces creation of a new resource.share_name- (Optional) For Delta Sharing Catalogs: the name of the share under the share provider. Change forces creation of a new resource.connection_name- (Optional) For Foreign Catalogs: the name of the connection to an external data source. Changes forces creation of a new resource.owner- (Optional) Username/groupname/sp application_id of the catalog owner.isolation_mode- (Optional) Whether the catalog is accessible from all workspaces or a specific set of workspaces. Can beISOLATEDorOPEN. Setting the catalog toISOLATEDwill automatically allow access from the current workspace.enable_predictive_optimization- (Optional) Whether predictive optimization should be enabled for this object and objects under it. Can beENABLE,DISABLEorINHERITcomment- (Optional) User-supplied free-form text.properties- (Optional) Extensible Catalog properties.options- (Optional) For Foreign Catalogs: the name of the entity from an external data source that maps to a catalog. For example, the database name in a PostgreSQL server.force_destroy- (Optional) Delete catalog regardless of its contents.provider_config- (Optional) Configure the provider for management through account provider. This block consists of the following fields:workspace_id- (Required) Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
Attribute Reference
In addition to all arguments above, the following attributes are exported:
id- ID of this catalog - same as thename.metastore_id- ID of the parent metastore.storage_location- effective storage Location URL (full path) for managed tables within catalog.catalog_type- the type of the catalog.created_at- time at which this catalog was created, in epoch milliseconds.created_by- username of catalog creator.securable_type- the type of Unity Catalog securable.updated_at- time at which this catalog was last modified, in epoch milliseconds..updated_by- username of user who last modified catalog.
Import
This resource can be imported by name:
import {
to = databricks_catalog.this
id = "<name>"
}
Alternatively, when using terraform version 1.4 or earlier, import using the terraform import command:
terraform import databricks_catalog.this <name>
Related Resources
The following resources are used in the same context:
- databricks_tables data to list tables within Unity Catalog.
- databricks_schemas data to list schemas within Unity Catalog.
- databricks_catalogs data to list catalogs within Unity Catalog.