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
Создает каталог с указанным именем, если он не существует. Если каталог с таким именем уже существует, ничего не произойдет.
-
Имя создаваемого каталога.
ИСПОЛЬЗОВАНИЕ PROVIDER_NAME SHARE 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
,STRING
INTEGER
или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');