CREATE CATALOG
Si applica a: Databricks SQL Databricks Runtime 10.4 LTS e versioni successive solo Unity Catalog
Crea un catalog con il nome specificato. Se esiste già un catalog con lo stesso nome, viene generata un'eccezione.
Quando si crea un FOREIGN
catalog, verrà popolato con tutti gli schemi e i relativi tables visibili per l'utente autenticato.
Sintassi
CREATE CATALOG [ IF NOT EXISTS ] catalog_name
[ USING SHARE provider_name . share_name |
MANAGED LOCATION location_path |
COMMENT comment |
OPTIONS ( { option_name = option_value } [ , ... ] ) ] [...]
CREATE FOREIGN CATALOG [ IF NOT EXISTS ] catalog_name
USING CONNECTION connection_name
[ COMMENT comment ]
OPTIONS ( { option_name = option_value } [ , ... ] )
Parameters
FOREIGN
Si applica a: Databricks SQL Databricks Runtime 13.3 LTS e versioni successive
Specifica che il catalog viene importato da una connessione .
SE NON ESISTE
Crea un catalog con il nome fornito, se non esiste. Se esiste già un catalog con lo stesso nome, non succederà nulla.
-
Nome del catalog da creare.
USING SHARE provider_name share_name
.
Facoltativamente, specifica che il catalog si basa su una condivisione Delta Sharing .
-
Nome del provider di condivisione Delta che ha fornito la condivisione.
-
Nome della condivisione fornita da provider_name.
-
LOCALITÀ GESTITA location_path
Facoltativamente, specifica il percorso di archiviazione gestito per il catalog, diverso dal percorso di archiviazione radice del metastore. Questo percorso deve essere definito in una configurazione della posizione esterna ed è necessario avere il privilegio
CREATE MANAGED STORAGE
per la configurazione della posizione esterna. È possibile usare il percorso definito nella configurazione della posizione esterna o un sottopercorso (in altre parole,'abfss://container@storageaccount.dfs.core.windows.net/finance'
o'abfss://container@storageaccount.dfs.core.windows.net/finance/product'
). Supportato in Databricks SQL o nei cluster che eseguono Databricks Runtime 11.3 LTS e versioni successive.Vedere anche Usare i tables gestiti e Creare un metastore Unity Catalog.
USING CONNECTION connection_name
Specifica la connessione where in cui si trova la fonte catalog.
comment
Valore letterale facoltativo
STRING
. La descrizione del catalog.OPTIONS
Imposta le parameters specifiche per tipo di connessione necessarie per identificare il catalog nella connessione.
option_name
La chiave dell'opzione. La chiave può essere costituita da uno o più identificatori separati da un punto o da un valore letterale
STRING
.Le chiavi di opzione devono essere univoche e fanno distinzione tra maiuscole e minuscole.
option_value
Valore per l'opzione. Il valore deve essere un'espressione costante
BOOLEAN
,STRING
,INTEGER
oDECIMAL
. Il valore può anche essere una chiamata alla funzione SQLSECRET
. Ad esempio, l'oggettovalue
forpassword
può includeresecret('secrets.r.us', 'postgresPassword')
anziché immettere la password letterale.
Esempi
-- Create catalog `customer_cat`. This throws exception if catalog with name customer_cat
-- already exists.
> CREATE CATALOG customer_cat;
-- Create catalog `customer_cat` only if catalog with same name doesn't exist.
> CREATE CATALOG IF NOT EXISTS customer_cat;
-- Create catalog `customer_cat` only if catalog with same name doesn't exist, with a comment.
> CREATE CATALOG IF NOT EXISTS customer_cat COMMENT 'This is customer catalog';
-- Create a catalog from a Delta Sharing share.
> CREATE CATALOG customer_cat USING SHARE cdc.vaccinedata;
-- Create a catalog with a different managed storage location than the metastore's.
> CREATE CATALOG customer_cat MANAGED LOCATION 'abfss://container@storageaccount.dfs.core.windows.net/finance';
-- Create a foreign catalog linked to postgresdb at postgresql_connection
> CREATE FOREIGN CATALOG postgresql_catalog
USING CONNECTION postgresql_connection
OPTIONS (database 'postgresdb');