Esercitazione: configurare dbt per Fabric Data Warehouse

Si applica a✅: warehouse in Microsoft Fabric

Questa esercitazione illustra come configurare dbt e distribuire il primo progetto in un'istanza di Fabric Warehouse.

Introduzione

Il framework open source dbt (Strumento di compilazione dati) semplifica la trasformazione dei dati e la progettazione dell'analisi. Si concentra sulle trasformazioni basate su SQL all'interno del livello di analisi, considerando SQL come codice. dbt supporta il controllo della versione, la modularizzazione, il test e la documentazione.

L'adattatore dbt per Microsoft Fabric può essere usato per creare progetti dbt, che possono quindi essere distribuiti in un'istanza di Fabric Synapse Data Warehouse.

È anche possibile modificare la piattaforma di destinazione per il progetto dbt semplicemente modificando l'adattatore, ad esempio; Un progetto creato per il pool SQL dedicato di Azure Synapse può essere aggiornato in pochi secondi a un'istanza di Fabric Synapse Data Warehouse.

Prerequisiti per l'adattatore dbt per Microsoft Fabric

Seguire questo elenco per installare e configurare i prerequisiti dbt:

  1. Python versione 3.7 (o successiva).

  2. Microsoft ODBC Driver for SQL Server.

  3. Versione più recente dell'adattatore dbt-fabric dal repository PyPI (Indice pacchetti Python) usando pip install dbt-fabric.

    pip install dbt-fabric
    

    Nota

    Se si passa da pip install dbt-fabric a pip install dbt-synapse e si utilizzano le istruzioni seguenti, è possibile installare l'adattatore dbt per il pool SQL dedicato di Synapse.

  4. Assicurarsi di verificare che dbt-fabric e le relative dipendenze siano installati tramite il comando pip list:

    pip list
    

    Questo comando deve restituire un lungo elenco dei pacchetti e delle versioni correnti.

  5. Se non si ha già un warehouse, crearne uno. È possibile usare la capacità di valutazione per questo esercizio: iscriversi alla versione di valutazione gratuita di Microsoft Fabric, creare un'area di lavoro e quindi creare un warehouse.

Introduzione all'adattatore dbt-fabric

In questa esercitazione viene usato Visual Studio Code, ma è possibile usare qualsiasi strumento desiderato.

  1. Clonare il progetto demo dbt jaffle_shop nel computer.

    git clone https://github.com/dbt-labs/jaffle_shop.git
    
  2. Aprire la cartella di progetto jaffle_shop in Visual Studio Code.

    Screenshot di Visual Studio Code, che mostra il progetto aperto.

  3. Se è già stato creato un warehouse, è possibile ignorare la registrazione.

  4. Creare un file profiles.yml. Aggiungere la configurazione seguente a profiles.yml: Questo file configura la connessione al warehouse in Microsoft Fabric utilizzando l'adattatore dbt-fabric.

    config:
      partial_parse: true
    jaffle_shop:
      target: fabric-dev
      outputs:    
        fabric-dev:
          authentication: CLI
          database: <put the database name here>
          driver: ODBC Driver 18 for SQL Server
          host: <enter your SQL analytics endpoint here>
          schema: dbo
          threads: 4
          type: fabric
    

    Nota

    Modificare type da fabric a synapse per passare l'adattatore di database ad Azure Synapse Analytics, se necessario. È possibile aggiornare qualsiasi piattaforma dati del progetto dbt esistente modificando l'adattatore di database. Per altre informazioni, vedere l'elenco dbt delle piattaforme dati supportate.

  5. Eseguire l'autenticazione in Azure nel terminale di Visual Studio Code.

  6. A questo punto è possibile effettuare il test di connettività. Per testare la connettività al warehouse, eseguire dbt debug nel terminale di Visual Studio Code.

    dbt debug
    

    Screenshot di Visual Studio Code che mostra il comando di debug dbt.

    Tutti i controlli vengono passati, il che significa che è possibile connettere il warehouse usando l'adattatore dbt-fabric dal progetto dbt jaffle_shop.

  7. È ora possibile verificare se l'adattatore funziona o meno. Per prima cosa, eseguire dbt seed per inserire dati campione nel warehouse.

    Screenshot di Visual Studio Code che mostra un comando dbt seed.

  8. Eseguire dbt run per convalidare i dati in base ad alcuni test.

    dbt run
    

    Screenshot di Visual Studio Code che mostra un comando di esecuzione dbt.

  9. Eseguire dbt test per eseguire i modelli definiti nel progetto demo dbt.

    dbt test
    

    Screenshot di Visual Studio Code che mostra un comando dbt test.

A questo punto, è stato distribuito un progetto dbt in Synapse Data Warehouse in Fabric.

Spostarsi tra warehouse differenti

È semplice spostare il progetto dbt tra warehouse differenti. È possibile eseguire rapidamente la migrazione di un progetto dbt a qualsiasi warehouse supportato utilizzando questo processo in tre passaggi:

  1. Installare il nuovo adattatore. Per altre informazioni e per istruzioni di installazione completa, vedere adattatori dbt.

  2. Aggiornare la proprietà type nel file profiles.yml.

  3. Compilare il progetto.

dbt nella Data Factory di Fabric

Se integrato con Apache Airflow, un sistema di gestione dei flussi di lavoro diffuso, dbt diventa uno strumento potente per orchestrare le trasformazioni dei dati. Le funzionalità di pianificazione e gestione attività di Airflow consentono ai team di dati di automatizzare le esecuzioni dbt. Garantisce aggiornamenti regolari dei dati e mantiene un flusso coerente di dati di alta qualità per l'analisi e la creazione di report. Questo approccio combinato, usando l'esperienza di trasformazione di dbt con la gestione flussi di lavoro di Airflow, offre pipeline di dati efficienti e solidi, portando infine a decisioni più rapide e dettagliate basate sui dati.

Apache Airflow è una piattaforma open source utilizzata per creare, pianificare e monitorare flussi di lavoro di dati complessi a livello di programmazione. Consente di definire un set di attività, denominate operatori, che possono essere combinate in grafi diretti aciclici (DAG) per rappresentare le pipeline di dati.

Per altre informazioni sull'operazionalizzazione di dbt con il warehouse, vedere Trasformare i dati usando dbt con Data Factory in Microsoft Fabric.

Considerazioni

Aspetti importanti da considerare quando si usa l'adattatore dbt-fabric:

  • Esaminare le limitazioni correnti del data warehousing di Microsoft Fabric.

  • Fabric supporta l'autenticazione di Microsoft Entra ID (in precedenza Azure Active Directory) per le entità utente, le identità utente e le entità servizio. La modalità di autenticazione consigliata per lavorare in modo interattivo nel warehouse è l'interfaccia della riga di comando e l'uso delle entità servizio per l'automazione.

  • Esaminare i comandi T-SQL (Transact-SQL) non supportati in Synapse Data Warehouse in Microsoft Fabric.

  • Alcuni comandi T-SQL sono supportati dall'adapter dbt-fabric usando i comandi Create Table as Select (CTAS), DROP e CREATE, ad esempio ALTER TABLE ADD/ALTER/DROP COLUMN, MERGE, TRUNCATE, sp_rename.

  • Vedere Tipi di dati non supportati per informazioni sui tipi di dati supportati e non supportati.

  • È possibile rilevare i problemi nell'adattatore dbt-fabric in GitHub visitando Problemi · microsoft/dbt-fabric · GitHub.

Passaggio successivo