Поделиться через


CREATE CATALOG

Область применения:флажок Databricks SQL флажок Databricks Runtime 10.4 LTS и более поздней флажок версии каталога Unity

Создает каталог с указанным именем. Если каталог с таким именем уже существует, возникает исключение.

При создании 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

    Создает каталог с указанным именем, если он не существует. Если каталог с таким именем уже существует, ничего не произойдет.

  • catalog_name

    Имя создаваемого каталога.

  • ИСПОЛЬЗОВАНИЕ PROVIDER_NAME SHARE share_name.

    При необходимости указывает, что каталог основан на общей папке разностного общего доступа.

    • provider_name

      Имя поставщика функции разностного общего доступа, который предоставил общую папку.

    • share_name

      Имя хранилища, указанное поставщиком provider_name.

  • УПРАВЛЯЕМОЕ РАСПОЛОЖЕНИЕ '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.

  • ИСПОЛЬЗОВАНИЕ CONNECTION_NAME ПОДКЛЮЧЕНИЯ

    Указывает подключение, в котором находится исходный каталог.

  • комментарий

    Необязательный литерал STRING. Описание каталога.

  • OPTIONS

    Задает параметры конкретного типа подключения, необходимые для идентификации каталога в соединении.

    • Параметр

      Ключ параметра. Ключ может состоять из одного или нескольких идентификаторов, разделенных точкой или STRING литералом.

      Ключи параметров должны быть уникальными и чувствительны к регистру.

    • значение

      Значение параметра. Значение должно быть выражением BOOLEAN, STRINGINTEGERили DECIMAL константой. Это значение также может быть вызовом SECRET функции SQL. Например, это 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');