Freigeben über


Erstellen eines Fabric Benutzerdatenfunktionen-Elements (Vorschau)

In dieser Anleitung erstellen wir ein neues Element für Benutzerdatenfunktionen und schreiben neue Funktionen darin. Jedes Benutzerdatenfunktionen-Element enthält Code, der mindestens eine Funktion definiert, die Sie einzeln ausführen können.

Dabei lernen Sie insbesondere Folgendes:

  • Erstellen Sie ein Benutzerdatenfunktionen-Element.
  • Schreiben Sie eine neue Funktion.
  • Verwalten Sie Funktionen.
  • Führen Sie Ihre Funktion aus.

Voraussetzungen

Erstellen eines neuen Fabric Benutzerdatenfunktionen-Elements

  1. Wählen Sie Ihren Arbeitsbereich und dann + Neues Element aus.
  2. Wählen Sie als Elementtyp Alle Elemente aus. Suchen und wählen Sie Benutzerdatenfunktionenaus.

Ein neues Benutzerdatenfunktionen-Element erstellen

  1. Wählen Sie in Ihrem Arbeitsbereich die Option + Neues Element aus.

  2. Suchen Sie im daraufhin geöffneten Bereich nach user data functions, und wählen Sie dann die Kachel aus.

    Screenshot: Kachel „Benutzerdatenfunktionen“ im neuen Elementbereich.

  3. Geben Sie einen Namen für das Benutzerdatenfunktionen-Element an.

  4. Wählen Sie Neue Funktion aus, um eine hello_fabric-Python-Funktionsvorlage zu erstellen. Im Funktions-Explorer werden alle Funktionen angezeigt, die veröffentlicht wurden und aufgerufen werden können.

    Screenshot: Erstellen einer neuen Funktion mit einer Vorlage

  5. Nachdem die hello_fabric-Funktion veröffentlicht wurde, können Sie sie über die Liste der Funktionen im Funktions-Explorer ausführen.

    Screenshot: Code für die Hello-Fabric-Funktion.

Eine neue Funktion über das Beispiel hinzufügen

Dies ist ein Beispiel für das Hinzufügen einer neuen Funktion über das Menü Insert sample. In diesem Fall fügen wir eine Funktion namens Bearbeiten von Daten mit Pandas-Bibliothek hinzu, die die pandas-Bibliothek als Anforderung verwendet. Führen Sie die Schritte aus, um diese Beispielfunktion hinzuzufügen:

  1. Wählen Sie Bibliotheksverwaltung aus, um die Bibliotheken hinzuzufügen, die Ihre Funktion benötigt.

    Screenshot: Verwalten von Bibliotheken.

    Hinweis

    fabric_user_data_functions-Bibliothek wird standardmäßig hinzugefügt und kann nicht entfernt werden. Diese Bibliothek ist für die Funktionalität von Benutzerdatenfunktionen erforderlich. Sie müssen die Version dieser Bibliothek für zukünftige Versionen dieses SDK aktualisieren.

  2. Wählen Sie Pandas-Bibliothek und die Version aus. Nachdem die Bibliothek hinzugefügt wurde, wird sie automatisch in Ihrem Benutzerdatenfunktionen-Element gespeichert.

    Screenshot: Hinzufügen einer Pandas-Bibliothek.

  3. Wählen Sie Beispiel einfügen und Daten mit Pandas-Bibliothek bearbeiten aus. Diese Aktion fügt Beispielcode unten im Code nach den anderen Funktionen ein.

    Screenshot: Einfügen eines Beispiels, das die Pandas-Bibliothek verwendet.

  4. Nachdem das Beispiel in den Editor eingefügt wurde, können Sie Ihre Änderungen speichern, indem Sie Veröffentlichen auswählen. Das Veröffentlichen der Änderungen kann einige Minuten dauern.

    Screenshot: Codeausschnitt des Beispiels im Editor.

  5. Nach Abschluss der Veröffentlichung wird die neue Funktion in der Liste „Funktionen-Explorer“ angezeigt. Diese Funktion kann jetzt über das Portal ausgeführt oder von einer anderen Anwendung oder einem Fabric-Element aus aufgerufen werden, z. B. eine Datenpipeline.

    Screenshot: Codeausschnitt des Beispiels im Editor.

