Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:✅ Inżynieria Danych i Nauka o Danych w usłudze Microsoft Fabric
Rozpocznij pracę z interfejsem Livy API dla Fabric Data Engineering, tworząc Lakehouse; uwierzytelnij się przy użyciu tokenu Microsoft Entra; odkryj punkt końcowy Livy API; przesyłaj zadania wsadowe lub sesyjne z zdalnego klienta do zasobów obliczeniowych systemu Fabric Spark; i monitoruj wyniki.
Wymagania wstępne
Pojemność Premium lub wersja próbna usługi Fabric z funkcją LakeHouse
Włączanie ustawienia administratora dzierżawy dla interfejsu API usługi Livy (wersja zapoznawcza)
Klient zdalny, taki jak Visual Studio Code z obsługą notesów Jupyter, PySpark i Microsoft Authentication Library (MSAL) dla Pythona
Albo token aplikacji Entra firmy Microsoft. Rejestrowanie aplikacji za pomocą platformy tożsamości firmy Microsoft
Lub token spN firmy Microsoft Entra. Dodawanie i zarządzanie poświadczeniami aplikacji w Microsoft Entra ID
Wybieranie klienta interfejsu API REST
Do interakcji z punktami końcowymi interfejsu API REST można używać różnych języków programowania lub klientów graficznego interfejsu UŻYTKOWNIKA. W tym artykule użyjemy programu Visual Studio Code. Program Visual Studio Code musi być skonfigurowany z użyciem Jupyter Notebooks, PySpark oraz Microsoft Authentication Library (MSAL) dla Python
Jak autoryzować żądania interfejsu API usługi Livy przy użyciu tokenu entra SPN
Aby pracować z interfejsami API Fabric, w tym API Livy, musisz najpierw utworzyć aplikację Microsoft Entra i utworzyć tajny klucz, a następnie użyć tego klucza w swoim kodzie. Aplikacja musi być zarejestrowana i skonfigurowana odpowiednio do wykonywania wywołań interfejsu API w usłudze Fabric. Aby uzyskać więcej informacji, zobacz Dodawanie poświadczeń aplikacji i zarządzanie nimi w identyfikatorze Entra firmy Microsoft
Po utworzeniu rejestracji aplikacji utwórz klucz tajny klienta.
Podczas tworzenia tajnego klucza klienta pamiętaj, aby skopiować wartość. Będzie to potrzebne później w kodzie i nie będzie można ponownie zobaczyć sekretu. Będziesz również potrzebować identyfikatora aplikacji (klienta) i identyfikatora katalogu (dzierżawcy) oprócz tajnego wpisu w kodzie.
Następnie musimy dodać klucz tajny klienta do naszego obszaru roboczego.
Wyszukaj wpis tajny klienta Entra i dodaj ten wpis tajny do obszaru roboczego i upewnij się, że nowo dodany wpis tajny ma uprawnienia administratora.
Jak autoryzować żądania interfejsu API usługi Livy przy użyciu tokenu aplikacji Entra
Aby pracować z interfejsami API Fabric, w tym API Livy, najpierw musisz utworzyć aplikację Microsoft Entra i uzyskać token. Aplikacja musi być zarejestrowana i skonfigurowana odpowiednio do wykonywania wywołań interfejsu API w usłudze Fabric. Aby uzyskać więcej informacji, zobacz Rejestrowanie aplikacji przy użyciu Platforma tożsamości Microsoft.
Istnieje wiele uprawnień zakresu Microsoft Entra wymaganych do wykonywania zadań Livy. W tym przykładzie użyto prostego kodu Spark oraz dostępu do magazynu oraz SQL.
Code.AccessAzureDataExplorer.All
Code.AccessAzureDataLake.All
Code.AccessAzureKeyvault.All
Code.AccessFabric.All
Code.AccessStorage.All (dostęp do przechowywania kodu)
Element.Odczyt.Zapis.Wszystko
Lakehouse.Wykonaj.Wszystko
Przestrzeń robocza.OdczytZapis.Wszystko
Uwaga
W publicznej wersji zapoznawczej te zakresy mogą ulec zmianie w miarę dodawania kilku bardziej szczegółowych zakresów. Gdy pojawią się te zmiany zakresu, twoja aplikacja Livy może nie działać poprawnie. Sprawdź tę listę, ponieważ zostanie ona zaktualizowana o dodatkowe zakresy.
Niektórzy klienci chcą mieć bardziej szczegółowe uprawnienia niż poprzednia lista. Możesz usunąć element Item.ReadWrite.All i zastąpić tymi bardziej szczegółowymi uprawnieniami zakresu:
- Code.AccessAzureDataExplorer.All
- Code.AccessAzureDataLake.All
- Code.AccessAzureKeyvault.All
- Code.AccessFabric.All
- Code.AccessStorage.All (dostęp do przechowywania kodu)
- Lakehouse.Wykonaj.Wszystko
- Lakehouse.ReadWrite.All
- Przestrzeń robocza.OdczytZapis.Wszystko
- Notebook.ReadWrite.All
- SparkJobDefinition.ReadWrite.All
- MLModel.ReadWrite.All
- MLExperiment.ReadWrite.All
- Dataset.ReadWrite.All
Podczas rejestrowania aplikacji będzie potrzebny zarówno identyfikator aplikacji (klienta), jak i identyfikator katalogu (najemcy).
Uwierzytelniony użytkownik wywołujący interfejs API usługi Livy musi być członkiem obszaru roboczego, w którym znajdują się zarówno elementy interfejsu API, jak i źródła danych, z roli współtwórcy. Aby uzyskać więcej informacji, zobacz Przyznawanie użytkownikom dostępu do obszarów roboczych.
Jak odnaleźć punkt końcowy interfejsu API Livy w usłudze Fabric
Artefakt Lakehouse jest wymagany do uzyskania dostępu do punktu końcowego Livy. Po utworzeniu usługi Lakehouse punkt końcowy interfejsu API usługi Livy może znajdować się w panelu ustawień.
Punkt końcowy interfejsu API usługi Livy będzie postępować zgodnie z tym wzorcem:
https://api.fabric.microsoft.com/v1/workspaces/><ws_id>/lakehouses/<lakehouse_id>/livyapi/versions/2023-12-01/
Adres URL jest dołączany z <sesjami> lub <partiami> w zależności od tego, co wybierzesz.
Pobierz pliki Swagger interfejsu API Livy
Pełne pliki programu Swagger dla interfejsu API usługi Livy są dostępne tutaj.
Prześlij zadania interfejsu API Livy
Po zakończeniu konfiguracji API Livy możesz przesyłać zadania jako wsadowe lub sesyjne.
- Prześlij zadania sesji używając interfejsu API Livy
- Przesyłanie zadań wsadowych za pomocą interfejsu API Livy
Integracja ze środowiskami sieci szkieletowej
Domyślnie ta sesja interfejsu API usługi Livy działa na domyślnej puli początkowej dla obszaru roboczego. Alternatywnie możesz użyć środowisk Fabric Tworzenie, konfigurowanie i używanie środowiska w usłudze Microsoft Fabric, aby dostosować pulę Spark, z której sesja interfejsu API Livy korzysta do tych zadań Spark.
Aby użyć środowiska Fabric w sesji Livy Spark, zaktualizuj kod JSON, aby uwzględnić tę zawartość.
create_livy_session = requests.post(livy_base_url, headers = headers, json={
"conf" : {
"spark.fabric.environmentDetails" : "{\"id\" : \""EnvironmentID""}"}
}
)
Aby użyć Fabric Environment w sesji wsadowej Livy Spark, wystarczy zaktualizować dane JSON, jak pokazano poniżej.
payload_data = {
"name":"livybatchdemo_with"+ newlakehouseName,
"file":"abfss://YourABFSPathToYourPayload.py",
"conf": {
"spark.targetLakehouse": "Fabric_LakehouseID",
"spark.fabric.environmentDetails" : "{\"id\" : \""EnvironmentID"\"}" # remove this line to use starter pools instead of an environment, replace "EnvironmentID" with your environment ID
}
}
Jak monitorować historię żądań
Możesz użyć centrum monitoringu, aby wyświetlić wcześniejsze zgłoszenia do interfejsu API Livy i rozwiązywać wszelkie błędy zgłoszenia.
Powiązana zawartość
- Dokumentacja interfejsu API REST usługi Apache Livy
- Rozpocznij pracę z ustawieniami administratora dla pojemności Fabric
- Ustawienia administracyjne obszaru roboczego platformy Apache Spark w usłudze Microsoft Fabric
- Rejestrowanie aplikacji za pomocą platformy tożsamości firmy Microsoft
- Omówienie uprawnień i zgód Microsoft Entra
- Zakresy interfejsu API REST Fabric
- Omówienie monitorowania platformy Apache Spark
- Szczegóły aplikacji platformy Apache Spark