Python-afhankelijkheden voor pijplijnen beheren

Lakeflow Spark-declaratieve pijplijnen ondersteunt externe afhankelijkheden in uw pijplijnen. Databricks raadt aan om een van de twee patronen te gebruiken om Python-pakketten te installeren:

  1. Gebruik de omgevingsinstellingen om pakketten toe te voegen aan de pijplijnomgeving voor alle bronbestanden in een pijplijn.
  2. Importeer modules of bibliotheken uit broncode die is opgeslagen in werkruimtebestanden. Zie Python-modules importeren uit Git-mappen of werkruimtebestanden.

Pipelines ondersteunen ook het gebruik van init-scripts op clusterniveau. Deze externe afhankelijkheden, met name init-scripts, verhogen echter het risico op problemen met runtime-upgrades. Om deze risico's te beperken, minimaliseert u het gebruik van init-scripts in uw pijplijnen. Als uw verwerking init-scripts vereist, automatiseert u het testen van uw pijplijn om problemen vroeg te detecteren. Als u init-scripts gebruikt, raadt Databricks u aan uw testfrequentie te verhogen.

Belangrijk

Omdat JVM-bibliotheken niet worden ondersteund in pijplijnen, gebruikt u geen init-script om JVM-bibliotheken te installeren. U kunt echter andere bibliotheektypen, zoals Python-bibliotheken, installeren met een init-script.

Python-bibliotheken

Als u externe Python-bibliotheken wilt opgeven, bewerkt u de omgeving voor uw pijplijn.

  1. Klik in de pijplijneditor op Instellingen.
  2. Selecteer onder Pijplijnomgevinghet potloodpictogram.Omgeving bewerken.
  3. Klik op pluspictogram.Afhankelijkheid toevoegen.
  4. Typ de naam van de afhankelijkheid. Databricks raadt aan de bibliotheekversie vast te zetten. Als u bijvoorbeeld een afhankelijkheid van simplejson versie 3.19 wilt toevoegen, typt u simplejson==3.19.*.

U kunt ook een Python-wielpakket installeren vanaf een Unity Catalog-volume door het pad op te geven, zoals /Volumes/my_catalog/my_schema/my_ldp_volume/ldpfns-1.0-py3-none-any.whl.

Omgevingsversie

Standaard zijn de Python taalversie en vooraf geïnstalleerde bibliotheek die beschikbaar zijn voor uw pijplijn, afkomstig van de huidige versie van het Databricks Runtime-kanaal. Zie de releaseopmerkingen van Lakeflow Spark Declarative Pipelines en het release-upgradeproces voor de huidige versies en de lijsten met pakketten per runtime.

Belangrijk

Deze functie bevindt zich in de bètaversie. Werkruimtebeheerders kunnen de toegang tot deze functie beheren vanaf de pagina Previews . Zie Azure Databricks previews beheren.

Als u de versie van de Python-taal en de set vooraf geïnstalleerde bibliotheken onafhankelijk van upgrades van Databricks Runtime wilt vastzetten, configureert u een omgevingsversie op de pijplijn. Hoewel een omgevingsversie is ingesteld, worden uw Python taalversie of vooraf geïnstalleerde bibliotheekversies van Databricks Runtime niet gewijzigd en worden eventuele externe afhankelijkheden die u toevoegt via de Omgeving-instellingen gelaagd boven op deze basis. Zie Omgevingsversies configureren voor pijplijnen.

Kan ik Scala- of Java-bibliotheken gebruiken in pijplijnen?

Nee, pijplijnen ondersteunen alleen SQL en Python. U kunt geen JVM-bibliotheken in een pijplijn gebruiken. Het installeren van JVM-bibliotheken leidt tot onvoorspelbaar gedrag en kan incompatibel worden met toekomstige releases van Lakeflow Spark Declarative Pipelines. Als uw pijplijn een init-script gebruikt, moet u er ook voor zorgen dat JVM-bibliotheken niet door het script worden geïnstalleerd.