Funzionamento di Azure Data Factory

Completato

Di seguito verranno illustrati i componenti e i sistemi interconnessi di Azure Data Factory. Verrà anche illustrato il funzionamento del servizio. Ciò consente di determinare come usare al meglio Azure Data Factory per soddisfare i requisiti dell'organizzazione.

Azure Data Factory è una raccolta di sistemi interconnessi che si combinano per offrire una piattaforma di analisi dei dati end-to-end. In questa unità si apprenderanno le seguenti funzioni di Azure Data Factory:

  • Connettersi e raccogliere
  • Trasformare e arricchire
  • Integrazione continua e recapito continuo (CI/CD) e pubblicazione
  • Monitoraggio

Si apprenderanno anche i componenti chiave di Azure Data Factory. Si tratta di:

  • Pipeline
  • Attività
  • Set di dati
  • Servizi collegati
  • Flussi di dati
  • Runtime di integrazione

Funzioni di Azure Data Factory

Azure Data Factory include diverse funzioni che si combinano per mettere a disposizione dei data engineer una piattaforma di analisi dei dati completa.

Connettersi e raccogliere

La prima parte del processo è raccogliere i dati necessari dalle origini dati appropriate, che possono trovarsi in posizioni diverse, tra cui origini locali e nel cloud. I dati possono essere:

  • dati strutturati
  • Non strutturato
  • dati semistrutturati

Inoltre, questi dati eterogenei potrebbero arrivare a velocità e intervalli diversi. Con Azure Data Factory, è possibile usare l'attività di copia per spostare i dati da diverse origini a un unico archivio dati centralizzato nel cloud. Dopo aver copiato i dati, è possibile usare altri sistemi per trasformarli e analizzarli.

L'attività di copia esegue i seguenti passaggi generali:

  1. Leggere i dati dall'archivio dati di origine.

  2. Eseguire le attività seguenti sui dati:

    • Serializzazione/deserializzazione
    • Compressione/decompressione
    • Mapping delle colonne

    Nota

    Potrebbero essere previste attività aggiuntive.

  3. Scrivere dati nell'archivio dati di destinazione (noto come sink).

Questo processo è illustrato in sintesi nella figura seguente:

Graphic that depicts the preceding process.

Trasformare e arricchire

Dopo aver copiato correttamente i dati in una posizione centrale basata sul cloud, è possibile elaborare e trasformare i dati in base alle esigenze. A tale scopo, si userà Azure Data Factory per il mapping dei flussi di dati. I flussi di dati consentono di creare i grafi di trasformazione dei dati eseguiti in Spark. Tuttavia, non è necessario comprendere i cluster Spark o la programmazione Spark.

Suggerimento

Anche se non è necessario, può essere preferibile codificare manualmente le trasformazioni. In questo caso, Azure Data Factory supporta le attività esterne per l'esecuzione delle trasformazioni.

CI/CD e pubblicazione

Il supporto per CI/CD consente di sviluppare e distribuire i processi ETL in modo incrementale prima della pubblicazione. Azure Data Factory offre il processo CI/CD delle pipeline di dati usando:

  • Azure DevOps
  • GitHub

Nota

Integrazione continua è significa testare automaticamente ogni modifica apportata alla codebase non appena possibile. Subito dopo il test, il recapito continuo esegue il push delle modifiche a un sistema di gestione temporanea o produzione.

Dopo che Azure Data Factory ha perfezionato i dati non elaborati, è possibile caricare i dati in qualsiasi motore di analisi a cui gli utenti aziendali possono accedere dai propri strumenti di business intelligence, tra cui:

  • Azure Synapse Analytics
  • Database SQL di Azure
  • Azure Cosmos DB

Monitoraggio

Dopo aver compilato e distribuito correttamente la pipeline di integrazione dei dati, è importante monitorare le attività e le pipeline pianificate. In questo modo è possibile tenere traccia delle percentuali di esito positivo e negativo. Azure Data Factory offre il supporto per il monitoraggio delle pipeline usando uno degli elementi seguenti:

  • Monitoraggio di Azure
  • API
  • PowerShell
  • Log di Monitoraggio di Azure
  • Pannelli di integrità nel portale di Azure

Componenti di Azure Data Factory

Azure Data Factory è costituito dai componenti descritti nella tabella seguente:

Componente Descrizione
Pipeline Raggruppamento logico di attività che eseguono un'unità di lavoro specifica. Queste attività insieme svolgono un "task". Il vantaggio dell'uso di una pipeline è che è possibile gestire più facilmente le attività come set anziché come singoli elementi.
Attività Singolo passaggio di elaborazione in una pipeline. Azure Data Factory supporta tre tipi di attività: attività di spostamento dei dati, attività di trasformazione dei dati e attività di controllo.
Set di dati Rappresenta le strutture di dati all'interno degli archivi dati. Queste strutture puntano o fanno riferimento ai dati che si prevede di usare nelle attività come input o output.
Servizi collegati Definire le informazioni di connessione necessarie per Azure Data Factory per connettersi alle risorse esterne, ad esempio un'origine dati. Azure Data Factory le usa per due scopi: per rappresentare un archivio dati o una risorsa di calcolo.
Flussi di dati Consentire ai data engineer di sviluppare la logica di trasformazione dei dati senza dover scrivere codice. I flussi di dati vengono eseguiti come attività all'interno delle pipeline di Azure Data Factory che usano i cluster Apache Spark con scale-out.
Runtime di integrazione Azure Data Factory usa l'infrastruttura di calcolo per offrire le seguenti funzionalità di integrazione dei dati in diversi ambienti di rete: flusso di dati, spostamento dati, distribuzione di attività ed esecuzione di pacchetti SSIS. In Azure Data Factory un runtime di integrazione funge da bridge tra l'attività e i servizi collegati.

Come indicato nella figura seguente, questi componenti lavorano insieme per offrire una piattaforma end-to-end completa per i data engineer. Usando Data Factory, è possibile:

  • Impostare i trigger su richiesta e pianificare l'elaborazione dei dati in base alle esigenze.
  • Associare una pipeline a un trigger o avviarla manualmente come e quando necessario.
  • Connettersi ai servizi collegati, ad esempio app e dati locali, o ai servizi di Azure usando i runtime di integrazione.
  • Monitorare tutte le esecuzioni della pipeline in modo nativo nell'esperienza utente di Azure Data Factory o usando Monitoraggio di Azure.

Graphic that depicts the interaction of the components described in the preceding table.