Partager via


Créer un élément de fonctions de données utilisateur Fabric (préversion)

Dans ce guide, nous allons créer un élément Fonctions de données utilisateur et y écrire de nouvelles fonctions. Chaque élément User Data Functions contient du code qui définit une ou plusieurs fonctions que vous pouvez exécuter individuellement.

Plus précisément, vous apprenez à :

  • Créez un élément de fonctions de données utilisateur.
  • Écrivez une nouvelle fonction.
  • Gérez les fonctions.
  • Exécutez votre fonction.

Conditions préalables

Créer un élément Fabric User Data Functions

  1. Sélectionnez votre espace de travail, puis sélectionnez + Nouvel élément.
  2. Sélectionnez Type d’élément comme tous les éléments. Recherchez et sélectionnez Fonctions de données utilisateur.

Créez un nouvel élément de fonctions de données utilisateur

  1. Dans votre espace de travail, sélectionnez + Nouvel élément.

  2. Dans le volet qui s’ouvre, recherchez user data functions, puis sélectionnez la vignette.

    Capture d’écran montrant la vignette fonctions de données utilisateur dans le nouveau volet d’éléments.

  3. Fournissez un Nom pour l’élément de fonctions de données utilisateur.

  4. Sélectionnez Nouvelle fonction pour créer un modèle de fonction Python hello_fabric. L’Explorateur Functions affiche toutes les fonctions publiées et prêtes à être appelées.

    Capture d’écran montrant comment créer une fonction à l’aide d’un modèle.

  5. Une fois la fonction hello_fabric publiée, vous pouvez l’exécuter à partir de la liste des fonctions dans l’Explorateur Functions.

    Capture d’écran montrant le code de la fonction hello-fabric.

Ajouter une nouvelle fonction à partir de l’exemple

Il s’agit d’un exemple d’ajout d’une nouvelle fonction à partir du menu Insert sample. Dans ce cas, nous allons ajouter une fonction appelée Manipuler des données avec la bibliothèque pandas qui utilise la bibliothèque pandas comme exigence. Suivez les étapes pour ajouter cet exemple de fonction :

  1. Sélectionnez Gestion des bibliothèques pour ajouter les bibliothèques dont votre fonction a besoin.

    Capture d’écran montrant comment gérer les bibliothèques.

    Remarque

    La bibliothèque fabric_user_data_functions est ajoutée par défaut et ne peut pas être supprimée. Cette bibliothèque est requise pour les fonctionnalités des fonctions de données utilisateur. Vous devez mettre à jour la version de cette bibliothèque pour toutes les versions ultérieures de ce Kit de développement logiciel (SDK).

  2. Sélectionnez la bibliothèque pandas et sélectionnez la version. Une fois la bibliothèque ajoutée, elle est automatiquement enregistrée dans votre élément fonctions des données d’utilisateur.

    Capture d’écran montrant comment ajouter une bibliothèque pandas.

  3. Sélectionnez Insérer un exemple et sélectionnez Manipuler des données avec la bibliothèque pandas. Cette action insère un exemple de code au bas de votre code, après les autres fonctions.

    Capture d’écran montrant comment insérer un exemple qui utilise la bibliothèque pandas.

  4. Une fois l’exemple inséré dans l’éditeur, vous pouvez enregistrer vos modifications en sélectionnant Publier. La publication des modifications peut prendre quelques minutes.

    Capture d’écran montrant l’extrait de code de l’exemple dans l’éditeur.

  5. Une fois la publication terminée, vous verrez la nouvelle fonction dans la liste de l’Explorateur Functions. Cette fonction est maintenant prête à être exécutée à partir du portail, ou appelée à partir d’une autre application ou d’un élément Fabric, tel qu’un pipeline de données.

    Capture d’écran montrant l’extrait de code de l’exemple dans l’éditeur.

