REST, FILE_BASED, DATABRICKS_UNITY (as syntactic sugar on top of REST), and AWS_GLUE. Each catalog accepts a different set of parameters and credentials.
Topics:
Syntax
Parameters
Common Parameters
| Parameter | Description |
|---|---|
<location_name> | A unique identifier for the location within your account. |
SOURCE | The external data source type. Currently, AMAZON_S3 and ICEBERG are supported. This should be ICEBERG for Iceberg locations. |
DESCRIPTION | Optional metadata describing the location’s purpose. |
Iceberg Parameters
| Parameter | Description |
|---|---|
CATALOG | The type of Iceberg catalog. Supported values: FILE_BASED, REST, DATABRICKS_UNITY, or AWS_GLUE. |
CATALOG_OPTIONS | Configuration options specific to the chosen catalog type. |
CREDENTIALS | Authentication credentials for accessing the Iceberg catalog. Depending on the type of catalog, either AWS or OAuth credentials are used. |
AWS Authentication Parameters
Use AWS authentication parameters forFILE_BASED and AWS_GLUE catalogs.
| Parameter | Description |
|---|---|
AWS_ACCESS_KEY_ID | Your AWS access key ID for key-based authentication. |
AWS_SECRET_ACCESS_KEY | Your AWS secret access key for key-based authentication. |
AWS_SESSION_TOKEN | Optional temporary session token for temporary credentials. |
AWS_ROLE_ARN | The ARN of the IAM role to assume for role-based authentication. |
AWS_ROLE_EXTERNAL_ID | Optional external ID for role assumption. |
OAuth Authentication Parameters
Use OAuth authentication parameters forREST or DATABRICKS_UNITY catalogs.
| Parameter | Description |
|---|---|
OAUTH_CLIENT_ID | The OAuth client ID for authentication. |
OAUTH_CLIENT_SECRET | The OAuth client secret for authentication. |
OAUTH_SCOPE | Optional OAuth scope for authentication. |
OAUTH_SERVER_URL | Optional OAuth server URL for authentication. |
Iceberg Catalog-Specific Parameters
FILE_BASED Catalog
| Parameter | Description |
|---|---|
URL | The URL for the file-based catalog. This must be a valid S3 URL. |
REST Catalog
| Parameter | Description |
|---|---|
URL | The REST catalog URL. |
WAREHOUSE | The warehouse identifier. |
NAMESPACE | The namespace identifier. |
TABLE | The table name. |
DATABRICKS_UNITY Catalog
| Parameter | Description |
|---|---|
WORKSPACE_INSTANCE | The Databricks workspace instance. |
CATALOG | The Unity Catalog name. |
SCHEMA | The Unity Catalog schema name. |
TABLE | The Unity Catalog table name. |
AWS_GLUE Catalog
| Parameter | Description |
|---|---|
URL | The AWS Glue endpoint URL. Format: https://glue.<region>.amazonaws.com/iceberg |
CATALOG_ID | The AWS Glue catalog ID. Must be the default catalog for your account. Nested and named catalogs are not currently supported. |
DATABASE | The AWS Glue database name. |
TABLE | The AWS Glue table name. |
Examples
File-based catalog
Used to access Iceberg tables directly from S3. For file-based Iceberg catalogs, use AWS key-based or role-based authentication inCREDENTIALS.
With access key and secret:
REST catalog
Used to access Iceberg in REST catalogs, that implement the Iceberg REST API spec. For generic REST Iceberg catalogs, use OAuth parameters forCREDENTIALS.
Databricks Unity Catalog
Used to access Iceberg tables in a Databricks Unity Catalog. Offered as syntactic sugar on top ofCATALOG = REST, for users who may be more familiar with Databricks Unity Catalog terminology.
For configuring Unity Catalog in your Databricks workspace, see Databricks - Set up and manage Unity Catalog. Note that you will need to enable credential vending in your Unity Catalog, see Databricks - Unity Catalog credential vending for external system access.
For general information about reading Databricks tables from Iceberg clients, see Databricks - Read Databricks tables from Iceberg clients.
For Databricks Unity Catalogs, use OAuth parameters for CREDENTIALS.
Snowflake Open catalog (as a generic REST catalog)
Iceberg tables in Snowflake Open Catalog can currently be read by using aLOCATION with CATALOG = REST.
For setting up a Snowflake Open Catalog in your account, see Snowflake - Snowflake Open Catalog overview. Note that you will need to enable credential vending for your Iceberg tables, see Snowflake - Use catalog-vended credentials for Apache Iceberg™ tables.
For general information about reading Snowflake Open Catalog tables from Iceberg clients, see Snowflake - Checking your REST catalog configuration.
For Snowflake Open catalogs, use OAuth parameters for CREDENTIALS.
AWS Glue catalog
Used to access Iceberg tables in AWS Glue Data Catalog. Firebolt automatically chooses the appropriate authentication method:- Vended credentials: If Lake Formation is enabled and returns vended credentials, Firebolt uses those credentials to access your data storage.
- Standard credentials: When vended credentials are unavailable, Firebolt uses your provided credentials to access both the Glue catalog and underlying storage.
getDataAccess permission to your IAM credentials: