Instalace knihoven

Pokud chcete zpřístupnit poznámkové bloky a úlohy spuštěné na výpočetních prostředcích třetí strany nebo vlastní kód, můžete knihovnu nainstalovat. Knihovny lze psát v Python, Java, Scala a R. Můžete nahrát knihovny Python, Java a Scala a odkazovat na externí balíčky v úložištích PyPI, Maven a CRAN.

Azure Databricks zahrnuje mnoho běžných knihoven v Databricks Runtime. Pokud chcete zjistit, které knihovny ¨jsou součástí Databricks Runtime, v poznámkách k verzi Databricks Runtime si projděte systémové prostředí příslušné verze Databricks Runtime.

Poznámka:

Microsoft Support pomáhá izolovat a řešit problémy související s knihovnami nainstalovanými a udržovanými Azure Databricks. Pro komponenty třetích stran, včetně knihoven, Microsoft poskytuje komerčně rozumnou podporu, která vám pomůže s dalším řešením problémů. Microsoft Support pomáhá na základě nejlepšího úsilí a může být schopen problém vyřešit. Pro konektory a projekty open source hostované na GitHubu doporučujeme, abyste na GitHubu ohlásili problémy a sledovali jejich řešení. Úsilí o vývoj, jako jsou stínování souborů JAR nebo sestavování knihoven Python, nejsou podporovány prostřednictvím standardního procesu odeslání případu podpory: kvůli rychlejšímu řešení vyžadují zapojení konzultace. Pracovníci podpory vás můžou požádat, abyste využili další komunikační kanály pro opensourcové technologie, které vám můžou nabídnout důkladné znalosti dané technologie. Existuje několik komunitních webů; dva příklady jsou stránka Microsoft Q&A pro Azure Databricks a Stack Overflow.

knihovny s rozsahem výpočtů

Knihovny můžete nainstalovat do výpočetního prostředku, aby je mohly používat všechny poznámkové bloky a úlohy spuštěné na výpočetních prostředcích. Databricks podporuje knihovny Python, JAR a R. Viz knihovny s vymezeným výpočetním oborem.

Knihovnu s vymezeným výpočetním oborem můžete nainstalovat přímo z následujících zdrojů:

Ne všechna umístění jsou podporována pro všechny typy knihoven nebo všechny konfigurace výpočetních prostředků. Viz Doporučení pro nahrávání knihoven pro doporučení konfigurace.

Důležité

Knihovny je možné nainstalovat z DBFS při použití Databricks Runtime 14.3 LTS a níže. Každý uživatel pracovního prostoru ale může upravovat soubory knihovny uložené v DBFS. Aby se zlepšilo zabezpečení knihoven v pracovním prostoru Azure Databricks, ukládání souborů knihoven v kořenovém adresáři DBFS je ve výchozím nastavení v Databricks Runtime 15.1 a novějších zakázaných. Viz Ukládání knihoven v kořenovém adresáři DBFS je ve výchozím nastavení zastaralé a zakázané.

Místo toho Databricks doporučuje nahrávat všechny knihovny, včetně knihoven Pythonu, souborů JAR a konektorů Spark, do souborů pracovního prostoru nebo svazků katalogu Unity, nebo využívat úložiště balíčkových knihoven. Pokud vaše úloha tyto vzory nepodporuje, můžete také použít knihovny uložené v cloudovém úložišti objektů.

Úplné informace o podpoře knihoven najdete v tématu Python podpora knihoven, Java a podpora knihoven Scala a podpora knihovny R.

Doporučení pro nahrávání knihoven

Databricks podporuje většinu instalací konfigurace Python, jar a knihoven R, ale existují některé nepodporované scénáře. Doporučujeme nahrát knihovny do zdrojových umístění, která podporují instalaci na výpočetní prostředky pomocí standardního režimu přístupu (dříve sdílený režim přístupu), protože se jedná o doporučený režim pro všechny úlohy. Viz přístupové režimy. Při plánování úloh pomocí standardního režimu přístupu spusťte úlohu s servisní identitou.

Důležité

Výpočetní prostředky používejte pouze s vyhrazeným režimem přístupu (dříve režim přístupu jednoho uživatele), pokud standardní režim přístupu nepodporuje požadované funkce. Režim sdíleného přístupu bez izolace je na Databricks neaktuální konfigurace, která se nedoporučuje.

Následující tabulka obsahuje doporučení uspořádaná podle verze Databricks Runtime a povolení Unity Catalog.

Konfigurace Doporučení
Databricks Runtime 13.3 LTS a vyšší s Unity Catalogem Nainstalujte knihovny na výpočetní prostředky s standardním režimem přístupu ze svazků Unity Catalog s oprávněním READ pro potřebné uživatele GRANT.
Pokud je to možné, musí být souřadnice Mavenu a cesty knihovny JAR přidány do seznamu povolených.
Databricks Runtime 11.3 LTS a novější bez katalogu Unity Nainstalujte knihovny ze souborů pracovního prostoru. (Limit velikosti souboru je 500 MB.)
Databricks Runtime 10.4 LTS a níže Nainstalujte knihovny z cloudového úložiště objektů.

Podpora knihovny Python

Následující tabulka uvádí kompatibilitu verzí modulu Databricks Runtime pro soubory kol Python pro různé režimy přístupu výpočetních prostředků na základě umístění zdroje knihovny. Vizte poznámky k verzím a kompatibilitě Databricks Runtime a režimy přístupu.

V Databricks Runtime 15.0 a novějších můžete ke správě závislostí Python použít soubory requirements.txt. Tyto soubory lze nahrát do libovolného podporovaného zdrojového umístění.

Poznámka:

Instalace souborů Python egg je podporována pouze na Databricks Runtime 13.3 LTS a nižší, a to pouze pro vyhrazený nebo sdílený přístup bez izolace. Kromě toho nelze soubory Python egg nainstalovat na svazky ani na soubory pracovního prostoru. Místo toho použijte soubory kol Python nebo nainstalujte balíčky z PyPI.

Standardní režim přístupu Režim vyhrazeného přístupu Bez izolace v režimu sdíleného přístupu (starší verze)
PyPI 13.3 LTS a vyšší Všechny podporované verze Databricks Runtime Všechny podporované verze Databricks Runtime
Soubory pracovního prostoru 13.3 LTS a vyšší 13.3 LTS a vyšší 14.1 a vyšší
Obsahy 13.3 LTS a vyšší 13.3 LTS a vyšší Nepodporováno
Cloudové úložiště 13.3 LTS a vyšší Všechny podporované verze Databricks Runtime Všechny podporované verze Databricks Runtime
DBFS (nedoporučuje se) Nepodporováno 14.3 a níže 14.3 a níže

Podpora knihoven Java a Scala

Následující tabulka uvádí kompatibilitu verzí modulu Runtime Databricks pro soubory JAR pro různé režimy výpočetního přístupu na základě umístění zdroje knihovny. Vizte poznámky k verzím a kompatibilitě Databricks Runtime a režimy přístupu.

Podrobnosti o tom, jak nasadit soubory Scala JAR v clusteru s podporou katalogu Unity ve standardním režimu přístupu, najdete v tématu Kurz: Spuštění kódu Scala na bezserverové výpočetní prostředky. Všimněte si, že u standardních clusterů katalogu Unity musí být třídy v knihovnách JAR v pojmenovaném balíčku, jako je například com.databricks.MyClass, nebo dojde k chybám při importu knihovny.

Poznámka:

Standardní režim přístupu vyžaduje, aby správce přidal souřadnice Mavenu a cesty pro knihovny JAR do allowlist. Viz Seznam povolených knihoven a inicializační skripty na výpočetních jednotkách s použitím standardního režimu přístupu (dříve sdíleného režimu přístupu).