Ihre Funktion ausführen

  1. Wählen Sie das Symbol Ausführen aus, das angezeigt wird, wenn Sie in der Liste „Funktionen-Explorer“ auf eine Funktion zeigen.

    Screenshot: Testens der Datenfunktionen.

  2. Geben Sie die erforderlichen Parameter weiter, die im Funktionen-Explorer als Formular dargestellt werden. In diesem Fall führen wir die manipulate_data-Funktion aus, die eine JSON-Zeichenfolge als Parameter erfordert.

    [
     {
      "Name": "John",
      "Age": 22,
      "Gender": "male"
     }
    ]
    
  3. Wählen Sie Ausführen aus, um die Funktion auszuführen.

    Screenshot: Ausgabe, wenn eine Funktion erfolgreich ausgeführt wird.

  4. Sie können die Liveprotokolle und die Ausgabe der Funktion sehen, um zu überprüfen, ob sie erfolgreich ausgeführt wurde. Alternativ werden eine Fehlermeldung und Protokolle von Ihrem Funktionsaufruf angezeigt.

Eine neue Funktion schreiben

Jede ausführbare Funktion beginnt mit einem @udf.function()-Decorator vor der Funktionsdefinition. Weitere Informationen über unser Python-Programmiermodell. Um eine neue Funktion zu schreiben, verwenden Sie den Decorator @udf.function() am Anfang, um sie als ausführbare Funktion zu deklarieren. Hier ist eine Beispielfunktion:

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

Sobald die Funktion fertig ist, veröffentlichen Sie die Funktion, um sie auszuführen.

Schlüsselkonzepte des Programmiermodells

Ihre Benutzerdatenfunktionen verwenden das Python-Programmiermodell für Benutzerdatenfunktionen zum Erstellen, Ausführen, Debuggen und Ändern einzelner Funktionen. Dies ist eine Erstanbieterbibliothek, die die erforderlichen Funktionen bereitstellt, um Ihre Funktionen in Fabric aufzurufen und alle Integrationen zu nutzen.

Nach dem Erstellen der ersten Funktion enthalten die ersten Codezeilen die Importanweisungen mit den erforderlichen Bibliotheken zum Ausführen der Vorlage.

import datetime
import fabric.functions as fn
import logging

udf = fn.UserDataFunctions()

Hinweis

Die Importanweisung, die die fabric.functions-Bibliothek enthält, und die Zeile mit dieser Anweisung udf = fn.UserDataFunctions() sind erforderlich, um Ihre Funktionen ordnungsgemäß auszuführen. Ihre Funktionen funktionieren nicht ordnungsgemäß, wenn diese Zeilen fehlen.

  • Zum Erstellen, Ausführen, Verwalten von Funktionen benötigen Sie fabric.functions-SDK und einige andere wichtige Bibliotheken wie logging, die es Ihnen ermöglichen, benutzerdefinierte Protokolle zu schreiben.
  • udf=fn.UserDataFunctions() ist das Konstrukt zum Definieren von Funktionen innerhalb eines Benutzerdatenfunktionen-Elements.

Verwalten von Datenfunktionen

Umbenennen einer Funktion

  1. Wählen Sie sie im Code-Editor aus, und aktualisieren Sie den Namen der Funktion. Beispiel: Benennen Sie hello_fabric in hello_fabric1 um. Ein Beispiel:

    @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. Nachdem Sie den Namen geändert haben, wählen Sie Veröffentlichen aus, um diese Änderungen zu speichern.

  3. Nachdem die Änderungen veröffentlicht wurden, können Sie den neuen Namen für die Funktion im Funktions-Explorer anzeigen.

Löschen einer Funktion

Um eine Funktion zu löschen, markieren Sie den Funktionscode im Code-Editor, und entfernen Sie den gesamten Codeabschnitt. Veröffentlichen Sie die Änderungen, um sie vollständig aus dem Benutzerdatenfunktionen-Element zu löschen.

Um beispielsweise die hello_fabric-Funktion zu löschen, entfernen Sie den folgenden Codeblock:

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

Nachdem der Code entfernt wurde, können Sie Veröffentlichen auswählen, um Ihre Änderungen zu speichern. Nach Abschluss der Veröffentlichung wird eine aktualisierte Liste der verfügbaren Funktionen im Funktions-Explorer angezeigt.

Nächste Schritte