Condividi tramite


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.

Diagramma del modello a oggetti del catalogo Unity, incentrato sulla tabella

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