Standardní režim přístupu Režim vyhrazeného přístupu Bez izolace v režimu sdíleného přístupu (starší verze)
Odborník 13.3 LTS a vyšší Všechny podporované verze Databricks Runtime Všechny podporované verze Databricks Runtime
Soubory pracovního prostoru Nepodporováno Nepodporováno 14.1 a vyšší
Obsahy 13.3 LTS a vyšší 13.3 LTS a vyšší Nepodporováno
Cloudové úložiště 13.3 LTS a vyšší Všechny podporované verze Databricks Runtime Všechny podporované verze Databricks Runtime
DBFS (nedoporučuje se) Nepodporováno 14.3 a níže 14.3 a níže

Podpora knihovny R

Následující tabulka uvádí kompatibilitu verzí modulu Databricks Runtime pro balíčky CRAN pro různé režimy výpočetního přístupu. Vizte poznámky k verzím a kompatibilitě Databricks Runtime a režimy přístupu.

Standardní režim přístupu Režim vyhrazeného přístupu Bez izolace v režimu sdíleného přístupu (starší verze)
CRAN Nepodporováno Všechny podporované verze Databricks Runtime Všechny podporované verze Databricks Runtime

Identita instalačního programu

Při instalaci knihovny ze souborů pracovního prostoru nebo svazků katalogu Unity může být identita přidružena k instalaci v závislosti na režimu výpočetního přístupu. Identita musí mít přístup pro čtení k souboru knihovny.

Standardní režim přístupu Režim vyhrazeného přístupu Bez izolace v režimu sdíleného přístupu (starší verze)
Identita uživatele, který knihovnu nainstaluje Identita vyhrazeného ředitele Žádná identita

Knihovny určené pro poznámkové bloky

Knihovny vázané na poznámkový blok, dostupné pro Python a R, umožňují instalovat knihovny a vytvářet prostředí omezené na relaci poznámkového bloku. Tyto knihovny nemají vliv na jiné poznámkové bloky spuštěné ve stejném výpočetním prostředí. Knihovny omezené na poznámkový blok nezůstanou uložené a musí se znovu nainstalovat pro každou relaci. Knihovny omezené na poznámkový blok používejte v případě, že potřebujete vlastní prostředí pro konkrétní poznámkový blok.

Poznámka:

Na úrovni poznámkového bloku nelze instalovat soubory JAR.

Důležité

Knihovny pracovních prostorů jsou zastaralé a neměly by se používat. Viz knihovny pracovních prostorů (starší verze). Ukládání knihoven jako souborů pracovního prostoru se ale liší od knihoven pracovních prostorů a je stále plně podporováno. Knihovny uložené jako soubory pracovního prostoru můžete nainstalovat přímo do výpočetního prostředí nebo úloh.

správa prostředí Python

Následující tabulka obsahuje přehled možností, které můžete použít k instalaci Python knihoven v Azure Databricks.

Poznámka:

  • Vlastní kontejnery, které používají prostředí založené na conda, nejsou kompatibilní s knihovnami omezenými na poznámkové bloky a s výpočetními knihovnami v Databricks Runtime 10.4 LTS a vyšší. Místo toho Azure Databricks doporučujeme instalovat knihovny přímo do image nebo pomocí inicializačních skriptů. Pokud chcete v těchto scénářích dál používat výpočetní knihovny, můžete nastavit konfiguraci Sparkuspark.databricks.driverNfs.clusterWidePythonLibsEnabled na false. Podpora konfigurace Sparku se odebere 31. prosince 2021 nebo později.
