NotebookUtils-Hilfsprogramme für Geschäftsereignisse in Fabric

Nutzen Sie das Modulnotebookutils.businessEvents, um Geschäftsereignisse aus einem Fabric-Notizbuch zu veröffentlichen. Man kann ein einzelnes Ereignis oder eine Reihe von Ereignissen veröffentlichen, die einem Geschäftsereignisschema folgen, in einem Ereignisschema-Set.

Die Business-Event-Tools sind in den Notebooks Python 3.12 und PySpark (Python) verfügbar.

Die folgende Tabelle listet die verfügbaren Methoden auf:

Method Signature Description
help help(methodName: str = '') -> None Zeigt die Hilfe für das Modul oder die angegebene Methode an.
publish publish(eventSchemaSetWorkspace: str, eventSchemaSet: str, eventTypeName: str, eventData: Union[Dict[str, Any], List[Dict[str, Any]]], dataVersion: str = 'v1') -> bool Veröffentlicht ein oder mehrere Geschäftsereignisse für den angegebenen Ereignistyp.

Hilfe erhalten

Führen Sie folgenden Befehl aus, um einen Überblick über das Modul zu erhalten:

notebookutils.businessEvents.help()

Um Hilfe für die Methode publish zu erhalten, geben Sie den Methodennamen an:

notebookutils.businessEvents.help("publish")

Veröffentlichen Sie eine Geschäftsveranstaltung

Verwenden Sie publish(), um eine Nutzlast zu senden, die dem Schema eines Geschäftsereignisses entspricht:

published = notebookutils.businessEvents.publish(
    eventSchemaSetWorkspace="ContosoWorkspace",
    eventSchemaSet="OrderEvents",
    eventTypeName="OrderDelayed",
    eventData={
        "orderId": "12345",
        "status": "delayed",
        "reason": "weather"
    },
    dataVersion="v1"
)

print(f"Published: {published}")

In der folgenden Tabelle sind die Parameter beschrieben:

Parameter Typ Description
eventSchemaSetWorkspace String Der Name oder die ID des Arbeitsbereichs, der das Ereignisschema-Set enthält.
eventSchemaSet String Der Name oder die ID des Ereignisschema-Sets.
eventTypeName String Der Name des Typs des Geschäftsereignisses, der veröffentlicht werden soll.
eventData Wörterbuch oder Liste von Wörterbüchern Die Event-Nutzlast. Jedes Wörterbuch muss dem ausgewählten Geschäftsereignisschema entsprechen.
dataVersion String Die Version des Geschäfts-Ereignis-Schemas. Der Standardwert lautet v1.

Die Methode gibt True zurück, wenn das Ereignis erfolgreich veröffentlicht wird. Wenn das Ereignis nicht veröffentlicht werden kann, erzeugt die Methode eine Ausnahme.

Veröffentlichen Sie mehrere Geschäftsveranstaltungen

Um mehrere Ereignisse desselben Typs in einem Aufruf zu veröffentlichen, übergebe eine Liste von Wörterbüchern an eventData:

published = notebookutils.businessEvents.publish(
    eventSchemaSetWorkspace="ContosoWorkspace",
    eventSchemaSet="OrderEvents",
    eventTypeName="OrderDelayed",
    eventData=[
        {
            "orderId": "12345",
            "status": "delayed",
            "reason": "weather"
        },
        {
            "orderId": "12346",
            "status": "delayed",
            "reason": "traffic"
        }
    ],
    dataVersion="v1"
)

print(f"Published: {published}")

Alle Payloads in der Liste müssen der durch dataVersion angegebenen Schemaversion entsprechen.

Überlegungen

  • Erstelle den Geschäftsereignistyp und dessen Schema, bevor du Ereignisse aus einem Notizbuch veröffentlichst.
  • Verwenden Sie entweder Namen oder IDs für eventSchemaSetWorkspace und eventSchemaSet.
  • Gleichen Sie die Eigenschaftsnamen, Datentypen und erforderlichen Felder in eventData mit der ausgewählten Schemaversion ab.
  • Behandle Ausnahmen aus publish(), sodass Notebook- und Pipeline-Ausführungen Veröffentlichungsfehler melden.