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


functions группа команд

Note

Эта информация относится к Интерфейсу командной строки Databricks версии 0.205 и выше. Интерфейс командной строки Databricks находится в общедоступной предварительной версии.

Использование интерфейса командной строки Databricks подчиняется лицензии Databricks и уведомлению о конфиденциальности Databricks, включая любые положения о данных использования.

Группа functions команд в интерфейсе командной строки Databricks позволяет управлять определяемыми пользователем функциями (UDFs) в каталоге Unity. Реализация функции может быть любым выражением SQL или запросом, и его можно вызвать, когда ссылка на таблицу разрешена в запросе. В каталоге Unity функция находится на том же уровне, что и таблица, поэтому она может ссылаться на форму catalog_name.schema_name.function_name.

Функции Databricks: создание

Создайте новую функцию.

Important

Это экспериментальная функция.

Чтобы создать функцию, пользователь должен иметь следующие разрешения:

- USE_CATALOG в родительском каталоге функции

  • USE_SCHEMA и CREATE_FUNCTION на родительской схеме функции
databricks functions create [flags]

Options

--json JSON

    Строка JSON inline или @path к JSON-файлу с телом запроса.

Глобальные флаги

Examples

В следующем примере создается функция с помощью JSON-файла:

databricks functions create --json @function-definition.json

В следующем примере создается функция с помощью встроенного JSON:

databricks functions create --json '{"name": "my_catalog.my_schema.my_function", "data_type": "INT", "full_data_type": "INT", "return_params": {"parameters": []}, "routine_body": "SQL", "routine_definition": "SELECT 1", "routine_dependencies": {"dependencies": []}, "parameter_style": "S", "is_deterministic": true, "sql_data_access": "CONTAINS_SQL", "is_null_call": false, "security_type": "DEFINER", "specific_name": "my_function"}'

удаление функций databricks

Удалите функцию, соответствующую указанному имени.

Для успешного удаления пользователь должен выполнить одно из следующих условий:

  • Владелец родительского каталога функции
  • Владелец родительской схемы функции и имеет привилегии в родительском каталоге USE_CATALOG .
  • Владелец самой функции и имеет USE_CATALOG привилегии на родительский каталог и USE_SCHEMA привилегии на родительскую схему.
databricks functions delete NAME [flags]

Arguments

NAME

    Полное квалифицированное имя функции (в формате catalog_name.schema_name.function_name).

Options

--force

    Принудительное удаление даже в случае, если функция не является пустой.

Глобальные флаги

Examples

В следующем примере удаляется функция:

databricks functions delete my_catalog.my_schema.my_function

В следующем примере выполняется удаление функции:

databricks functions delete my_catalog.my_schema.my_function --force

получение функций databricks

Получите функцию из родительского каталога и схемы.

Для успешной загрузки пользователю необходимо выполнить одно из следующих требований:

  • Администратор хранилища метаданных
  • Является владельцем родительского каталога функции
  • Иметь привилегии USE_CATALOG в родительском каталоге функции и быть владельцем функции
  • Иметь привилегии USE_CATALOG на родительский каталог функции, привилегии USE_SCHEMA на родительскую схему функции и привилегии EXECUTE на саму функцию.
databricks functions get NAME [flags]

Arguments

NAME

    Полное квалифицированное имя функции (в формате catalog_name.schema_name.function_name).

Options

--include-browse

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

Глобальные флаги

Examples

В следующем примере показано, как получить сведения о функции:

databricks functions get my_catalog.my_schema.my_function

В следующем примере показано, как получить доступ к функции, содержащей информацию о просмотре.

databricks functions get my_catalog.my_schema.my_function --include-browse

Список функций databricks

Перечислите функции в указанном родительском каталоге и схеме.

Если пользователь является администратором хранилища метаданных, все функции возвращаются в выходном списке. В противном случае пользователь должен иметь привилегии USE_CATALOG на каталоге и привилегии USE_SCHEMA на схеме, а выходной список содержит только функции, для которых пользователь имеет привилегию EXECUTE, или пользователь является владельцем. Никакой гарантии упорядочения элементов в массиве нет.

databricks functions list CATALOG_NAME SCHEMA_NAME [flags]

Arguments

CATALOG_NAME

    Имя каталога-родителя для интересующих функций.

SCHEMA_NAME

    Родительская схема функций.

Options

--include-browse

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

--max-results int

    Максимальное количество функций, которые можно вернуть.

--page-token string

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

Глобальные флаги

Examples

В следующем примере перечислены все функции в каталоге и схеме:

databricks functions list my_catalog my_schema

В следующем примере перечислены функции с не более чем 10 результатами:

databricks functions list my_catalog my_schema --max-results 10

В следующем примере перечислены функции с сведениями о просмотре:

databricks functions list my_catalog my_schema --include-browse

Обновление функций Databricks

Обновите функцию, которая соответствует указанному имени.

Можно обновить только владельца функции. Если пользователь не является администратором хранилища метаданных, пользователь должен быть членом группы, которая является новым владельцем функции. Пользователь должен выполнить одно из следующих условий:

  • Администратор хранилища метаданных
  • Владелец родительского каталога функции
  • Является владельцем родительской схемы функции и имеет привилегию USE_CATALOG на родительский каталог.
  • Владелец самой функции и имеет USE_CATALOG привилегии на родительский каталог, а также USE_SCHEMA привилегии на родительскую схему функции.
databricks functions update NAME [flags]

Arguments

NAME

    Полное квалифицированное имя функции (в формате catalog_name.schema_name.function_name).

Options

--json JSON

    Строка JSON inline или @path к JSON-файлу с телом запроса.

--owner string

    Имя пользователя текущего владельца функции.

Глобальные флаги

Examples

В следующем примере обновляется правообладатель функции:

databricks functions update my_catalog.my_schema.my_function --owner someone@example.com

Глобальные флаги

--debug

  Следует ли включить ведение журнала отладки.

-h или --help

    Отобразить справку по интерфейсу командной строки Databricks, связанной группе команд или отдельной команде.

--log-file струна

    Строка, представляющая файл для записи журналов выходных данных. Если этот флаг не указан, по умолчанию используется запись журналов выходных данных в stderr.

--log-format формат

    Тип формата журнала: text или json. Значение по умолчанию — text.

--log-level струна

    Строка, представляющая уровень формата журнала. Если не указано, уровень формата журнала отключен.

типа -o, --output

    Тип выходных данных команды: text или json. Значение по умолчанию — text.

-p, --profile струна

    Имя профиля в ~/.databrickscfg файле, используемого для выполнения команды. Если флаг не указан, используется профиль DEFAULT, если он существует.

--progress-format формат

    Формат для отображения журналов хода выполнения: default, appendinplace, илиjson

-t, --target струна

    Если применимо, целевой объект пакета для использования