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