CREATE CATALOG
Description
Creates a new catalog.
Note that the SQL statement does not end with ;
Syntax
CREATE CATALOG <name>
TYPE = { 'GLUE' | 'HIVE' | 'BIGQUERY' | 'DATAHUB' | 'ONETABLE' | 'DATAPROC' | 'UNITY' }
[ CREDENTIAL_TYPE = { 'CREDENTIAL_TYPE_ONEHOUSE' | 'CREDENTIAL_TYPE_SECRET_MANAGER' } ]
WITH 'key1' = 'value1', 'key2' = 'value2' ....
Required parameters
<name>
: Identifier for the catalog- Must be unique for your account
- Must start with an alphabetic character and cannot contain spaces or special characters unless the entire identifier string is enclosed in double quotes (e.g. "Staging Catalog")
- Case-sensitive
TYPE
: Specifies the type of the catalog to be created.
Optional parameters
CREDENTIAL_TYPE
: Credential Management Type. Refer Credential Management to read more.CREDENTIAL_TYPE_ONEHOUSE
: Credentials get stored in onehouse control-plane.CREDENTIAL_TYPE_SECRET_MANAGER
: Credentials are stored in customer dataplane, users need to create the secret and share the cloud specific secret identifier.- Applicable only in case of datahub catalog.
- Default:
CREDENTIAL_TYPE_ONEHOUSE
.
Special parameters
Include special parameters after WITH
as type String.
IF TYPE IS HIVE OR DATAPROC
hive.catalog.servers
- Server information of hive catalogs. Specify values like 'hive.catalog.servers' = 'server1' or 'hive.catalog.servers' = 'server1, server2' depending upon single or multiple servers.
IF TYPE IS BIGQUERY
bq.project.id
- Google Cloud Project Name where BigQuery is to be Synced.bq.require.partition.filter
- Require partition filtering when users query the table from BigQuery.bq.big.lake.connection.enabled
- Set to true to set up a BigLake connection for the table
IF TYPE IS DATAHUB
datahub.server.url
- Server URL of the DataHub.datahub.data.platform.name
- Identifier to represent Hudi when creating its corresponding DataPlatform entity within Datahub.datahub.dataset.environment
- Environment to use when pushing entities to Datahub.
If CREDENTIAL_TYPE
is CREDENTIAL_TYPE_ONEHOUSE
(Default):
datahub.auth.token
- Auth token to connect to the DataHub.
If CREDENTIAL_TYPE
is CREDENTIAL_TYPE_SECRET_MANAGER
:
datahub.auth.token.reference
- Cloud specific identifier (e.g., ARN for AWS) of a secret containing the authtoken in specified format.
IF TYPE IS ONETABLE
onetable.target.formats
- Target formats to sync Hudi table to. Valid values are 'delta', 'iceberg' and 'delta, iceberg'.
IF TYPE IS UNITY
unity.databricks.host
- Host URL of the Databricks compute resourceunity.http.path
- HTTP Path of the Databricks compute resourceunity.auth.token
-personal-access-token
of the databricks workspaceunity.catalog.name
- Catalog name in the databricks to be synced
Example
Example syntax for creating a GLUE CATALOG.
CREATE CATALOG my_glue_catalog TYPE = 'glue'
Example syntax for creating a HIVE CATALOG.
CREATE CATALOG my_hive_catalog TYPE = 'hive' WITH 'hive.catalog.servers' = 'server1,server2'
Example syntax for creating a BIGQUERY CATALOG.
CREATE CATALOG my_bigquery_catalog TYPE = 'bigquery' WITH 'bq.require.partition.filter' = 'true',
'bq.project.id' = 'my-project', 'bq.big.lake.connection.enabled' = 'false'
Example syntax for creating a DATAHUB CATALOG.
CREATE CATALOG my_datahub_catalog TYPE = 'datahub' WITH 'datahub.server.url' = 'http://my.datahub.com',
'datahub.dataset.environment' = 'dev', 'datahub.auth.token' = 'example-auth-token',
'datahub.data.platform.name' = 'example-platform'
Example syntax for creating a ONETABLE CATALOG.
CREATE CATALOG my_onetable_catalog TYPE = 'onetable' WITH 'onetable.target.formats' = 'iceberg, delta'
Example syntax for creating a DATAPROC CATALOG.
CREATE CATALOG my_dataproc_catalog TYPE = 'dataproc' WITH 'hive.catalog.servers' = 'server1,server2'
Example syntax for creating a UNITY CATALOG.
CREATE CATALOG my_unity_catalog TYPE = 'unity' WITH 'unity.databricks.host' = 'https://my.cloud.databricks.com',
'unity.http.path' = 'sql/1.0/warehouse/xyz', 'unity.auth.token' = 'example-auth-token', 'unity.catalog.name' = 'example-catalog-name'
Sample response