Gestire le dipendenze Python per le pipeline

Le pipeline dichiarative di Lakeflow Spark supportano dipendenze esterne nelle pipeline. Databricks consiglia di usare uno dei due modelli per installare i pacchetti Python:

  1. Usare le impostazioni ambiente per aggiungere pacchetti all'ambiente pipeline per tutti i file di origine in una pipeline.
  2. Importare moduli o librerie dal codice sorgente archiviato nei file dell'area di lavoro. Vedere Importare moduli Python da cartelle Git o file dell'area di lavoro.

Le pipeline supportano anche l'uso di script di inizializzazione a livello di cluster. Tuttavia, queste dipendenze esterne, in particolare gli script init, aumentano il rischio di problemi con gli aggiornamenti di runtime. Per attenuare questi rischi, ridurre al minimo l'uso di script init nelle pipeline. Se l'elaborazione richiede script init, automatizzare i test della pipeline per rilevare i problemi in anticipo. Se si usano script init, Databricks consiglia di aumentare la frequenza di test.

Importante

Poiché le librerie JVM non sono supportate nelle pipeline, non usare uno script init per installare le librerie JVM. Tuttavia, è possibile installare altri tipi di libreria, ad esempio le librerie Python, con uno script init.

librerie Python

Per specificare librerie Python esterne, modificare l'ambiente per la tua pipeline.

  1. Nell'editor della pipeline fare clic su Impostazioni.
  2. In Ambiente pipeline selezionare Icona a forma di matita.Modificare l'ambiente.
  3. Fare clic sull'icona Con il segno più.Aggiungere una dipendenza.
  4. Digitare il nome della dipendenza. Databricks consiglia di bloccare la versione della libreria. Ad esempio, per aggiungere una dipendenza dalla simplejson versione 3.19, digitare simplejson==3.19.*.

È anche possibile installare un pacchetto wheel Python da un volume del catalogo Unity specificandone il percorso, ad esempio /Volumes/my_catalog/my_schema/my_ldp_volume/ldpfns-1.0-py3-none-any.whl.

Versione dell'ambiente

Per impostazione predefinita, la versione del linguaggio Python e il set di librerie preinstallati disponibili per la pipeline provengono dalla versione corrente del canale databricks Runtime. Consulta le note di rilascio di Lakeflow Spark Declarative Pipelines e la procedura di aggiornamento della release per le versioni correnti e gli elenchi di pacchetti per ogni runtime.

Importante

Questa funzionalità è in versione beta. Gli amministratori dell'area di lavoro possono controllare l'accesso a questa funzionalità dalla pagina Anteprime . Vedere Gestire le anteprime di Azure Databricks.

Per fissare la versione del linguaggio Python e il set di librerie preinstallato indipendentemente dagli aggiornamenti di Databricks Runtime, configurare una versione dell'ambiente sulla pipeline. Mentre è impostata una versione dell'ambiente, gli aggiornamenti di Databricks Runtime non modificano la versione del linguaggio Python o le versioni della libreria preinstallate e le eventuali dipendenze esterne aggiunte tramite l'Environment impostazioni vengono sovrapposte a questa base. Vedi Configurare le versioni dell'ambiente per le pipeline.

È possibile usare librerie Scala o Java nelle pipeline?

No, le pipeline supportano solo SQL e Python. Non è possibile usare librerie JVM in una pipeline. L'installazione delle librerie JVM causa un comportamento imprevedibile e può verificarsi un'interruzione con le versioni future delle pipeline dichiarative di Lakeflow Spark. Se la pipeline usa uno script init, è anche necessario assicurarsi che le librerie JVM non siano installate dallo script.