Aller au contenu principal

groupe de commandesfunctions

remarque

L'utilisation de Databricks CLI est soumise à la licence Databricks et à la politique de confidentialité Databricks, y compris toutes les dispositions relatives aux données d'utilisation.

Le groupe de commandes functions au sein de la CLI Databricks vous permet de gérer les fonctions définies par l'utilisateur (UDF) dans Unity Catalog. L'implémentation de la fonction peut être n'importe quelle expression ou query SQL, et elle peut être invoquée partout où une référence de table est autorisée dans une query. Dans Unity Catalog, une fonction réside au même niveau qu'une table, elle peut donc être référencée avec la forme catalog_name.schema_name.function_name.

Création de fonctions Databricks

Créer une nouvelle fonction.

info

Expérimental

Il s’agit d’une fonctionnalité expérimentale.

L'utilisateur doit avoir les autorisations suivantes pour que la fonction soit créée :

-USE_CATALOG sur le catalogue parent de la fonction

  • USE_SCHEMA et CREATE_FUNCTION sur le schéma parent de la fonction
databricks functions create [flags]

Options

--json JSON

La chaîne JSON en ligne ou le @chemin vers le fichier JSON avec le corps de la requête.

Indicateurs globaux

Exemples

L'exemple suivant crée une fonction à l'aide d'un fichier JSON :

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

L’exemple suivant crée une fonction à l’aide d’un JSON intégré :

Bash
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"}'

Suppression de fonctions Databricks

Supprimer la fonction qui correspond au nom fourni.

Pour que la suppression aboutisse, l'utilisateur doit remplir l'une des conditions suivantes :

  • Est le propriétaire du catalogue parent de la fonction.
  • Est le propriétaire du schéma parent de la fonction et dispose du privilège USE_CATALOG sur son catalogue parent
  • Est le propriétaire de la fonction elle-même et possède à la fois le privilège USE_CATALOG sur son catalogue parent et le privilège USE_SCHEMA sur son schéma parent.
databricks functions delete NAME [flags]

Arguments

NAME

Le nom entièrement qualifié de la fonction (au format catalog_name.schema_name.function_name).

Options

--force

Forcer la suppression même si la fonction est notempty.

Indicateurs globaux

Exemples

L'exemple suivant supprime une fonction :

Bash
databricks functions delete my_catalog.my_schema.my_function

L'exemple suivant force la suppression d'une fonction :

Bash
databricks functions delete my_catalog.my_schema.my_function --force

databricks functions get

Obtenez une fonction à partir d'un catalogue et d'un schéma parents.

Pour que l'opération de récupération réussisse, l'utilisateur doit satisfaire l'une des exigences suivantes :

  • Est un administrateur de métastore
  • Est propriétaire du catalogue parent de la fonction
  • Ayez le privilège USE_CATALOG sur le catalogue parent de la fonction et soyez le propriétaire de la fonction.
  • Ayez le privilège USE_CATALOG sur le catalogue parent de la fonction, le privilège USE_SCHEMA sur le schéma parent de la fonction et le privilège EXECUTE sur la fonction elle-même.
databricks functions get NAME [flags]

Arguments

NAME

Le nom entièrement qualifié de la fonction (au format catalog_name.schema_name.function_name).

Options

--include-browse

Faut-il inclure les fonctions dans la réponse pour lesquelles le principal ne peut accéder qu'à des métadonnées sélectives ?

Indicateurs globaux

Exemples

L'exemple suivant obtient des informations sur une fonction :

Bash
databricks functions get my_catalog.my_schema.my_function

L'exemple suivant obtient une fonction avec des informations de navigation incluses :

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

Liste des fonctions Databricks

Répertoriez les fonctions dans le catalogue et le schéma parents spécifiés.

Si l'utilisateur est un administrateur de métastore, toutes les fonctions sont retournées dans la liste de sortie. Sinon, l'utilisateur doit disposer du privilège USE_CATALOG sur le catalogue et du privilège USE_SCHEMA sur le schéma, et la liste de sortie ne contient que les fonctions pour lesquelles l'utilisateur dispose du privilège EXECUTE ou dont il est le propriétaire. L’ordre des éléments dans le tableau n’est pas garanti.

databricks functions list CATALOG_NAME SCHEMA_NAME [flags]

Arguments

CATALOG_NAME

Nom du catalogue parent pour les fonctions d'intérêt.

SCHEMA_NAME

Schéma parent des fonctions.

Options

--include-browse

Faut-il inclure les fonctions dans la réponse pour lesquelles le principal ne peut accéder qu'à des métadonnées sélectives ?

--max-results int

Nombre maximum de fonctions à retourner.

--page-token string

Jeton de pagination opaque pour aller à la page suivante basé sur la query précédente.

Indicateurs globaux

Exemples

L'exemple suivant répertorie toutes les fonctions dans un catalogue et un schéma :

Bash
databricks functions list my_catalog my_schema

L’exemple suivant liste les fonctions avec un maximum de 10 résultats :

Bash
databricks functions list my_catalog my_schema --max-results 10

L'exemple suivant répertorie les fonctions avec les informations de navigation incluses :

Bash
databricks functions list my_catalog my_schema --include-browse

Mise à jour des fonctions Databricks

Mettez à jour la fonction correspondant au nom fourni.

Seul le propriétaire de la fonction peut être mis à jour. Si l'utilisateur n'est pas un administrateur de metastore, il doit être membre du groupe qui est le nouveau propriétaire de la fonction. L'utilisateur doit satisfaire l'une des conditions suivantes :

  • Est un administrateur de métastore
  • Est le propriétaire du catalogue parent de la fonction.
  • Est le propriétaire du schéma parent de la fonction et dispose du privilège USE_CATALOG sur son catalogue parent
  • Est le propriétaire de la fonction elle-même et dispose du privilège USE_CATALOG sur son catalogue parent ainsi que du privilège USE_SCHEMA sur le schéma parent de la fonction.
databricks functions update NAME [flags]

Arguments

NAME

Le nom entièrement qualifié de la fonction (au format catalog_name.schema_name.function_name).

Options

--json JSON

La chaîne JSON en ligne ou le @chemin vers le fichier JSON avec le corps de la requête.

--owner string

Nom d'utilisateur du propriétaire actuel de la fonction.

Indicateurs globaux

Exemples

L'exemple suivant met à jour le propriétaire d'une fonction :

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

Drapeaux globaux

--debug

Activer ou non la journalisation de débogage.

-h OU --help

Afficher l'aide de Databricks CLI ou du groupe de commandes associé ou de la commande associée.

--log-file chaîne

Une chaîne représentant le fichier dans lequel écrire les logs de sortie. Si cet indicateur n'est pas spécifié, la default est d'écrire les logs de sortie dans stderr.

--log-format Format

Le type de format de log, text ou json. La valeur par default est text.

--log-level chaîne

Une chaîne représentant le niveau de format du log. S'il n'est pas spécifié, le niveau de format du log est désactivé.

-o, --output Type

Le type de sortie de commande, text ou json. La valeur par default est text.

-p, --profile chaîne

Nom du profil dans le fichier ~/.databrickscfg à utiliser pour exécuter la commande. Si cet indicateur n'est pas spécifié, alors s'il existe, le profil nommé DEFAULT est utilisé.

--progress-format Format

Le format pour afficher les logs de progression : default, append, inplace ou json

-t, --target chaîne

Le cas échéant, la cible de bundle à utiliser