Exécuter votre fonction

  1. Sélectionnez l’icône Exécuter qui s’affiche lorsque vous pointez sur une fonction dans la liste de l’Explorateur Functions.

    Capture d’écran montrant comment tester les fonctions de données.

  2. Transmettez les paramètres requis présentés sous la forme d’un formulaire dans l’Explorateur Functions. Dans ce cas, nous allons exécuter la fonction manipulate_data qui nécessite une chaîne JSON en tant que paramètre.

    [
     {
      "Name": "John",
      "Age": 22,
      "Gender": "male"
     }
    ]
    
  3. Sélectionnez Exécuter pour exécuter la fonction.

    Capture d’écran montrant la sortie lorsqu’une fonction est correctement exécutée.

  4. Vous pouvez voir les journaux en direct et la sortie de la fonction pour valider si elle s’est exécutée correctement. Vous verrez également un message d’erreur et des journaux d’activité à partir de votre appel de fonction.

Écrire une nouvelle fonction

Chaque fonction exécutable commence par un décorateur @udf.function() avant la définition de la fonction. En savoir plus sur notre modèle de programmation Python. Pour écrire une nouvelle fonction, utilisez le décorateur @udf.function() au début pour le déclarer en tant que fonction exécutable. Voici un exemple de fonction :

# This sample allows you to pass a credit card number as an integer and mask it, leaving the last 4 digits. 

@udf.function()
def maskCreditCard(cardNumber: int)-> str:
    # Convert the card number to a string
    cardNumberStr = str(cardNumber)
    
    # Check if the card number is valid
    if not cardNumberStr.isdigit() or not (13 <= len(cardNumberStr) <= 19):
        raise ValueError("Invalid credit card number")
    
    # Mask all but the last four digits
    maskedNumber = '*' * (len(cardNumberStr) - 4) + cardNumberStr[-4:]
    
    return str(maskedNumber)

Une fois la fonction prête, publiez la fonction pour l’exécuter.

Concepts clés du modèle de programmation

Vos fonctions de données utilisateur utilisent le modèle de programmation fonctions des données utilisateur de Python pour créer, exécuter, déboguer et modifier des fonctions individuelles. Il s’agit d’une bibliothèque tierce qui fournit les fonctionnalités nécessaires pour appeler vos fonctions dans Fabric et tirer parti de toutes les intégrations.

Après avoir créé votre première fonction, les premières lignes du code contiennent les instructions d’importation avec les bibliothèques nécessaires pour exécuter votre modèle.

import datetime
import fabric.functions as fn
import logging

udf = fn.UserDataFunctions()

Remarque

L’instruction import contenant la fabric.functions bibliothèque et la ligne contenant cette instruction udf = fn.UserDataFunctions() sont nécessaires pour exécuter correctement vos fonctions. Vos fonctions ne fonctionnent pas correctement si ces lignes sont manquantes.

  • Pour créer, exécuter, gérer des fonctions, vous avez besoin fabric.functions du SDK et de quelques autres bibliothèques importantes telles que logging vous permet d’écrire des journaux personnalisés.
  • udf=fn.UserDataFunctions() est la construction permettant de définir des fonctions au sein d’un élément de fonctions de données utilisateur.

Gérer les fonctions de données

Renommer une fonction

  1. Sélectionnez l’éditeur de code et mettez à jour le nom de la fonction. Par exemple, renommez hello_fabric en hello_fabric1. Voici un exemple :

    @udf.function()
    def hello_fabric1(name: str) -> str:
       logging.info('Python UDF trigger function processed a request.')
    
       return f"Welcome to Fabric Functions, {name}, at {datetime.datetime.now()}!"
    
  2. Après avoir modifié le nom, sélectionnez Publier pour enregistrer ces modifications.

  3. Une fois les modifications publiées, vous pouvez afficher le nouveau nom de la fonction dans l’Explorateur Functions.

Supprimer une fonction

Pour supprimer une fonction, sélectionnez le code de fonction dans l’éditeur de code et supprimez l’intégralité de la section de code. Publiez les modifications pour la supprimer entièrement de l’élément de fonctions de données utilisateur.

Par exemple, pour supprimer la fonction hello_fabric, supprimez le bloc de code suivant :

@udf.function()
def hello_fabric(name: str) -> str:
    logging.info('Python UDF trigger function processed a request.')

    return f"Welcome to Fabric Functions, {name}, at {datetime.datetime.now()}!"

Une fois le code supprimé, vous pouvez sélectionner Publier pour enregistrer vos modifications. Une fois la publication terminée, vous voyez une liste mise à jour des fonctions disponibles dans l’Explorateur Functions.

Étapes suivantes