Knihovny

Pokud chcete poznámkovým blokům a úlohám spuštěným ve vašich clusterech zpřístupnit vlastní kód nebo kód třetí strany, můžete nainstalovat knihovnu. Knihovny se dají psát v Pythonu, Javě, Scalě a R. Můžete nahrát knihovny Pythonu, Javy a Scala a odkazovat na externí balíčky v úložištích PyPI, Maven a CRAN.

Azure Databricks zahrnuje celou řadu běžných knihoven v modulu 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:

Podpora Microsoftu vám pomůže izolovat a vyřešit problémy, které souvisí s knihovnami nainstalovanými a udržovanými službou Azure Databricks. V případě komponent třetích stran včetně knihoven poskytuje Microsoft přiměřenou podporu, která vám pomůže s dalším řešením problémů. Podpora Microsoftu při tom vyvine přiměřené úsilí a možná dokáže příslušný problém vyřešit. U opensourcových konektorů a projektů hostovaných na GitHubu doporučujeme, abyste hlásili problémy na GitHubu a sledovali je tam. Postupy vývoje, jako je stínování souborů jar nebo vytváření knihoven Pythonu, se prostřednictvím standardního procesu odeslání případu podpory nepodporují. K 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ů, například stránka Microsoft Q&A pro Azure Databricks a Stack Overflow.

Knihovny v oboru clusteru

Knihovny můžete nainstalovat do clusterů, aby je mohly používat všechny poznámkové bloky a úlohy spuštěné v clusteru. Databricks podporuje knihovny Pythonu, JAR a R. Viz Knihovny clusterů.

Knihovnu clusteru 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ů knihovny v kořenovém adresáři DBFS je ve výchozím nastavení v Databricks Runtime 15.0 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 knihovny do souborů pracovního prostoru nebo svazků katalogu Unity nebo používat úložiště balíčků 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 Podpora knihoven Pythonu, podpora knihoven Java a Scala a podpora knihoven jazyka R.

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

Databricks podporuje většinu instalací konfigurace knihoven Python, JAR a R, ale existují některé nepodporované scénáře. Doporučujeme nahrát knihovny do zdrojových umístění, která podporují instalaci do výpočetního prostředí s režimem sdíleného přístupu, protože se jedná o doporučený režim pro všechny úlohy. Viz režimy Accessu. Při plánování pracovních postupů s režimem sdíleného přístupu se spustí pracovní postup s instančním objektem.

Důležité

Výpočetní prostředky používejte jenom s režimem přístupu jednoho uživatele, pokud režim sdíleného přístupu nepodporuje požadované funkce. Žádný režim sdíleného přístupu izolace není starší konfigurace v Databricks, která se nedoporučuje.

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

Konfigurace Doporučení
Databricks Runtime 13.3 LTS a novější s katalogem Unity Nainstalujte knihovny na výpočetní prostředky s režimem sdíleného přístupu ze svazků katalogu Unity s grantem READ pro všechny uživatele účtu.

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 Pythonu

Následující tabulka uvádí kompatibilitu verzí modulu Databricks Runtime pro soubory kol Pythonu pro různé režimy přístupu ke clusteru na základě umístění zdroje knihovny. Viz poznámky k verzi Databricks Runtime a režimy kompatibility a přístupu.

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

Poznámka:

Instalace souborů egg Pythonu není podporována v Databricks Runtime 14.0 a novějších. Místo toho používejte soubory kol Pythonu nebo nainstalujte balíčky z PyPI.

