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.
Azure Databricks offre due modi per creare viste materializzate e tabelle di streaming: pipeline autonome o pipeline di Lakeflow. Entrambi vengono eseguiti nello stesso motore dichiarativo e producono tabelle gestite del catalogo Unity. La differenza sta in quanta parte della pipeline progetti e gestisci.
- Una vista materializzata autonoma o una tabella di streaming è un singolo set di dati definito con la sintassi SQL. Azure Databricks crea e gestisce una pipeline in background per aggiornarla. È possibile creare e aggiornare set di dati autonomi da un databricks SQL warehouse o da un notebook in un ambiente di calcolo generale serverless usando
spark.sql(). Vedere Pipeline autonome. - Una pipeline Lakeflow è una pipeline che progetti e gestisci come un'unica unità. Può contenere molti set di dati, in SQL e Python, con orchestrazione delle dipendenze, derivazione e funzionalità operative a livello di pipeline. Vedere Che cosa sono le pipeline?.
Quando crei una vista materializzata autonoma o una tabella di streaming autonoma, la pipeline gestita viene visualizzata nella pagina Processi e pipeline con un tipo di pipeline MV/ST. I set di dati definiti in una pipeline Lakeflow hanno un tipo di pipeline pari a ETL.
Quando usare una pipeline autonoma
Usare viste materializzate autonome e tabelle di streaming quando:
- È possibile accelerare le query o trasformare i dati con una singola vista materializzata o tabella di streaming.
- Puoi lavorare da un warehouse SQL di Databricks, dall'editor SQL o da un notebook su calcolo generico serverless e pianificare gli aggiornamenti con
SCHEDULE,TRIGGER ON UPDATEo un'attività SQL in un job. - Non sono necessari sink, orchestrazione a più fasi o altre funzionalità di sola pipeline.
Quando usare una pipeline Lakeflow
Utilizza una pipeline Lakeflow quando:
- Si crea una pipeline a più fasi con set di dati intermedi, in cui Azure Databricks gestisce le dipendenze e la derivazione tra i set di dati. I set di dati intermedi possono essere pubblicati nel catalogo o mantenuti privati nella pipeline.
- È possibile creare tabelle e flussi in Python.
- Si scrive in tabelle Delta esterne o in destinazioni di streaming di eventi usando i sink (
create_sink()oforeach_batch_sink()). - È possibile applicare Change Data Capture da uno snapshot del database usando
create_auto_cdc_from_snapshot_flow(). - Si desidera un'esecuzione attivata da trigger o continua in tutta la pipeline.
Confronto
| Property | Tabella di streaming autonoma o vista materializzata | Tabella di streaming della pipeline o vista materializzata |
|---|---|---|
| Interfaccia di creazione | Sintassi SQL, da un warehouse SQL di Databricks o con spark.sql() in un notebook su elaborazione serverless per uso generico |
SQL e Python |
| Scope | Un set di dati, in una pipeline che Azure Databricks gestisce automaticamente | Molti set di dati in una pipeline, con orchestrazione e derivazione delle dipendenze |
| Esecuzione | Attivato, con SCHEDULE, TRIGGER ON UPDATE, o un'attività SQL |
Attivato o continuo |
| Funzionalità esclusive della pipeline | Sink, create_auto_cdc_from_snapshot_flow(), set di dati privati |
|
| Etichetta del tipo di pipeline | MV/ST |
ETL |
| Passare da una pipeline all'altra | Non supportata; ricreare la tabella nella pipeline di destinazione | Supported |