groupe de commandesfunctions
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.
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_SCHEMAetCREATE_FUNCTIONsur 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.
Exemples
L'exemple suivant crée une fonction à l'aide d'un fichier JSON :
databricks functions create --json @function-definition.json
L’exemple suivant crée une fonction à l’aide d’un JSON intégré :
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_CATALOGsur son catalogue parent - Est le propriétaire de la fonction elle-même et possède à la fois le privilège
USE_CATALOGsur son catalogue parent et le privilègeUSE_SCHEMAsur 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.
Exemples
L'exemple suivant supprime une fonction :
databricks functions delete my_catalog.my_schema.my_function
L'exemple suivant force la suppression d'une fonction :
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_CATALOGsur le catalogue parent de la fonction et soyez le propriétaire de la fonction. - Ayez le privilège
USE_CATALOGsur le catalogue parent de la fonction, le privilègeUSE_SCHEMAsur le schéma parent de la fonction et le privilègeEXECUTEsur 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 ?
Exemples
L'exemple suivant obtient des informations sur une fonction :
databricks functions get my_catalog.my_schema.my_function
L'exemple suivant obtient une fonction avec des informations de navigation incluses :
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.
Exemples
L'exemple suivant répertorie toutes les fonctions dans un catalogue et un schéma :
databricks functions list my_catalog my_schema
L’exemple suivant liste les fonctions avec un maximum de 10 résultats :
databricks functions list my_catalog my_schema --max-results 10
L'exemple suivant répertorie les fonctions avec les informations de navigation incluses :
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_CATALOGsur son catalogue parent - Est le propriétaire de la fonction elle-même et dispose du privilège
USE_CATALOGsur son catalogue parent ainsi que du privilègeUSE_SCHEMAsur 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.
Exemples
L'exemple suivant met à jour le propriétaire d'une fonction :
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