Utilidades de eventos empresariales de NotebookUtils para Fabric

Utiliza el notebookutils.businessEvents módulo para publicar eventos empresariales desde un cuaderno de Fabric. Puedes publicar un solo evento o un lote de eventos que sigan un esquema de eventos de negocio dentro de un conjunto de esquemas de eventos.

Las utilidades de eventos empresariales están disponibles en cuadernos de Python 3.12 y PySpark (Python).

La siguiente tabla enumera los métodos disponibles:

Method Signature Description
help help(methodName: str = '') -> None Ayuda de visualización para el módulo o el método especificado.
publish publish(eventSchemaSetWorkspace: str, eventSchemaSet: str, eventTypeName: str, eventData: Union[Dict[str, Any], List[Dict[str, Any]]], dataVersion: str = 'v1') -> bool Publica uno o más eventos empresariales en el tipo de evento especificado.

Obtención de ayuda

Ejecuta el siguiente comando para obtener una visión general del módulo:

notebookutils.businessEvents.help()

Para obtener ayuda con el publish método, especifica el nombre del método:

notebookutils.businessEvents.help("publish")

Publica un evento empresarial

Úsalo publish() para enviar una carga útil que coincida con el esquema de un evento empresarial:

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

print(f"Published: {published}")

En la siguiente tabla se describen los parámetros:

Parámetro Tipo Description
eventSchemaSetWorkspace String El nombre o ID del espacio de trabajo que contiene el conjunto de esquema de eventos.
eventSchemaSet String El nombre o ID del conjunto de esquema de eventos.
eventTypeName String El nombre del tipo de evento empresarial para publicar.
eventData Diccionario o lista de diccionarios La carga útil del evento. Cada diccionario debe ajustarse al esquema de eventos empresariales seleccionado.
dataVersion String La versión del esquema de eventos empresariales. El valor predeterminado es v1.

El método vuelve True cuando el evento se publica con éxito. Si el evento no puede publicarse, el método genera una excepción.

Publicar múltiples eventos empresariales

Para publicar varios eventos del mismo tipo en una sola llamada, pasa una lista de diccionarios a 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}")

Todas las cargas de la lista deben ajustarse a la versión del esquema especificada por dataVersion.

Consideraciones

  • Crea el tipo de evento empresarial y su esquema antes de publicar eventos desde un cuaderno.
  • Utiliza nombres o identificaciones para eventSchemaSetWorkspace y eventSchemaSet.
  • Haga coincidir los nombres de las propiedades, los tipos de datos y los campos obligatorios de eventData con la versión de esquema seleccionada.
  • Controla las excepciones de publish() para que las ejecuciones de notebooks y canalizaciones informen de los errores de publicación.