zdroj balíčku Python Knihovny specifické pro poznámkový blok s využitím %pip Knihovny ohraničené na notebooku se souborem YAML pro základní prostředí knihovny s rozsahem výpočetních operací Knihovny úloh s rozhraním API úloh
PyPI Použijte %pip install. Viz příklad. Přidejte název balíčku PyPI do souboru YAML základního prostředí. Viz příklad. Jako zdroj vyberte PyPI. Do knihoven úloh přidejte nový objekt pypi a zadejte pole package.
Soukromé zrcadlo PyPI, jako je Nexus nebo Artifactory Použijte %pip install s možností --index-url. K dispozici je správa tajemství. Viz příklad. Přidejte -–index-url do souboru YAML základního prostředí. K dispozici je správa tajemství. Viz příklad. Nepodporováno Nepodporováno
VCS, například GitHub, s nezpracovaným zdrojem Použijte %pip install a jako název balíčku zadejte adresu URL úložiště. Viz příklad. Přidejte adresu URL úložiště jako název balíčku do souboru YAML základního prostředí. Viz příklad. Jako zdroj vyberte PyPI a jako název balíčku zadejte adresu URL úložiště. Do knihoven úloh přidejte nový objekt pypi a do pole package zadejte adresu URL úložiště.
Privátní VCS s původním zdrojovým kódem Použijte %pip install a jako název balíčku zadejte adresu URL úložiště se základním ověřováním. K dispozici je správa tajemství. Viz příklad. Přidejte úložiště se základním ověřováním jako název balíčku do souboru YAML základního prostředí. Viz příklad. Nepodporováno Nepodporováno
Cesta k souboru Použijte %pip install. Viz příklad. Přidejte cestu k souboru jako název balíčku do souboru YAML základního prostředí. Viz příklad. Jako zdroj vyberte cestu k souboru/ADLS. Přidejte do knihoven úloh nový egg nebo whl objekt a jako pole zadejte cestu k package souboru.
Azure Data Lake Storage Použijte %pip install společně s předem podepsanou adresou URL. Cesty s protokolem Azure Data Lake Storage abfss:// se nepodporují. Přidejte předem podepsanou adresu URL jako název balíčku do souboru YAML základního prostředí. Cesty s protokolem Azure Data Lake Storage abfss:// se nepodporují. Jako zdroj vyberte cestu k souboru/ADLS. Přidejte do knihoven úloh nový objekt egg nebo whl a jako pole package zadejte cestu Azure Data Lake Storage.

Priorita knihovny Python

Může nastat situace, kdy potřebujete přepsat verzi předdefinované knihovny nebo máte vlastní knihovnu, která je v konfliktu s jinou knihovnou nainstalovanou na výpočetním prostředku. Při spuštění import <library>se knihovna s vysokou prioritou naimportuje.

Důležité

Knihovny uložené v souborech pracovního prostoru mají různou prioritu v závislosti na tom, jak se přidají do Python sys.path. Složka Gitu Databricks přidá aktuální pracovní adresář do cesty před všechny ostatní knihovny, naopak poznámkové bloky mimo složky Git přidávají aktuální pracovní adresář po instalování jiných knihoven. Pokud ke své cestě ručně připojíte adresáře pracovního prostoru, budou mít vždy nejnižší prioritu.

Následující seznam obsahuje prioritu od nejvyššího po nejnižší. V tomto seznamu nižší číslo znamená vyšší prioritu.

  1. Knihovny v aktuálním pracovním adresáři (jenom složky Gitu).
  2. Knihovny v kořenovém adresáři složky Git (jenom složky Gitu).
  3. Knihovny omezené na poznámkový blok (%pip install v poznámkových blocích)
  4. Knihovny s vymezeným výpočetním oborem (pomocí uživatelského rozhraní, rozhraní příkazového řádku nebo rozhraní API)
  5. Knihovny zahrnuté v Databricks Runtime
    • Knihovny nainstalované pomocí inicializačních skriptů mohou být upřednostněny před nebo po integrovaných knihovnách, v závislosti na způsobu jejich instalace. Databricks nedoporučuje instalovat knihovny pomocí inicializačních skriptů.
  6. Knihovny v aktuálním pracovním adresáři (ne ve složkách Gitu).
  7. Soubory pracovního prostoru připojené k souboru sys.path.