Che cosa sono tabelle e viste?
Le tabelle e le viste sono concetti fondamentali in Databricks per organizzare e accedere ai dati.
Una tabella è un set di dati strutturato archiviato in una posizione specifica, in genere in formato Delta Lake. Le tabelle archiviano i dati effettivi nell'archiviazione e possono essere sottoposte a query e modificate usando comandi SQL o API dataframe, supportando operazioni come inserimento, aggiornamento, eliminazione e unione. Vedere Che cos'è una tabella?.
Una vista è una tabella virtuale definita da una query SQL. Una vista non archivia i dati. Una vista consente invece di presentare dati da una o più tabelle in un formato o un'astrazione specifici. Le viste sono utili per semplificare query complesse, incapsulare la logica di business e fornire un'interfaccia coerente ai dati sottostanti senza duplicare l'archiviazione. Vedere Che cos'è una visualizzazione?.
Tabelle e viste in Unity Catalog
Le tabelle e le viste vengono regolate usando il catalogo unity. Nel catalogo unity le tabelle e le viste si trovano al terzo livello dello spazio dei nomi a tre livelli (catalog.schema.table), come illustrato nel diagramma seguente.
Differenze tra tabelle Delta, tabelle di streaming e viste materializzate
La tabella seguente risponde alle domande frequenti sulle differenze tra tabelle Delta, tabelle di streaming e viste materializzate.
Domanda | Tabella Delta | ST | MV |
---|---|---|---|
Che cos'è? | Tabelle standard archiviate nel formato Delta Lake, che supportano transazioni ACID, imposizione dello schema e altre funzionalità di Delta Lake. | Tabella Delta regolare estesa per i casi d'uso di elaborazione incrementale e di streaming. | Risultato di una query il cui risultato è sempre precalcorato e corretto. |
Quali casi d'uso è consigliabile? | Codice procedurale che esegue le operazioni seguenti: -Ingestione -Trasformazione |
Codice dichiarativo che esegue le operazioni seguenti: - Inserimento da origini di sola accodamento - Trasformazioni a bassa latenza |
Codice dichiarativo che esegue le operazioni seguenti: - Trasformazioni incrementali - Trasformazioni batch |
Come viene popolato? | Codice procedurale (INSERT , UPDATE , MERGE , sovrascrivere la partizione usando replaceWhere ) |
Codice dichiarativo, tra cui: - Accoda flussi - APPLICA FLUSSI DI MODIFICHE - Una volta terminata la flusso |
Query dichiarative |
Qual è il tipo di oggetto in Unity Catalog? | Tabella | Tabella | Vista |
Chi può aggiornarlo? | Qualsiasi writer in grado di aggiornare una tabella Delta. | Solo la pipeline che definisce la tabella di streaming può aggiornarla. | Solo la pipeline che definisce la vista materializzata può aggiornarla. |
Quali funzionalità di Delta Lake sono compatibili con? | Supporta tutte le funzionalità di Delta Lake. | Non supporta: - Partizionamento liquido - Ottimizzazione predittiva |
Non supporta: - Partizionamento liquido - Ottimizzazione predittiva |