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: