Usare l'API Livy per inviare ed eseguire processi Spark
Nota
L'API Livy per fabric Ingegneria dei dati è in anteprima.
Si applica a:✅ ingegneria dei dati e data science in Microsoft Fabric
Per iniziare a usare l'API Livy per Fabric Ingegneria dei dati, creare un lakehouse, autenticarsi con un token dell'app Microsoft Entra; inviare processi batch o di sessione da un client remoto al calcolo Spark di Fabric. Scoprirai l'endpoint dell'API Livy, invierai processi e monitorerai i risultati.
Prerequisiti
Capacità Di infrastruttura Premium o di valutazione con una LakeHouse
Abilitare l'impostazione amministratore tenant per l'API Livy (anteprima)
Client remoto, ad esempio Visual Studio Code con supporto jupyter notebook, PySpark e Microsoft Authentication Library (MSAL) per Python
Per accedere all'API REST di Fabric è necessario un token dell'app Microsoft Entra. Registrare un'applicazione con Microsoft Identity Platform
Scelta di un client API REST
È possibile usare vari linguaggi di programmazione o client GUI per interagire con gli endpoint dell'API REST. In questo articolo viene usato Visual Studio Code. Visual Studio Code deve essere configurato con Jupyter Notebook, PySpark e Microsoft Authentication Library (MSAL) per Python
Come autorizzare le richieste dell'API Livy
Per usare le API di Infrastruttura, inclusa l'API Livy, è prima necessario creare un'applicazione Microsoft Entra e ottenere un token. L'applicazione deve essere opportunamente registrata e configurata per eseguire chiamate API su Fabric. Per altre informazioni, vedere Registrare un'applicazione con Microsoft Identity Platform.
Per eseguire i processi Livy sono necessarie molte autorizzazioni per l'ambito di Microsoft Entra. Questo esempio usa codice Spark semplice e accesso all'archiviazione + 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
Nota
Durante l'anteprima pubblica verranno aggiunti alcuni ambiti granulari aggiuntivi e, se si usa questo approccio, quando si aggiungono questi ambiti aggiuntivi, l'app Livy verrà interrotta. Controllare questo elenco perché verrà aggiornato con gli ambiti aggiuntivi.
Alcuni clienti vogliono autorizzazioni più granulari rispetto all'elenco precedente. È possibile rimuovere Item.ReadWrite.All e sostituire con queste autorizzazioni di ambito più granulari:
- 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
Dopo aver registrato l'applicazione, saranno necessari sia l'ID applicazione (client) che l'ID directory (tenant).
L'utente autenticato che chiama l'API Livy deve essere un membro dell'area di lavoro in cui si trovano sia l'API che gli elementi dell'origine dati con un ruolo Collaboratore. Per altre informazioni, vedere Concedere agli utenti l'accesso alle aree di lavoro.
Come individuare l'endpoint dell'API Livy fabric
Per accedere all'endpoint Livy è necessario un artefatto Lakehouse. Dopo aver creato Lakehouse, l'endpoint dell'API Livy può trovarsi all'interno del pannello delle impostazioni.
L'endpoint dell'API Livy seguirà questo modello:
https://api.fabric.microsoft.com/v1/workspaces/ < >ws_id/lakehouses/<lakehouse_id>/livyapi/versions/2023-12-01/
L'URL viene aggiunto con <sessioni> o <batch> a seconda di ciò che si sceglie.
Integrazione con gli ambienti di infrastruttura
Per ogni area di lavoro infrastruttura viene effettuato il provisioning di un pool di avvio predefinito, l'esecuzione di tutto il codice Spark usa questo pool di avvio per impostazione predefinita. È possibile usare ambienti di infrastruttura per personalizzare i processi Spark dell'API Livy.
Scaricare i file Swagger dell'API Livy
I file Swagger completi per l'API Livy sono disponibili qui.
Inviare processi api Livy
Ora che la configurazione dell'API Livy è stata completata, è possibile scegliere di inviare processi batch o di sessione.
Come monitorare la cronologia delle richieste
È possibile usare l'hub di monitoraggio per visualizzare gli invii precedenti dell'API Livy ed eseguire il debug di eventuali errori di invio.
Contenuto correlato
- Documentazione dell'API REST Apache Livy
- Introduzione alle impostazioni di amministrazione per la capacità dell'infrastruttura
- Impostazioni di amministrazione dell'area di lavoro Apache Spark in Microsoft Fabric
- Registrare un'applicazione con Microsoft Identity Platform
- Panoramica delle autorizzazioni e del consenso di Microsoft Entra
- Ambiti dell'API REST dell'infrastruttura
- Informazioni generali sul monitoraggio di Apache Spark
- Dettagli dell'applicazione Apache Spark