CREATE CATALOG
適用対象: Databricks SQL
Databricks Runtime 10.4 LTS 以降
Unity Catalog のみ
指定した名前の catalog を作成します。 同じ名前の catalog が既に存在する場合は、例外が発生します。
FOREIGN
catalog を作成すると、すべてのスキーマとその tables が認証ユーザーに表示されます。
構文
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
適用対象:
Databricks SQL
Databricks Runtime 13.3 LTS 以上
catalog が CONNECTIONからインポートされることを指定します。
IF NOT EXISTS
存在しない場合は、指定した名前の catalog を作成します。 同じ名前の catalog が既に存在する場合、何も起こりません。
-
作成する catalog の名前です。
USING SHARE provider_name
.
share_nameオプションとして、catalog が デルタ共有に基づいていることを指定します。
-
共有を提供した Delta Sharing プロバイダーの名前。
-
provider_name によって提供される共有の名前。
-
MANAGED LOCATION location_path
必要に応じて、メタストアのルート ストレージの場所とは異なる catalog のマネージド ストレージの場所へのパスを指定します。 このパスは外部の場所の構成で定義する必要があり、ユーザーにはその外部の場所の構成に対する
CREATE MANAGED STORAGE
特権が必要です。 外部の場所の構成またはサブパス (つまり、'abfss://container@storageaccount.dfs.core.windows.net/finance'
または'abfss://container@storageaccount.dfs.core.windows.net/finance/product'
) で定義されているパスを使用できます。 Databricks SQL または Databricks Runtime 11.3 LTS 以上を実行しているクラスターでサポートされます。「マネージド tablesを操作する」と「Unity Catalog メタストアを作成する」も参照してください。
接続の使用中 connection_name
ソース catalogが存在する接続を指定します。
comment
STRING
リテラル (省略可能)。 catalogの説明。オプション
接続で catalog を識別するために必要な接続の種類固有の parameters を設定します。
option_name
オプション キー。 キーは、ドットで区切られた 1 つまたは複数の識別子、あるいは
STRING
リテラルで構成できます。オプション キーは一意である必要があり、大文字と小文字が区別されます。
option_value
オプションの値。 値は、
BOOLEAN
、STRING
、INTEGER
、またはDECIMAL
定数式である必要があります。 値は、SQL 関数のSECRET
呼び出しである場合もあります。 たとえば、value
のpassword
はリテラル パスワードを入力する代わりにsecret('secrets.r.us', 'postgresPassword')
で構成できます。
例
-- 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');