CREATE CATALOG

適用対象:check marked yes 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

    適用対象:check marked yes Databricks SQL 「はい」のチェック マーク Databricks Runtime 13.3 LTS 以降

    カタログが CONNECTION からインポートされることを指定します。

  • IF NOT EXISTS

    指定した名前のカタログが存在しない場合は作成します。 同じ名前のカタログが既に存在する場合は、何も行いません。

  • catalog_name

    作成するカタログの名前。

  • USING SHARE provider_name.share_name

    必要に応じて、カタログが Delta Sharing の共有に基づいていることを指定します。

  • 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 リテラル (省略可能)。 カタログの説明。

  • オプション

    接続でカタログを識別するために必要な接続の種類固有のパラメーターを設定します。

    • オプション

      オプション キー。 キーは、ドットで区切られた 1 つまたは複数の識別子、あるいは STRING リテラルで構成できます。

      オプション キーは一意である必要があり、大文字と小文字が区別されます。

    • value

      オプションの値。 値は、BOOLEANSTRINGINTEGER、または DECIMAL 定数式である必要があります。 値は、SQL 関数の SECRET 呼び出しである場合もあります。 たとえば、 passwordvalue はリテラル パスワードを入力する代わりに 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');