Freigeben über


Übermitteln und Ausführen von Spark-Aufträgen mit der Livy-API

Hinweis

Die Livy-API für Fabric Data Engineering befindet sich in der Vorschau.

Gilt für:✅ Datentechnik und Data Science in Microsoft Fabric

Erstellen Sie zum Einstieg mit der Livy-API für Fabric Data Engineering zunächst ein Lakehouse. Authentifizieren Sie sich mit einem Microsoft Entra-App-Token, und übermitteln Sie Batch- oder Sitzungsaufträge von einem Remoteclient an Fabric Spark-Compute. Sie werden den Livy-API-Endpunkt entdecken; Stellen stellen; und überwachen Sie die Ergebnisse.

Voraussetzungen

Auswählen eines REST-API-Clients

Sie können verschiedene Programmiersprachen oder Clients mit Benutzeroberflächen verwenden, um mit REST-API-Endpunkten zu interagieren. In diesem Artikel verwenden wir Visual Studio Code-. Visual Studio Code muss mit Jupyter Notebook, PySparkund der Microsoft Authentication Library (MSAL) für Python konfiguriert werden.

Autorisieren von Livy-API-Anforderungen

Für die Verwendung von Fabric-APIs (einschließlich der Livy-API) müssen Sie zunächst eine Microsoft Entra-Anwendung erstellen und ein Token abrufen. Ihre Anwendung muss registriert und entsprechend konfiguriert werden, um API-Aufrufe für Fabric auszuführen. Weitere Informationen finden Sie unter Registrieren einer Anwendung bei Microsoft Identity Platform.

Zum Ausführen von Livy-Aufträgen sind viele Microsoft Entra-Berechtigungen im Geltungsbereich erforderlich. In diesem Beispiel wird einfacher Spark-Code + Speicherzugriff + SQL verwendet:

  • 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

Screenshot der Livy-API-Berechtigungen im Microsoft Entra Admin Center

Hinweis

Während der Public Preview werden einige zusätzliche granulare Geltungsbereiche hinzugefügt, durch die Ihre Livy-App unterbrochen wird, sofern Sie diesen Ansatz verwenden. Überprüfen Sie diese Liste darauf, ob sie mit den zusätzlichen Geltungsbereichen aktualisiert wurde.

Einige Kunden benötigen differenziertere Berechtigungen als in der obigen Liste. Sie können „Item.ReadWrite.All“ entfernen und durch diese differenzierteren Berechtigungen im Geltungsbereich ersetzen:

  • 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

Wenn Sie Ihre Anwendung registriert haben, benötigen Sie sowohl die Anwendungs-ID (Client-ID) als auch die Verzeichnis-ID (Mandant).

Screenshot der Übersicht über die Livy-API-App im Microsoft Entra Admin Center

Der authentifizierte Benutzende, der die Livy-API aufruft, muss Mitglied des Arbeitsbereichs sein, in dem sich sowohl die API- als auch die Datenquellenelemente befinden, und über die Rolle „Mitwirkender“ verfügen. Weitere Informationen finden Sie unter Gewähren des Zugriffs auf Arbeitsbereiche für Benutzer.

Ermitteln des Fabric Livy-API-Endpunkts

Für den Zugriff auf den Livy-Endpunkt ist ein Lakehouse-Artefakt erforderlich. Nachdem das Lakehouse erstellt wurde, finden Sie den Livy-API-Endpunkt im Einstellungsbereich.

Screenshot mit Livy-API-Endpunkten in den Lakehouse-Einstellungen

Der Endpunkt der Livy-API weist folgendes Muster auf:

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

An die URL wird je nach Ihrer Auswahl entweder <sessions> oder <batches> angefügt.

Integration in Fabric-Umgebungen

Für jeden Fabric-Arbeitsbereich wird ein Standardstartpool bereitgestellt, und für die Ausführung des gesamten Sparkcodes wird standardmäßig dieser Startpool verwendet. Sie können Fabric-Umgebungen verwenden, um die Spark-Aufträge der Livy-API anzupassen.

Laden Sie die Dateien der Livy-API Swagger herunter.

Die vollständigen Swagger-Dateien für die Livy-API sind hier verfügbar.

Übermitteln von Livy-API-Aufträgen

Nachdem die Einrichtung der Livy-API abgeschlossen ist, können Sie entweder Batch- oder Sitzungsaufträge übermitteln.

Überwachen des Anforderungsverlaufs

Sie können den Überwachungshub verwenden, um frühere Livy-API-Übermittlungen anzuzeigen und mögliche Übermittlungsfehler zu debuggen.

Screenshot mit vorherigen Livy-API-Übermittlungen im Monitoring Hub.