Zarządzanie zależnościami języka Python dla potoków usługi Delta Live Tables
Usługa Delta Live Tables obsługuje zewnętrzne zależności w twoich potokach. Usługa Databricks zaleca użycie jednego z dwóch wzorców do zainstalowania pakietów języka Python:
- Użyj polecenia ,
%pip install
aby zainstalować pakiety dla wszystkich plików źródłowych w potoku. - Zaimportuj moduły lub biblioteki z kodu źródłowego przechowywanego w plikach obszaru roboczego. Zobacz Importowanie modułów języka Python z folderów git lub plików obszarów roboczych.
Delta Live Tables obsługuje również używanie globalnych i klastrowych skryptów inicjowania . Jednak te zależności zewnętrzne, szczególnie skrypty inicjowania, zwiększają ryzyko problemów z uaktualnieniami środowiska uruchomieniowego. Aby ograniczyć te zagrożenia, zminimalizuj użycie skryptów inicjowania w potokach. Jeśli przetwarzanie wymaga skryptów inicjowania, zautomatyzuj testowanie potoku w celu wczesnego wykrywania problemów. Jeśli używasz skryptów init, usługa Databricks zaleca zwiększenie częstotliwości testowania.
Ważne
Ponieważ biblioteki JVM nie są obsługiwane w potokach usługi Delta Live Tables, nie należy instalować bibliotek JVM za pomocą skryptu init. Można jednak zainstalować inne typy bibliotek, takie jak biblioteki języka Python, za pomocą skryptu init.
Biblioteki języka Python
Aby określić zewnętrzne biblioteki języka Python, użyj %pip install
polecenia magic. Po uruchomieniu update funkcja Delta Live Tables uruchamia wszystkie komórki zawierające polecenie %pip install
przed uruchomieniem dowolnych definicji table. Każdy notes języka Python zawarty w potoku shares działa w środowisku biblioteki i ma dostęp do wszystkich zainstalowanych bibliotek.
Ważne
-
%pip install
polecenia muszą znajdować się w osobnej komórce w górnej części notatnika potoku Delta Live Tables. Nie dołączaj żadnego innego kodu do komórek zawierających%pip install
polecenia. - Ponieważ każdy notes w potoku shares środowiska biblioteki, nie można zdefiniować różnych wersji biblioteki w jednym potoku. Jeśli przetwarzanie wymaga różnych wersji bibliotek, należy je zdefiniować w różnych potokach.
Poniższy przykład instaluje bibliotekę numpy
i udostępnia ją globalnie dla dowolnego notesu języka Python w potoku:
%pip install simplejson
Aby zainstalować pakiet wheel języka Python, dodaj ścieżkę koła języka Python do %pip install
polecenia . Zainstalowane pakiety koło Python są dostępne dla wszystkich tables w linii produkcyjnej. W poniższym przykładzie instalowany jest plik wheel języka Python o nazwie dltfns-1.0-py3-none-any.whl
z woluminu Unity Catalog.
%pip install /Volumes/my_catalog/my_schema/my_dlt_volume/dltfns-1.0-py3-none-any.whl
Zobacz Instalowanie pakietu wheel języka Python za pomocą narzędzia %.
Czy mogę używać bibliotek języka Scala lub Java w potoku Delta Live Tables?
Nie, usługa Delta Live Tables obsługuje tylko języki SQL i Python. W potoku nie można używać bibliotek JVM. Zainstalowanie bibliotek JVM spowoduje nieprzewidywalne funkcjonowanie i może przestać działać z przyszłymi wydaniami Delta Live Tables. Jeśli potok używa skryptu inicjowania, należy również upewnić się, że biblioteki JVM nie są zainstalowane przez skrypt.