Del via


Oprette et element til funktioner for stofbrugerdata

I denne vejledning opretter vi et nyt element af typen User Data Functions og skriver nye funktioner i den. Hvert element af typen User Data Functions indeholder kode, der definerer en eller flere funktioner, som du kan køre enkeltvist.

Specifikt lærer du, hvordan du:

  • Opret et element med brugerdatafunktioner.
  • Skriv en ny funktion.
  • Administrer funktioner.
  • Kør din funktion.

Forudsætninger

Opret et nyt element til Fabric User Data Functions

  1. Vælg dit arbejdsområde, og vælg + Nyt element.
  2. Vælg Elementtype som Alle elementer. Søg efter og vælg Brugerdatafunktioner.

Opret et nyt element med brugerdatafunktioner

  1. Vælg + Nyt elementi dit arbejdsområde.

  2. Søg efter user data functionsi den rude, der åbnes, og vælg derefter feltet .

    Skærmbillede, der viser feltet med brugerdatafunktioner i ruden med nye elementer.

  3. Angiv et navn for elementet brugerdatafunktioner.

  4. Vælg Ny funktion for at oprette en hello_fabric Python-funktionsskabelon. Funktionsoversigten viser alle de funktioner, der er publiceret og klar til at blive aktiveret.

    Skærmbillede, der viser, hvordan du opretter en ny funktion ved hjælp af en skabelon.

  5. Når funktionen hello_fabric er publiceret, kan du køre den fra listen over funktioner i Funktionsoversigt.

    Skærmbillede, der viser koden for funktionen hello-fabric.

Tilføj en ny funktion fra eksempel

Dette er et eksempel på, hvordan du tilføjer en ny funktion fra menuen Insert sample. I dette tilfælde tilføjer vi en funktion kaldet Manipulere data med pandas-biblioteket, der bruger det pandas bibliotek som et krav. Følg trinnene for at tilføje denne eksempelfunktion:

  1. Sørg for, at du er i udviklingstilstand. Vælg biblioteksstyring for at tilføje de biblioteker, som funktionen kræver.

    Skærmbillede, der viser, hvordan du administrerer biblioteker.

    Seddel

    fabric_user_data_functions bibliotek tilføjes som standard og kan ikke fjernes. Dette bibliotek er påkrævet for at kunne bruge brugerdatafunktioner. Du skal opdatere versionen af dette bibliotek for alle fremtidige versioner af dette SDK.

  2. Vælg pandas bibliotek, og vælg versionen. Når biblioteket er tilføjet, gemmes det automatisk i elementet User Data Functions.

    Skærmbillede, der viser, hvordan du tilføjer pandas-biblioteket.

  3. Vælg Indsæt eksempel, og vælg Manipulere data med pandas-biblioteket. Denne handling indsætter eksempelkode nederst i din kode efter de andre funktioner.

    Skærmbillede, der viser, hvordan du indsætter et eksempel, der bruger pandas-biblioteket.

  4. Når eksemplet er indsat i editoren, tester du det ved hjælp af testfunktionen i udviklingstilstand.

  5. Når du er klar, kan du vælge Udgiv for at gemme dine ændringer og opdatere dine funktioner. Udgivelsen kan tage et par minutter.

    Skærmbillede, der viser kodestykket for eksemplet i editoren.

  6. Når publiceringen er fuldført, kan du se den nye funktion på listen Funktionsoversigt. Denne funktion er nu klar til at blive kørt fra portalen eller aktiveret fra et andet program eller strukturelement, f.eks. en pipeline.

    Skærmbillede, der viser kodestykket for eksemplet i editoren.

Kør din funktion

  1. For at køre din funktion skal du først skifte til tilstanden Kør kun ved at klikke på tilstandsskifteren.

    Animeret skærmbillede, der viser, hvordan du skifter til kun kørselstilstand.

  2. Vælg Ikonet Kør, der vises, når du holder markøren over en funktion på listen Funktionsoversigt.

    Skærmbillede, der viser, hvordan du kører funktionerne.

  3. Overfør de påkrævede parametre i præsenteret som en formular i Funktionsoversigt. I dette tilfælde skal vi køre funktionen manipulate_data, som kræver en JSON-streng som en parameter.

    [
     {
      "Name": "John",
      "Age": 22,
      "Gender": "male"
     }
    ]
    
  4. Vælg Kør for at køre funktionen.

    Skærmbillede, der viser outputtet, når en funktion udføres korrekt.

  5. Du kan se de dynamiske logge og outputtet for funktionen for at validere, om den kørte korrekt. Du kan også se en fejlmeddelelse og logge fra din funktionsaktivering.

Skriv en ny funktion

Hver runnable funktion starter med en @udf.function() dekoratør før funktionsdefinitionen. Læs mere om vores Python-programmeringsmodel. Hvis du vil skrive en ny funktion, skal du bruge dekoratøren @udf.function() i starten til at erklære den som en funktion, der kan køres. Her er et eksempel på en funktion:

# 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)

Når funktionen er klar, skal du publicere funktionen for at køre den.

Nøglebegreber for programmeringsmodel

Dine brugerdatafunktioner bruger Python-programmeringsmodellen User Data Functions til at oprette, køre, foretage fejlfinding og ændre individuelle funktioner. Dette er et førstepartsbibliotek, der leverer den nødvendige funktionalitet til at aktivere dine funktioner i Fabric og udnytte alle integrationerne.

Når du har oprettet din første funktion, indeholder de første linjer i koden importsætningerne med de nødvendige biblioteker til at køre skabelonen.

import datetime
import fabric.functions as fn
import logging

udf = fn.UserDataFunctions()

Seddel

Importsætningen, der indeholder biblioteket fabric.functions, og den linje, der indeholder denne sætning, udf = fn.UserDataFunctions() er nødvendig for at køre funktionerne korrekt. Dine funktioner fungerer ikke korrekt, hvis disse linjer mangler.

  • Hvis du vil oprette, køre, administrere funktioner, skal du bruge fabric.functions SDK og få andre vigtige biblioteker, f.eks. logging giver dig mulighed for at skrive brugerdefinerede logge.
  • udf=fn.UserDataFunctions() er konstruktionen til at definere funktioner i et element med brugerdatafunktioner.

Administrer datafunktioner

Omdøb en funktion

  1. I tilstanden Udvikling skal du vælge i kodeeditoren og opdatere navnet på funktionen. Omdøb hello_fabric f.eks. til hello_fabric1:

    @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. Når du har ændret navnet, skal du vælge Publicer for at gemme disse ændringer.

  3. Når ændringerne er publiceret, kan du få vist det nye navn for funktionen i Funktionsoversigt.

Slet en funktion

Hvis du vil slette en funktion, skal du vælge funktionskode i kodeeditoren og fjerne hele kodeafsnittet. Publicer ændringerne for at slette dem helt fra elementet med brugerdatafunktioner.

Hvis du f.eks. vil slette funktionen hello_fabric, skal du fjerne følgende kodeblok:

@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()}!"

Når koden er fjernet, kan du vælge Publicer for at gemme dine ændringer. Når publiceringen er fuldført, får du vist en opdateret liste over tilgængelige funktioner i Funktionsoversigt.

Næste trin