Režim sdíleného přístupu Režim přístupu jednoho uživatele Bez režimu sdíleného přístupu izolace (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šší
Svazky 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 přístupu ke clusteru na základě umístění zdroje knihovny. Viz poznámky k verzi Databricks Runtime a režimy kompatibility a přístupu.

Poznámka:

Režim sdíleného přístupu vyžaduje, aby správce přidal souřadnice Mavenu a cesty pro knihovny JAR do .allowlist Viz Knihovny allowlist a inicializační skripty pro sdílené výpočetní prostředky.

Režim sdíleného přístupu Režim přístupu jednoho uživatele Bez režimu sdíleného přístupu izolace (starší verze)
Maven 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šší
Svazky 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 přístupu ke clusteru. Viz poznámky k verzi Databricks Runtime a režimy kompatibility a přístupu.

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

Knihovny v rámci poznámkových bloků

Knihovny s vymezeným poznámkovým blokem, které jsou k dispozici pro Python a R, umožňují instalovat knihovny a vytvářet prostředí s vymezeným oborem relace poznámkového bloku. Tyto knihovny nemají vliv na jiné poznámkové bloky spuštěné ve stejném clusteru. Knihovny s vymezeným poznámkovým blokem se neuchovávají a musí být znovu nainstalovány pro každou relaci. Knihovny s vymezeným poznámkovým blokem 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 se nedají nainstalovat žádosti o přijetí změn.

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ích úloh nebo úloh.

Správa prostředí Pythonu

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

Poznámka:

  • Vlastní kontejnery , které používají prostředí založené na conda, nejsou kompatibilní s knihovnami v rámci poznámkových bloků a s knihovnami clusterů v Databricks Runtime 10.4 LTS a vyšší. Místo toho služba Azure Databricks doporučuje instalovat knihovny přímo z bitové kopie nebo pomocí inicializačních skriptů. Pokud chcete v těchto scénářích dál používat knihovny clusteru, můžete konfiguracispark.databricks.driverNfs.clusterWidePythonLibsEnabled Sparku nastavit na false. Podpora konfigurace Sparku se odebere 31. prosince 2021 nebo později.
Zdroj balíčku Pythonu Knihovny v rámci poznámkových bloků s využitím %pip Knihovny clusterů Knihovny úloh s rozhraním API úloh
PyPI Použijte %pip install. Viz příklad. Jako zdroj vyberte PyPI. Do knihoven úloh přidejte nový objekt pypi a zadejte pole package.
Soukromé zrcadlení PyPI, jako je Nexus nebo Artifactory Použijte %pip install s možností --index-url. K dispozici je správa tajných kódů. Viz příklad. Nepodporováno Nepodporováno
VCS, jako je GitHub, s nezpracovaným zdrojem Použijte %pip install a jako název balíčku zadejte adresu URL úložiště. 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 nezpracovaným zdrojem 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 tajných kódů. Viz příklad. Nepodporováno Nepodporováno
Cesta k souboru Použijte %pip install. Viz [example](/libraries/notebooks-python-libraries.md#workspace-files. Jako zdroj vyberte cestu k souboru nebo ADLS . Přidejte do knihoven úloh nový egg nebo whl objekt a jako pole zadejte cestu k package souboru.
Azure Data Lake Storage Gen2 Použijte %pip install společně s předem podepsanou adresou URL. Cesty s protokolem abfss:// Azure Data Lake Storage Gen2 se nepodporují. Jako zdroj vyberte cestu k souboru nebo ADLS . Přidejte do knihoven úloh nový egg objekt nebo whl objekt a jako package pole zadejte cestu Azure Data Lake Storage Gen2.

Priorita knihovny Pythonu

Může nastat situace, kdy potřebujete přepsat verzi integrované knihovny nebo mít vlastní knihovnu, která je v konfliktu s názvem s jinou knihovnou nainstalovanou v clusteru. 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 Pythonu sys.path. Složka Gitu Databricks přidá aktuální pracovní adresář do cesty před všechny ostatní knihovny, zatímco poznámkové bloky mimo složky Git přidávají aktuální pracovní adresář po instalaci 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 s vymezeným poznámkovým blokem (%pip install v poznámkových blocích)
  4. Knihovny clusteru (pomocí uživatelského rozhraní, rozhraní příkazového řádku nebo rozhraní API)
  5. Knihovny zahrnuté v Databricks Runtime
    • Knihovny nainstalované s inicializačními skripty se můžou vyřešit před nebo po integrovaných knihovnách v závislosti na tom, jak jsou nainstalované. 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.