Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
Databricks SQL
Databricks Runtime 13.3 LTS и более поздние версии
только для Unity Catalog
Эта команда создает внешнее подключение (или сервер), представляющее удаленную систему данных определенного типа, используя системные параметры, которые предоставляют расположение удаленной системы и сведения о проверке подлинности.
Внешние подключения обеспечивают федеративные запросы.
Note
CREATE CONNECTION предназначен для подключений Федерации Lakehouse (федеративный запрос). Чтобы создать подключения для конвейеров приема управляемых данных в Lakeflow Connect, используйте REST API подключений или интерфейс командной строки Databricks (databricks connections create). См. раздел "Развертывание".
Important
При установке параметров подключения, которые несут учетные данные, такие как пароль или маркер, чтобы обеспечить их безопасность, укажите значение, используя secret функцию, а не ввод литерального значения непосредственно в предложении OPTIONS . Это позволяет ссылать на секрет, хранящийся в секретной службе Databricks , а не включать значение учетных данных в инструкцию. См. примеры.
Синтаксис
CREATE CONNECTION [IF NOT EXISTS] connection_name
TYPE connection_type
OPTIONS ( option value [, ...] )
[ COMMENT comment ]
Для соответствия стандартам можно также использовать SERVER вместо CONNECTION.
Параметры
connection_nameУникальный идентификатор подключения на уровне хранилища метаданных каталога Unity.
connection_typeОпределяет тип подключения и должен быть одним из следующих элементов:
DATABRICKS-
HTTPприменимо: Databricks SQL
Databricks Runtime 16.2 и выше MYSQLPOSTGRESQLREDSHIFTSNOWFLAKE-
SQLDW(Synapse) SQLSERVER
OPTIONSЗадает
connection_typeопределенные параметры, необходимые для установления подключения.Параметр
Ключ свойства. Ключ может состоять из одного или нескольких идентификаторов, разделенных точкой или
STRINGлитералом.Ключи свойств должны быть уникальными и чувствительны к регистру.
значение
Значение для свойства. Значение должно быть выражением
BOOLEAN,STRINGINTEGERилиDECIMALконстантой.Для любого варианта, который содержит учетные данные, например пароль или маркер, используйте
secretфункцию вместо прямого ввода значения. Например, укажитеvalueзначениеpasswordsecret('secrets.r.us', 'postgresPassword')вместо ввода литерального пароля.
Параметры HTTP
Применимо: Databricks SQL
Databricks Runtime 16.2 и более новые версии
Тип ПОДКЛЮЧЕНИЯ HTTP поддерживает следующие ключи и значения параметров:
hostЛитерал
STRING. Указываетhost_nameдля внешнего сервиса. Исключение возникает, если путь к узлу не является нормализованным URL-адресом.bearer_tokenТокен аутентификации, используемый для вызова внешней службы. Укажите маркер с помощью функции SECRET , а не в качестве
STRINGлитерала. Например, значение может состоятьsecret('secrets.r.us', 'httpPassword')в отличие от ввода литерального токена.portнеобязательный литералINTEGER, указывающий порт. Значение по умолчанию —443;base_pathНеобязательный литерал
STRING. Значение по умолчанию —/. Исключение возникает, если путь содержит пустую строку или неправильный путь с пробелами или специальными символами.
Примеры
Укажите учетные данные с помощью secret функции, как показано в следующих примерах, а не ввод паролей или маркеров напрямую.
-- Create a postgresql connection.
-- Provide the user and password using the secret function rather than
-- entering them directly.
> CREATE CONNECTION postgresql_connection
TYPE POSTGRESQL
OPTIONS (
host '<hostname>',
port '5432',
user secret('secrets.r.us', 'postgresUser'),
password secret('secrets.r.us', 'postgresPassword'));
-- Set up a connection to Slack.
-- Provide the bearer token using the secret function rather than a literal value.
> CREATE CONNECTION slack_conn
TYPE HTTP
OPTIONS (
host 'https://slack.com',
port '443',
base_path '/api/',
bearer_token secret('secrets.r.us', 'slackBearerToken')
);
-- Request to the external service
> SELECT http_request(
conn => 'slack_conn',
method => 'POST',
path => '/chat.postMessage',
json => to_json(named_struct(
'channel', channel,
'text', text
))
headers => map(
'Accept', "application/vnd.github+json",
)
);