Compartir a través de


Uso de Livy API para enviar y ejecutar trabajos de Spark

Nota:

Livy API for Fabric Data Engineering está en versión preliminar.

Se aplica a:✅ Ingeniería de datos y ciencia de datos en Microsoft Fabric

Empiece a trabajar con Livy API for Fabric Data Engineering mediante la creación de una instancia de Lakehouse; autenticación con un token de aplicación de Microsoft Entra; envíe trabajos por lotes o de sesión desde un cliente remoto al proceso de Fabric Spark. También descubrirá el punto de conexión de Livy API; enviar trabajos; y supervise los resultados.

Requisitos previos

Elección de un cliente de API de REST

Puede usar varios lenguajes de programación o clientes de GUI para interactuar con los puntos de conexión de la API de REST. En este artículo, usaremos Visual Studio Code. Visual Studio Code debe configurarse con Cuadernos de Jupyter Notebook, PySpark, y la Biblioteca de autenticación de Microsoft (MSAL) para Python

Autorización de las solicitudes de Livy API

Para trabajar con las API de Fabric, incluida la API de Livy, primero debe crear una aplicación de Microsoft Entra y obtener un token. La aplicación debe registrarse y configurarse adecuadamente para realizar llamadas API en Fabric. Para más información, consulte Registro de una aplicación con la plataforma de identidad de Microsoft.

Hay muchos permisos de ámbito de Microsoft Entra necesarios para ejecutar trabajos de Livy. Este es un ejemplo de código de Spark simple + acceso de almacenamiento + SQL:

  • Code.AccessAzureDataExplorer.All
  • Code.AccessAzureDataLake.All
  • Code.AccessAzureKeyvault.All
  • Code.AccessFabric.All
  • Code.AccessStorage.All
  • Item.ReadWrite.All
  • Lakehouse.Execute.All
  • Lakehouse.Read.All
  • Workspace.ReadWrite.All

Captura de pantalla que muestra los permisos de Livy API en el centro de administración de Microsoft Entra.

Nota:

Durante la versión preliminar pública, agregaremos algunos ámbitos granulares adicionales y, si usa este enfoque, cuando agreguemos estos ámbitos adicionales, se interrumpirá la aplicación Livy. Compruebe esta lista, ya que se actualizará con los ámbitos adicionales.

Algunos clientes quieren permisos más pormenorizados que la lista anterior. Puede quitar Item.ReadWrite.All y reemplazar por estos permisos de ámbito más granulares:

  • Code.AccessAzureDataExplorer.All
  • Code.AccessAzureDataLake.All
  • Code.AccessAzureKeyvault.All
  • Code.AccessFabric.All
  • Code.AccessStorage.All
  • Lakehouse.Execute.All
  • Lakehouse.ReadWrite.All
  • Workspace.ReadWrite.All
  • Notebook.ReadWrite.All
  • SparkJobDefinition.ReadWrite.All
  • MLModel.ReadWrite.All
  • MLExperiment.ReadWrite.All
  • Dataset.ReadWrite.All

Después de registrar la aplicación, necesitará tanto el identificador de aplicación (cliente) como el identificador de directorio (inquilino).

Captura de pantalla que muestra información general de la aplicación Livy API en el centro de administración de Microsoft Entra.

El usuario autenticado que llama a Livy API debe ser un miembro del área de trabajo donde tanto la API como los elementos del origen de datos se encuentran con un rol colaborador. Para más información, consulte Proporcionar acceso a los usuarios a las áreas de trabajo en Power BI.

Detección del punto de conexión de Fabric Livy API

Se requiere un artefacto de Lakehouse para acceder al punto de conexión de Livy. Una vez creado Lakehouse, el punto de conexión de Livy API se puede ubicar en el panel de configuración.

Captura de pantalla que muestra los puntos de conexión de Livy API en la configuración de Lakehouse.

El punto de conexión de Livy API seguiría este patrón:

https://api.fabric.microsoft.com/v1/workspaces/<ws_id>/lakehouses/<lakehouse_id>/livyapi/versions/2023-12-01/

La dirección URL se anexa con <sesiones> o <lotes> en función de lo que elija.

Integración con entornos de Fabric

Para cada área de trabajo de Fabric, se aprovisiona un grupo de inicio predeterminado, la ejecución de todo el código de spark usa este grupo de inicio de forma predeterminada. Puede usar entornos de Fabric para personalizar los trabajos de Spark de Livy API.

Envío de trabajos de Livy API

Ahora que ha completado la configuración de Livy API, puede optar por enviar trabajos por lotes o de sesión.

Supervisión del historial de solicitudes

Puede usar el Centro de supervisión para ver los envíos anteriores de Livy API y depurar los errores de envío.

Captura de pantalla que muestra los envíos anteriores de Livy API en el centro de supervisión.