Share via


Trasformare i dati in modo sicuro usando il flusso di dati di mapping

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi completa per le aziende. Microsoft Fabric copre tutti gli elementi, dallo spostamento dei dati all'analisi scientifica dei dati, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Scopri come avviare gratuitamente una nuova versione di valutazione .

Se non si ha familiarità con Azure Data Factory, vedere Introduzione ad Azure Data Factory.

In questa esercitazione si userà l'interfaccia utente di Data Factory per creare una pipeline che copia e trasforma i dati da un'origine Azure Data Lake Archiviazione Gen2 a un sink Data Lake Archiviazione Gen2 (che consente l'accesso solo alle reti selezionate) usando il flusso di dati di mapping in Data Factory Managed Rete virtuale. È possibile espandere il modello di configurazione in questa esercitazione quando si trasformano i dati usando il flusso di dati di mapping.

In questa esercitazione vengono completati i passaggi seguenti:

  • Creare una data factory.
  • Creare una pipeline con un'attività del flusso di dati.
  • Creare un flusso di dati di mapping con quattro trasformazioni.
  • Eseguire test della pipeline.
  • Monitorare un'attività del flusso di dati.

Prerequisiti

  • Sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.
  • Account di archiviazione di Azure. È possibile usare Data Lake Archiviazione come archivi dati di origine e sink. Se non si ha un account di archiviazione, vedere Creare un account di archiviazione di Azure per informazioni su come crearne uno. Assicurarsi che l'account di archiviazione consenta l'accesso solo da reti selezionate.

Il file che verrà trasformato in questa esercitazione è moviesDB.csv, disponibile in questo sito di contenuto GitHub. Per recuperare il file da GitHub, copiare il contenuto in un editor di testo di propria scelta per salvarlo in locale come file con estensione csv. Per caricare il file nell'account di archiviazione, vedere Caricare BLOB con il portale di Azure. Gli esempi fanno riferimento a un contenitore denominato sample-data.

Creare una data factory

In questo passaggio si crea una data factory e si apre l'interfaccia utente di Data Factory per creare una pipeline nella data factory.

  1. Aprire Microsoft Edge o Google Chrome. L'interfaccia utente di Data Factory è attualmente supportata solo nei Web browser Microsoft Edge e Google Chrome.

  2. Nel menu a sinistra selezionare Crea una risorsa>Analisi>Data factory.

  3. Nella pagina Nuova data factory immettere ADFTutorialDataFactory in Nome.

    Il nome della data factory deve essere univoco a livello globale. Se viene visualizzato un messaggio di errore relativo al valore del nome, immettere un nome diverso per la data factory (ad esempio, nomeADFTutorialDataFactory). Per informazioni sulle regole di denominazione per gli elementi di Data factory, vedere Azure Data factory - Regole di denominazione.

  4. Selezionare la sottoscrizione di Azure in cui creare la data factory.

  5. In Gruppo di risorse eseguire una di queste operazioni:

    • Selezionare Usa esistentee scegliere un gruppo di risorse esistente dall'elenco a discesa.
    • Selezionare Crea nuovoe immettere un nome per il gruppo di risorse.

    Per informazioni sui gruppi di risorse, vedere l'articolo su come usare gruppi di risorse per gestire le risorse di Azure.

  6. In Versione selezionare V2.

  7. In Località selezionare una località per la data factory. Nell'elenco a discesa vengono visualizzate solo le località supportate. Gli archivi dati (ad esempio, Archiviazione di Azure e database SQL di Azure) e i calcoli (ad esempio, Azure HDInsight) usati dalla data factory possono trovarsi in altre aree.

  8. Seleziona Crea.

  9. Al termine della creazione, la relativa notifica verrà visualizzata nel centro notifiche. Selezionare Vai alla risorsa per passare alla pagina Data Factory.

  10. Selezionare Apri Azure Data Factory Studio per avviare l'interfaccia utente di Data Factory in una scheda separata.

Creare un runtime di integrazione di Azure in data factory gestito Rete virtuale

In questo passaggio si crea un runtime di integrazione di Azure e si abilita l'Rete virtuale gestita di Data Factory.

  1. Nel portale di Data Factory passare a Gestisci e selezionare Nuovo per creare un nuovo runtime di integrazione di Azure.

    Screenshot that shows creating a new Azure IR.

  2. Nella pagina Configurazione del runtime di integrazione scegliere il runtime di integrazione da creare in base alle funzionalità necessarie. In questa esercitazione selezionare Azure, Self-Hosted e quindi fare clic su Continua.

  3. Selezionare Azure e quindi fare clic su Continua per creare un runtime di integrazione di Azure.

    Screenshot that shows a new Azure IR.

  4. In Configurazione della rete virtuale (anteprima) selezionare Abilita.

    Screenshot that shows enabling a new Azure IR.

  5. Seleziona Crea.

Creare una pipeline con un'attività del flusso di dati

In questo passaggio si creerà una pipeline che contiene un'attività del flusso di dati.

  1. Nella home page di Azure Data Factory selezionare Orchestrate .On the home page of Azure Data Factory, select Orchestrate.

    Screenshot that shows the data factory home page with the Orchestrate button highlighted.

  2. Nel riquadro delle proprietà per la pipeline immettere TransformMovies come nome della pipeline.

  3. Nel riquadro Attività espandere Sposta e trasforma. Trascinare l'attività Flusso di dati dal riquadro all'area di disegno della pipeline.

  4. Nella finestra popup Aggiunta del flusso di dati selezionare Crea nuovo flusso di dati e quindi selezionare Mapping Flusso di dati. Al termine, selezionare OK .

    Screenshot that shows Mapping Data Flow.

  5. Assegnare al flusso di dati il nome TransformMovies nel riquadro delle proprietà.

  6. Nella barra superiore dell'area di disegno pipeline scorrere il dispositivo di scorrimento Flusso di dati debug. La modalità di debug consente il test interattivo della logica di trasformazione in un cluster Spark attivo. Flusso di dati i cluster richiedono 5-7 minuti e gli utenti sono consigliati per attivare il debug prima se prevedono di eseguire Flusso di dati sviluppo. Per altre informazioni, vedere Modalità di debug.

    Screenshot that shows the Data flow debug slider.

Compilare la logica di trasformazione nell'area di disegno del flusso di dati

Dopo aver creato il flusso di dati, si verrà inviati automaticamente all'area di disegno del flusso di dati. In questo passaggio si creerà un flusso di dati che accetta il file moviesDB.csv in Data Lake Archiviazione e aggrega la valutazione media delle commedie dal 1910 al 2000. Si scriverà quindi di nuovo questo file in Data Lake Archiviazione.

Aggiungere la trasformazione di origine

In questo passaggio si configura Data Lake Archiviazione Gen2 come origine.

  1. Nell'area di disegno flusso di dati aggiungere un'origine selezionando la casella Aggiungi origine .

  2. Assegnare all'origine il nome MoviesDB. Selezionare Nuovo per creare un nuovo set di dati di origine.

  3. Selezionare Azure Data Lake Archiviazione Gen2 e quindi continua.

  4. Selezionare DelimitedText e quindi continua.

  5. Assegnare al set di dati il nome MoviesDB. Nell'elenco a discesa servizio collegato selezionare Nuovo.

  6. Nella schermata di creazione del servizio collegato assegnare un nome adLSGen2 al servizio collegato Data Lake Archiviazione Gen2 e specificare il metodo di autenticazione. Immettere quindi le credenziali di connessione. In questa esercitazione si usa la chiave dell'account per connettersi all'account di archiviazione.

  7. Assicurarsi di abilitare Creazione interattiva. L'abilitazione potrebbe richiedere alcuni minuti.

    Screenshot that shows Interactive authoring.

  8. Selezionare Test connessione. L'operazione non riesce perché l'account di archiviazione non abilita l'accesso senza la creazione e l'approvazione di un endpoint privato. Nel messaggio di errore verrà visualizzato un collegamento che è possibile seguire per creare un endpoint privato gestito. Un'alternativa consiste nel passare direttamente alla scheda Gestisci e seguire le istruzioni in questa sezione per creare un endpoint privato gestito.

  9. Tenere aperta la finestra di dialogo e quindi passare all'account di archiviazione.

  10. Seguire le istruzioni riportate in questa sezione per approvare il collegamento privato.

  11. Tornare nella finestra di dialogo. Selezionare di nuovo Test connessione e selezionare Crea per distribuire il servizio collegato.

  12. Nella schermata di creazione del set di dati immettere dove si trova il file nel campo Percorso file. In questa esercitazione il file moviesDB.csv si trova nel contenitore sample-data. Poiché il file include intestazioni, selezionare la casella di controllo Prima riga come intestazione . Selezionare Da connessione/archivio per importare lo schema di intestazione direttamente dal file nell'archiviazione. Al termine, selezionare OK .

    Screenshot that shows the source path.

  13. Se il cluster di debug è stato avviato, passare alla scheda Anteprima dati della trasformazione origine e selezionare Aggiorna per ottenere uno snapshot dei dati. È possibile usare l'anteprima dei dati per verificare che la trasformazione sia configurata correttamente.

    Screenshot that shows the Data Preview tab.

Creare un endpoint privato gestito

Se non è stato usato il collegamento ipertestuale quando è stata testata la connessione precedente, seguire il percorso. A questo punto è necessario creare un endpoint privato gestito che verrà connesso al servizio collegato creato.

  1. Passare alla scheda Gestisci.

    Nota

    La scheda Gestisci potrebbe non essere disponibile per tutte le istanze di Data Factory. Se non viene visualizzata, è possibile accedere agli endpoint privati selezionando Autore>Connessioni >Endpoint privato.

  2. Passare alla sezione Managed private endpoints (Endpoint privati gestiti).

  3. Selezionare + Nuovo in Managed private endpoints (Endpoint privati gestiti).

    Screenshot that shows the Managed private endpoints New button.

  4. Selezionare il riquadro Azure Data Lake Archiviazione Gen2 dall'elenco e selezionare Continua.

  5. Immettere il nome dell'account di archiviazione creato.

  6. Seleziona Crea.

  7. Dopo alcuni secondi si noterà che il collegamento privato creato necessita dell'approvazione.

  8. Selezionare l'endpoint privato creato. Verrà visualizzato un collegamento ipertestuale, seguendo il quale sarà possibile approvare l'endpoint privato a livello di account di archiviazione.

    Screenshot that shows the Manage private endpoint pane.

  1. Nell'account di archiviazione passare a Connessioni a endpoint privato nella sezione Impostazioni.

  2. Selezionare la casella di controllo in base all'endpoint privato creato e selezionare Approva.

    Screenshot that shows the private endpoint Approve button.

  3. Aggiungere una descrizione e selezionare .

  4. Tornare nella sezione Managed private endpoints (Gestisci endpoint privati) della scheda Gestisci in Data Factory.

  5. Dopo circa un minuto, verrà visualizzata l'approvazione per l'endpoint privato.

Aggiungere la trasformazione filtro

  1. Accanto al nodo di origine nell'area di disegno del flusso di dati, selezionare l'icona con il segno più per aggiungere una nuova trasformazione. La prima trasformazione che verrà aggiunta è un filtro.

    Screenshot that shows adding a filter.

  2. Denominare la trasformazione filtro FilterYears. Selezionare la casella dell'espressione accanto a Filtra per aprire il generatore di espressioni. Qui si specificherà la condizione di filtro.

    Screenshot that shows FilterYears.

  3. Il generatore di espressioni del flusso di dati consente di compilare in modo interattivo espressioni da usare in varie trasformazioni. Le espressioni possono includere funzioni predefinite, colonne dello schema di input e parametri definiti dall'utente. Per altre informazioni su come compilare espressioni, vedere Generatore di espressioni del flusso di dati.

    • In questa esercitazione si vogliono filtrare i film nel genere commedia che è uscito tra gli anni 1910 e 2000. Poiché l'anno è attualmente una stringa, è necessario convertirlo in un numero intero usando la toInteger() funzione . Usare gli operatori maggiori o uguali a (>=) e minori o uguali a (<=) per confrontare i valori letterali dell'anno 1910 e 2000. Unire queste espressioni con l'operatore e (&&). L'espressione viene restituita come segue:

      toInteger(year) >= 1910 && toInteger(year) <= 2000

    • Per trovare quali film sono commedie, è possibile usare la rlike() funzione per trovare il modello 'Comedy' nei generi di colonna. Unire l'espressione con il confronto dell'anno rlike per ottenere:

      toInteger(year) >= 1910 && toInteger(year) <= 2000 && rlike(genres, 'Comedy')

    • Se è attivo un cluster di debug, è possibile verificare la logica selezionando Aggiorna per visualizzare l'output dell'espressione rispetto agli input usati. Esiste più di una risposta corretta su come eseguire questa logica usando il linguaggio delle espressioni del flusso di dati.

      Screenshot that shows the filter expression.

    • Selezionare Salva e terminare al termine dell'espressione.

  4. Recuperare un'anteprima dei dati per verificare che il filtro funzioni correttamente.

    Screenshot that shows the filtered Data Preview.

Aggiungere la trasformazione di aggregazione

  1. La trasformazione successiva che si aggiungerà è una trasformazione Aggregazione in Modificatore dello schema.

    Screenshot that shows adding the aggregate.

  2. Assegnare un nome alla trasformazione di aggregazione AggregateComedyRating. Nella scheda Raggruppa per selezionare anno dalla casella di riepilogo a discesa per raggruppare le aggregazioni in base all'anno in cui è uscito il film.

    Screenshot that shows the aggregate group.

  3. Passare alla scheda Aggregazioni . Nella casella di testo a sinistra denominare la colonna di aggregazione AverageComedyRating. Selezionare la casella dell'espressione destra per immettere l'espressione di aggregazione tramite il generatore di espressioni.

    Screenshot that shows the aggregate column name.

  4. Per ottenere la media della colonna Rating, usare la avg() funzione di aggregazione. Poiché Rating è una stringa e avg() accetta un input numerico, è necessario convertire il valore in un numero tramite la toInteger() funzione . Questa espressione ha un aspetto simile al seguente:

    avg(toInteger(Rating))

  5. Al termine, selezionare Salva e termina .

    Screenshot that shows saving the aggregate.

  6. Passare alla scheda Anteprima dati per visualizzare l'output della trasformazione. Si noti che sono presenti solo due colonne, year e AverageComedyRating.

Aggiungere la trasformazione sink

  1. Successivamente, si vuole aggiungere una trasformazione Sink in Destinazione.

    Screenshot that shows adding a sink.

  2. Assegnare un nome al sink. Selezionare Nuovo per creare il set di dati sink.

    Screenshot that shows creating a sink.

  3. Nella pagina Nuovo set di dati selezionare Azure Data Lake Archiviazione Gen2 e quindi selezionare Continua.

  4. Nella pagina Seleziona formato selezionare DelimitedText e quindi continua.

  5. Denominare il set di dati sink MoviesSink. Per il servizio collegato, scegliere lo stesso servizio collegato ADLSGen2 creato per la trasformazione dell'origine. Immettere una cartella di output in cui scrivere i dati. In questa esercitazione si sta scrivendo nell'output della cartella nel contenitore sample-data. La cartella non deve esistere in anticipo e può essere creata dinamicamente. Selezionare la casella di controllo Prima riga come intestazione e selezionare Nessuno per Importa schema. Seleziona OK.

    Screenshot that shows the sink path.

A questo punto è stata completata la compilazione del flusso di dati. È possibile eseguirlo nella pipeline.

Eseguire e monitorare il flusso di dati

È possibile eseguire il debug di una pipeline prima di pubblicarla. In questo passaggio viene attivata un'esecuzione di debug della pipeline del flusso di dati. Mentre l'anteprima dei dati non scrive dati, un'esecuzione di debug scriverà i dati nella destinazione del sink.

  1. Passare all'area di disegno della pipeline. Selezionare Debug per attivare un'esecuzione di debug.

  2. Il debug della pipeline delle attività del flusso di dati usa il cluster di debug attivo, ma richiede comunque almeno un minuto per inizializzare. È possibile tenere traccia dello stato di avanzamento tramite la scheda Output . Al termine dell'esecuzione, selezionare l'icona degli occhiali per i dettagli dell'esecuzione.

  3. Nella pagina dei dettagli è possibile visualizzare il numero di righe e il tempo impiegato per ogni passaggio di trasformazione.

    Screenshot that shows a monitoring run.

  4. Selezionare una trasformazione per ottenere informazioni dettagliate sulle colonne e sul partizionamento dei dati.

Se questa esercitazione è stata seguita correttamente, è necessario scrivere 83 righe e 2 colonne nella cartella sink. È possibile verificare che i dati siano corretti controllando l'archiviazione BLOB.

Riepilogo

In questa esercitazione è stata usata l'interfaccia utente di Data Factory per creare una pipeline che copia e trasforma i dati da un'origine Data Lake Archiviazione Gen2 a un sink Data Lake Archiviazione Gen2 (che consente l'accesso solo alle reti selezionate) usando il flusso di dati di mapping in Data Factory Managed Rete virtuale.