Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
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
- En Microsoft Fabric-kapacitet i et af de understøttede områder. Hvis du ikke har en Fabric-kapacitet, kan du oprette en prøvekapacitet gratis.
- Et Fabric Workspace knyttet til denne kapacitet
Opret et nyt element til Fabric User Data Functions
- Vælg dit arbejdsområde, og vælg + Nyt element.
- Vælg Elementtype som Alle elementer. Søg efter og vælg Brugerdatafunktioner.
Opret et nyt element med brugerdatafunktioner
Vælg + Nyt elementi dit arbejdsområde.
Søg efter
user data functionsi den rude, der åbnes, og vælg derefter feltet .Angiv et navn for elementet brugerdatafunktioner.
Vælg Ny funktion for at oprette en
hello_fabricPython-funktionsskabelon. Funktionsoversigten viser alle de funktioner, der er publiceret og klar til at blive aktiveret.Når funktionen
hello_fabricer publiceret, kan du køre den fra listen over funktioner i Funktionsoversigt.
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:
Sørg for, at du er i udviklingstilstand. Vælg biblioteksstyring for at tilføje de biblioteker, som funktionen kræver.
Seddel
fabric_user_data_functionsbibliotek 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.Vælg pandas bibliotek, og vælg versionen. Når biblioteket er tilføjet, gemmes det automatisk i elementet User Data Functions.
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.
Når eksemplet er indsat i editoren, tester du det ved hjælp af testfunktionen i udviklingstilstand.
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.
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.
Kør din funktion
For at køre din funktion skal du først skifte til tilstanden Kør kun ved at klikke på tilstandsskifteren.
Vælg Ikonet Kør, der vises, når du holder markøren over en funktion på listen Funktionsoversigt.
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" } ]Vælg Kør for at køre funktionen.
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.functionsSDK og få andre vigtige biblioteker, f.eks.logginggiver 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
I tilstanden Udvikling skal du vælge i kodeeditoren og opdatere navnet på funktionen. Omdøb
hello_fabricf.eks. tilhello_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()}!"Når du har ændret navnet, skal du vælge Publicer for at gemme disse ændringer.
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.