Raccomandazioni per i file nei volumi e nei file dell'area di lavoro
Quando si caricano o si salvano file o dati in Azure Databricks, è possibile scegliere di archiviare questi file usando i volumi o i file dell'area di lavoro di Unity Catalog. Questo articolo contiene raccomandazioni e requisiti per l'uso di queste posizioni. Per altre informazioni sui volumi e sui file dell'area di lavoro, vedere Che cosa sono i volumi di Unity Catalog? e Che cosa sono i file dell'area di lavoro?.
Databricks consiglia di usare volumi di Unity Catalog per archiviare dati, librerie e artefatti di compilazione. Archiviare notebook, query SQL e file di codice come file dell'area di lavoro. È possibile configurare le directory dei file dell'area di lavoro come cartelle Git da sincronizzare con i repository Git remoti. Si veda Integrazione git per le cartelle Git di Databricks. I file di dati di piccole dimensioni usati per gli scenari di test possono anche essere archiviati come file dell'area di lavoro.
Le seguenti tabelle riportano raccomandazioni specifiche per i file, a seconda del tipo di file o delle esigenze di funzionalità.
Importante
Databricks File System (DBFS) è disponibile anche per l'archiviazione file, ma non è consigliabile, perché tutti gli utenti dell'area di lavoro hanno accesso ai file in DBFS. Vedere DBFS.
Tipi di file
La seguente tabella riporta le raccomandazioni di archiviazione per i tipi di file. Databricks supporta molti formati di file oltre a quanto indicato in questa tabella come esempi.
Tipo di file | Elemento consigliato |
---|---|
Oggetti Databricks, ad esempio notebook e query | Archiviare come file dell'area di lavoro |
File di dati strutturati, ad esempio file Parquet e file ORC | Archiviare nei volumi di Unity Catalog |
File di dati semistrutturati, ad esempio file di testo (.csv , .txt ) e file JSON (.json ) |
Archiviare nei volumi di Unity Catalog |
File di dati non strutturati, ad esempio file di immagine (.png , .svg ), file audio (.mp3 ) e file di documento (.pdf , .docx ) |
Archiviare nei volumi di Unity Catalog |
File di dati non elaborati usati per l'esplorazione dei dati ad hoc o anticipata | Archiviare nei volumi di Unity Catalog |
Dati operativi, ad esempio file di log | Archiviare nei volumi di Unity Catalog |
File di archivio di grandi dimensioni, ad esempio file ZIP (.zip ) |
Archiviare nei volumi di Unity Catalog |
File di codice sorgente, ad esempio file Python (.py ), file Java (.java ) e file Scala (.scala ) |
Archiviare come file dell'area di lavoro, se applicabile, con altri oggetti correlati, ad esempio notebook e query. Databricks consiglia di gestire questi file in una cartella Git per il controllo della versione e il rilevamento delle modifiche di questi file. |
Creare artefatti e librerie, ad esempio wheel Python (.whl ) e file JAR (.jar ) |
Archiviare nei volumi di Unity Catalog |
File di configurazione | Archiviare i file di configurazione necessari nelle aree di lavoro nei volumi di Unity Catalog, ma archiviarli come file dell'area di lavoro se sono file di progetto in una cartella Git. |
Confronto delle funzionalità
La seguente tabella seguente confronta le offerte di funzionalità dei file dell'area di lavoro e dei volumi di Unity Catalog.
Funzionalità | File di area di lavoro | Volumi di Unity Catalog |
---|---|---|
Accesso a file | I file dell'area di lavoro sono reciprocamente accessibili solo all'interno della stessa area di lavoro. | I file sono accessibili a livello globale tra aree di lavoro. |
Accesso programmatico | È possibile accedere ai file usando: - API Spark - FUSE - dbutils - REST API - Databricks-sdk - Interfaccia della riga di comando di Databricks |
È possibile accedere ai file usando: - API Spark - FUSE - dbutils - REST API - Databricks-sdk - Connettore di DataBricks SQL Data Warehouse - Interfaccia della riga di comando di Databricks - Provider Databricks Terraform |
Bundle di asset di Databricks | Per impostazione predefinita, tutti i file in un bundle, che include librerie e oggetti Databricks, ad esempio notebook e query, vengono distribuiti in modo sicuro come file dell'area di lavoro. Le autorizzazioni vengono definite nella configurazione del bundle. | I bundle possono essere personalizzati per includere le librerie già presenti nei volumi quando le librerie superano il limite di dimensioni dei file dell'area di lavoro. Vedere Dipendenze della libreria di aggregazioni di asset di Databricks. |
Livello di autorizzazione file | Le autorizzazioni sono a livello di cartella Git se il file si trova in una cartella Git. In caso contrario, le autorizzazioni vengono impostate a livello di file. | Le autorizzazioni sono a livello di volume. |
Gestione delle autorizzazioni | Le autorizzazioni vengono gestite dagli ACL dell'area di lavoro e sono limitate all'area di lavoro che lo contiene. | I metadati e le autorizzazioni vengono gestiti da Unity Catalog. Queste autorizzazioni sono applicabili in tutte le aree di lavoro che abbiano accesso al catalogo. |
Montaggio dell'archiviazione esterna | Non supporta il montaggio dell'archiviazione esterna | Offre l'opzione per puntare a set di dati preesistenti nell'archiviazione esterna creando un volume esterno. Vedere Che cosa sono i volumi del catalogo Unity?. |
Supporto UDF | Non supportato | La scrittura da funzioni definite dall'utente è supportata con i volumi FUSE |
Dimensioni file | Archiviare file di dimensioni inferiori a 500 MB, ad esempio file di codice sorgente (.py , .md , .yml ) necessari insieme ai notebook. |
Archiviare file di dati di grandi dimensioni a limiti determinati dai provider di servizi cloud. |
Carica & Scarica | Supporto per il caricamento e il download fino a 10 MB. | Supporto per il caricamento e il download fino a 5 GB. |
Supporto per la creazione di tabelle | Le tabelle non possono essere create con i file dell'area di lavoro come percorso. | Le tabelle possono essere create da file in un volume eseguendo COPY INTO , Autoloader o altre opzioni descritte in Inserire dati in un lakehouse di Databricks. |
Struttura di directory e percorsi di file | I file sono organizzati in directory annidate, ognuna con il proprio modello di autorizzazione: - Home directory utente, una per ogni utente e entità servizio nell'area di lavoro - Cartelle Git - Shared |
I file sono organizzati in directory annidate all'interno di un volume Vedere Come è possibile accedere ai dati in Unity Catalog?. |
Cronologia file | Usare la cartella Git all'interno delle aree di lavoro per tenere traccia delle modifiche ai file. | I log di controllo sono disponibili. |