Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Per rendere disponibile codice di terze parti o personalizzato per notebook e processi in esecuzione nelle risorse di calcolo, è possibile installare una libreria. Le librerie possono essere scritte in Python, Java, Scala e R. È possibile caricare librerie Python, Java e Scala e puntare a pacchetti esterni nei repository PyPI, Maven e CRAN.
Azure Databricks include molte librerie comuni in Databricks Runtime. Per verificare quali librerie sono incluse in Databricks Runtime, vedere la sottosezione Ambiente di sistema delle note sulla versione di Databricks Runtime per la versione di Databricks Runtime in uso.
Nota
Il supporto tecnico Microsoft contribuisce all'isolamento e alla risoluzione di problemi correlati alle librerie installate e gestite da Azure Databricks. Per i componenti di terze parti, incluse le librerie, Microsoft fornisce supporto commercialmente ragionevole per contribuire alla risoluzione dei problemi. Il supporto tecnico Microsoft fornisce il miglior supporto possibile e potrebbe riuscire a risolvere il problema. Per i connettori e i progetti open source ospitati in GitHub, è consigliabile segnalare i problemi e seguirne il corso in GitHub. Le attività di sviluppo, ad esempio lo shading di file JAR o la compilazione di librerie Python, non sono supportate tramite il processo standard di invio di casi di supporto, ma richiedono un impegno di consulenza per una risoluzione più rapida. Il supporto potrebbe chiedere di coinvolgere altri canali per tecnologie open source in cui è possibile trovare competenze approfondite per tale tecnologia. Sono disponibili diversi siti delle community, ad esempio la pagina di Microsoft Q&A per Azure Databricks e Stack Overflow.
librerie ad ambito di calcolo
È possibile installare librerie in una risorsa di calcolo in modo che possano essere usate da tutti i notebook e i processi in esecuzione nel calcolo. Databricks supporta librerie Python, JAR e R. Vedere Librerie con ambito di calcolo.
È possibile installare una libreria in ambito di calcolo direttamente dalle origini seguenti:
- Un repository di pacchetti, ad esempio PyPI, Maven o CRAN
- File dell'area di lavoro
- Volumi di Unity Catalog
- Posizione di archiviazione oggetti cloud
- Percorso nel computer locale
Non tutte le posizioni sono supportate per tutti i tipi di librerie o tutte le configurazioni di calcolo. Per consigli sulla configurazione, vedere Raccomandazioni per il caricamento di librerie .
Importante
Le librerie possono essere installate da DBFS quando si usa Databricks Runtime 14.3 LTS e versioni successive. Tuttavia, qualsiasi utente dell'area di lavoro può modificare i file di libreria archiviati in DBFS. Per migliorare la sicurezza delle librerie in un'area di lavoro di Azure Databricks, l'archiviazione dei file di libreria nella radice DBFS è deprecata e disabilitata per impostazione predefinita in Databricks Runtime 15.1 e versioni successive. Vedi Archiviazione di librerie nella radice DBFS è deprecata e disabilitata per impostazione predefinita.
Databricks consiglia invece di caricare tutte le librerie, incluse le librerie Python, i file JAR e i connettori Spark, nei file dell'area di lavoro o nei volumi del catalogo Unity o usando i repository dei pacchetti di libreria. Se il carico di lavoro non supporta questi modelli, è anche possibile usare le librerie archiviate nell'archiviazione di oggetti cloud.
Per informazioni complete sul supporto delle librerie, vedere Supporto della libreria Python, supporto della libreria Java e Scala e supporto per la libreria R.
Suggerimenti per il caricamento di librerie
Databricks supporta la maggior parte delle installazioni di configurazione delle librerie Python, JAR e R, ma esistono alcuni scenari non supportati. È consigliabile caricare le librerie nei percorsi di origine che supportano l'installazione nel calcolo con la modalità di accesso standard (in precedenza modalità di accesso condiviso), perché questa è la modalità consigliata per tutti i carichi di lavoro. Vedere Modalità di accesso usata. Quando si pianificano processi con modalità di accesso standard, eseguire il processo con il principale del servizio .
Importante
Usare le risorse di calcolo con modalità di accesso dedicato (in precedenza modalità di accesso utente singolo) solo se la funzionalità richiesta non è supportata dalla modalità di accesso standard. La modalità di accesso condiviso senza isolamento è una configurazione legacy in Databricks non consigliata.
La tabella seguente fornisce raccomandazioni organizzate in base alla versione di Databricks Runtime e all'abilitazione di Unity Catalog.
Impostazione | Raccomandazione |
---|---|
Databricks Runtime 13.3 LTS e versioni successive con Unity Catalog | Installare librerie in ambiente di calcolo con modalità di accesso standard dai volumi del catalogo Unity con GRANT READ per gli utenti necessari. Se applicabile, le coordinate Maven e i percorsi della libreria JAR devono essere aggiunti all'elenco consenti. |
Databricks Runtime 11.3 LTS e versioni successive senza Unity Catalog | Installare le librerie dai file dell'area di lavoro. Il limite di dimensioni del file è 500 MB. |
Databricks Runtime 10.4 LTS e versioni successive | Installare librerie dall'archiviazione cloud di oggetti. |
Supporto della libreria Python
La tabella seguente indica la compatibilità della versione di Databricks Runtime per i file con rotellina Python per diverse modalità di accesso alle risorse di calcolo in base al percorso di origine della libreria. Consulta la pagina delle versioni delle note sulla versione e la compatibilità di Databricks Runtime e le modalità di accesso.
In Databricks Runtime 15.0 e versioni successive è possibile usare requirements.txt file per gestire le dipendenze di Python. Questi file possono essere caricati su qualsiasi percorso di origine supportato.
Nota
L'installazione dei file egg Python è supportata solo in Databricks Runtime 13.3 LTS e versioni successive e solo per modalità di accesso condiviso dedicate o senza isolamento. Inoltre, non è possibile installare i file egg di Python nei volumi o nei file dell'area di lavoro. Usare invece i file Wheel di Python o installare pacchetti da PyPI.
Modalità di accesso standard | Modalità di accesso dedicato | Modalità di accesso condiviso senza isolamento (legacy) | |
---|---|---|---|
PyPI | 13.3 LTS e versioni successive | Tutte le versioni supportate di Databricks Runtime | Tutte le versioni supportate di Databricks Runtime |
File dell'area di lavoro | 13.3 LTS e versioni successive | 13.3 LTS e versioni successive | 14.1 e versioni successive |
volumi | 13.3 LTS e versioni successive | 13.3 LTS e versioni successive | Non supportato |
Archiviazione nel cloud | 13.3 LTS e versioni successive | Tutte le versioni supportate di Databricks Runtime | Tutte le versioni supportate di Databricks Runtime |
DBFS (scelta non consigliata) | Non supportato | 14.3 e inferiori | 14.3 e inferiori |
Supporto della libreria Java e Scala
La tabella seguente indica la compatibilità della versione di Databricks Runtime per i file JAR per diverse modalità di accesso alle risorse di calcolo in base al percorso di origine della libreria. Consulta la pagina delle versioni delle note sulla versione e la compatibilità di Databricks Runtime e le modalità di accesso.
Per informazioni dettagliate su come distribuire file JAR Scala in un cluster abilitato per il catalogo Unity in modalità di accesso standard, vedere Distribuire jar Scala nei cluster del catalogo Unity. Si noti che nei cluster standard di Unity Catalog le classi nelle librerie JAR devono trovarsi in un pacchetto denominato, ad esempio com.databricks.MyClass
, o si verificheranno errori durante l'importazione della libreria.
Nota
La modalità di accesso standard richiede che un amministratore aggiunga le coordinate e i percorsi di Maven per le librerie JAR a un allowlist
. Vedere librerie lista consentita e script di inizializzazione sulle risorse di calcolo con modalità di accesso standard (in precedenza modalità di accesso condiviso).
Modalità di accesso standard | Modalità di accesso dedicato | Modalità di accesso condiviso senza isolamento (legacy) | |
---|---|---|---|
Intenditore | 13.3 LTS e versioni successive | Tutte le versioni supportate di Databricks Runtime | Tutte le versioni supportate di Databricks Runtime |
File dell'area di lavoro | Non supportato | Non supportato | 14.1 e versioni successive |
volumi | 13.3 LTS e versioni successive | 13.3 LTS e versioni successive | Non supportato |
Archiviazione nel cloud | 13.3 LTS e versioni successive | Tutte le versioni supportate di Databricks Runtime | Tutte le versioni supportate di Databricks Runtime |
DBFS (scelta non consigliata) | Non supportato | 14.3 e inferiori | 14.3 e inferiori |
Supporto della libreria R
La tabella seguente indica la compatibilità della versione di Databricks Runtime per i pacchetti CRAN per diverse modalità di accesso alle risorse di calcolo. Consulta la pagina delle versioni delle note sulla versione e la compatibilità di Databricks Runtime e le modalità di accesso.
Modalità di accesso standard | Modalità di accesso dedicato | Modalità di accesso condiviso senza isolamento (legacy) | |
---|---|---|---|
CRAN | Non supportato | Tutte le versioni supportate di Databricks Runtime | Tutte le versioni supportate di Databricks Runtime |
Identità del programma di installazione
Quando si installa una libreria dai file dell'area di lavoro o dai volumi del catalogo Unity, è possibile associare un'identità all'installazione a seconda della modalità di accesso alle risorse di calcolo. L'identità deve avere diritti di lettura sul file della libreria.
Modalità di accesso standard | Modalità di accesso dedicato | Modalità di accesso condiviso senza isolamento (legacy) |
---|---|---|
Identità dell'utente che installa la libreria | Identità del responsabile dedicato | Nessuna identità |
Librerie con ambito specifico per Notebook
Le librerie specifiche per notebook, disponibili per Python e R, consentono di installare librerie e creare un ambiente specifico per una sessione di notebook. Queste librerie non influiscono su altri notebook in esecuzione nello stesso calcolo. Le librerie con ambito notebook non persistono e devono essere reinstallate per ogni sessione. Utilizzare librerie ad ambito notebook quando è necessario creare un ambiente personalizzato per un determinato notebook.
Nota
Non è possibile installare jar a livello di notebook.
Importante
Le librerie dell'area di lavoro sono deprecate e non devono essere usate. Vedere Librerie dell'area di lavoro (legacy). Tuttavia, l'archiviazione delle librerie come file dell'area di lavoro è distinta dalle librerie dell'area di lavoro ed è ancora completamente supportata. È possibile installare le librerie archiviate come file dell'area di lavoro direttamente nelle attività di calcolo o di lavoro.
Gestione dell'ambiente Python
La tabella seguente offre una panoramica delle opzioni che è possibile usare per installare le librerie Python in Azure Databricks.
Nota
-
Contenitori personalizzati che usano un ambiente basato su conda non sono compatibili con le librerie con ambito relativo al notebook e con le librerie computazionali in Databricks Runtime 10.4 LTS e versioni successive. Azure Databricks raccomanda invece di installare le librerie direttamente nell'immagine o di utilizzare gli script di inizializzazione. Per continuare a usare le librerie di calcolo in questi scenari, è possibile impostare la configurazione di Spark
spark.databricks.driverNfs.clusterWidePythonLibsEnabled
sufalse
. Il supporto per la configurazione di Spark verrà rimosso il 31 dicembre 2021 o dopo il 31 dicembre 2021.
Origine dei pacchetti Python | Librerie con ambito specifico per notebook tramite %pip | Librerie delimitate per notebook con file YAML per l'ambiente di base | librerie con ambito di calcolo | Librerie di lavori con l'API lavori |
---|---|---|---|---|
PyPI | Usa %pip install . Vedere l'esempio. |
Aggiungere un nome di pacchetto PyPI a un file YAML dell'ambiente di base. Vedere l'esempio. | Selezionare PyPI come origine. | Aggiungere un nuovo oggetto pypi alle librerie di processi e specificare il campo package . |
Mirror PyPI privato, ad esempio Nexus o Artifactory | Usare %pip install con l'opzione --index-url . La gestione dei segreti è disponibile. Vedere l'esempio. |
Inserire -–index-url in un file YAML di ambiente base. La gestione dei segreti è disponibile. Vedere l'esempio. |
Non supportato. | Non supportato. |
VCS, ad esempio GitHub, con codice sorgente grezzo | Usare %pip install e specificare l'URL del repository come nome del pacchetto. Vedere l'esempio. |
Aggiungere un URL del repository come nome del pacchetto a un file YAML dell'ambiente di base. Vedere l'esempio. | Selezionare PyPI come di origine e specificare l'URL del repository come nome del pacchetto. | Aggiungere un nuovo oggetto pypi alle librerie di processi e specificare l'URL del repository nel campo package . |
VCS privato con sorgente RAW | Usare %pip install e specificare l'URL del repository con autenticazione di base come nome del pacchetto. La gestione dei segreti è disponibile. Vedere l'esempio. |
Aggiungere un repository con autenticazione di base come nome del pacchetto a un file YAML dell'ambiente di base. Vedere l'esempio. | Non supportato. | Non supportato. |
Percorso del file | Usa %pip install . Vedere l'esempio. |
Aggiungere un percorso di file come nome del pacchetto a un file YAML dell'ambiente di base. Vedere l'esempio. | Selezionare percorso file o ADLS come origine. | Aggiungere un nuovo egg o whl oggetto alle librerie dei processi e specificare il percorso del file come campo package . |
Azure Data Lake Storage | Usare %pip install insieme a un URL prefirmato. I percorsi con il protocollo di Azure Data Lake Storage abfss:// non sono supportati. |
Aggiungere un URL prefirmato come nome del pacchetto a un file YAML dell'ambiente di base. I percorsi con il protocollo di Azure Data Lake Storage abfss:// non sono supportati. |
Selezionare percorso file o ADLS come origine. | Aggiungere un nuovo oggetto egg o whl alle librerie di processi e specificare il percorso di Azure Data Lake Storage come campo package . |
Precedenza della libreria Python
Potrebbe verificarsi una situazione in cui è necessario eseguire l'override della versione per una libreria predefinita o avere una libreria personalizzata in conflitto nel nome con un'altra libreria installata nella risorsa di calcolo. Quando si esegue import <library>
, la libreria con precedenza elevata viene importata.
Importante
Le librerie archiviate nei file dell'area di lavoro hanno precedenza diversa a seconda della modalità di aggiunta a Python sys.path
. Una cartella Git di Databricks aggiunge la directory di lavoro corrente al percorso prima di tutte le altre librerie, mentre i notebook esterni alle cartelle Git aggiungono la directory di lavoro corrente dopo l'installazione di altre librerie. Se si aggiungono manualmente le directory dell'area di lavoro al percorso, queste hanno sempre la precedenza più bassa.
Nell'elenco seguente la precedenza degli ordini viene eseguita dal più alto al più basso. In questo elenco un numero inferiore indica una precedenza più alta.
- Librerie nella cartella di lavoro corrente (solo cartelle Git).
- Le librerie nella directory radice della cartella Git (solo cartelle Git).
- Librerie con scopo notebook (
%pip install
nei notebook). - Librerie con ambito di calcolo (usando l'interfaccia utente, l'interfaccia della riga di comando o l'API).
- Librerie incluse in Databricks Runtime.
- Le librerie installate con script init possono essere risolte prima o dopo le librerie predefinite, a seconda della modalità di installazione. Databricks non consiglia di installare librerie con script init.
- Librerie nella directory di lavoro corrente (non nelle cartelle Git).
- File dello spazio di lavoro aggiunti a
sys.path
.