Condividi tramite


Integrazione dei dati con Azure Data Factory e Condivisione dati di Azure

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi all-in-one per le aziende. Microsoft Fabric copre tutto, dallo spostamento dati al data science, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Vedere le informazioni su come iniziare una nuova prova gratuita!

I clienti che si imbarcano in progetti di data warehouse moderno e di analisi hanno bisogno non solo di più dati ma anche di una maggiore visibilità sugli stessi. Questo workshop illustra come semplificare l'integrazione e la gestione dei dati in Azure con i miglioramenti apportati ad Azure Data Factory e a Condivisione dati di Azure.

Dalla possibilità di eseguire procedure ETL/ELT senza codice alla creazione di una visualizzazione completa dei dati, i miglioramenti di Azure Data Factory consentono agli ingegneri dei dati di introdurre una maggiore quantità di dati, e quindi più valore, nell'azienda. Condivisione dati di Azure rende possibile la condivisione Business to Business in un modo regolamentato.

In questo workshop si usa Azure Data Factory (ADF) per inserire i dati dal database SQL di Azure in Azure Data Lake Storage Gen2 (ADLS Gen2). Una volta inseriti nel data lake, i dati vengono trasformati tramite flussi di dati per mapping, il servizio di trasformazione nativo della data factory, e acquisiti tramite sink in Azure Synapse Analytics. Quindi, la tabella con i dati trasformati, insieme ad alcuni dati aggiuntivi, viene condivisa tramite Condivisione dati di Azure.

I dati usati in questo lab sono relativi ai taxi di New York. Per importarli nel database del database SQL di Azure, scaricare il file bacpac taxi-data. Selezionare l'opzione Scarica file RAW in GitHub.

Prerequisiti

Configurare l'ambiente di Azure Data Factory

Questa sezione illustra come accedere all'esperienza utente di Azure Data Factory (ADF UX) dal portale di Azure. Una volta eseguito l’accesso in ADF UX, si configurano tre servizi collegati per ognuno degli archivi dati in uso: database SQL di Azure, ADLS Gen2 e Azure Synapse Analytics.

Nei servizi collegati di Azure Data Factory, definire le informazioni per la connessione alle risorse esterne. Azure Data Factory attualmente supporta 85 connettori.

Aprire l'esperienza utente di Azure Data Factory

  1. Aprire il portale di Azure in Microsoft Edge o Google Chrome.

  2. Usando la barra di ricerca nella parte superiore della pagina, cercare ''Data factory''.

  3. Selezionare la risorsa del data factory per aprire le relative risorse nel riquadro a sinistra.

    Screenshot del portale di Azure relativo a una pagina di panoramica delle data factory.

  4. Selezionare Apri Azure Data Factory Studio. È anche possibile accedere direttamente a Data Factory Studio all'indirizzo adf.azure.com.

    Screenshot della home page di Azure Data Factory nel portale di Azure.

  5. Si viene reindirizzati alla home page di Azure Data Factory (ADF) nel portale di Azure. Questa pagina contiene argomenti di avvio rapido, video di istruzioni e collegamenti a esercitazioni sui concetti di data factory. Per avviare la creazione, selezionare l’icona della matita nella barra laterale sinistra.

    Screenshot del portale di Azure relativo alla configurazione del portale.

Creare un servizio collegato Database SQL di Azure

  1. Per creare un servizio collegato, selezionare Gestisci hub nella barra laterale sinistra del riquadro Connessioni, selezionare Servizi collegati e quindi selezionare Nuovo per aggiungere un nuovo servizio collegato.

    Screenshot del portale di Azure relativo alla creazione di un nuovo servizio collegato.

  2. Il primo servizio collegato da configurare è un database SQL di Azure. È possibile usare la barra di ricerca per filtrare l'elenco di archivi dati. Selezionare il riquadro Database SQL di Azure e quindi selezionare Continua.

    Screenshot del portale di Azure relativo alla creazione di un nuovo servizio collegato del database SQL di Azure.

  3. Nel riquadro di configurazione del database SQL immettere ''SQLDB'' come nome del servizio collegato. Immettere le proprie credenziali per consentire alla data factory di connettersi al database. Se si usa l'autenticazione SQL, immettere il nome del server, il database, il nome utente e la password. Per verificare se le informazioni per la connessione sono corrette, selezionare Test connessione. Selezionare Create (Crea) al termine.

    Screenshot del portale di Azure relativo alla configurazione di un nuovo servizio collegato del database SQL di Azure con una connessione testata correttamente.

Creare un servizio collegato Azure Synapse Analytics

  1. Ripetere la stessa procedura per aggiungere un servizio collegato Azure Synapse Analytics. Nella scheda Connessioni, selezionare Nuova. Selezionare il riquadro Azure Synapse Analytics e quindi selezionare Continua.

    Screenshot del portale di Azure relativo alla creazione di un nuovo servizio collegato di Azure Synapse Analytics.

  2. Nel riquadro di configurazione del servizio collegato, immettere ''SQLDW'' come nome del servizio collegato. Immettere le proprie credenziali per consentire alla data factory di connettersi al database. Se si usa l'autenticazione SQL, immettere il nome del server, il database, il nome utente e la password. Per verificare se le informazioni per la connessione sono corrette, selezionare Test connessione. Selezionare Create (Crea) al termine.

    Screenshot del portale di Azure relativo alla configurazione di un nuovo servizio collegato di Azure Synapse Analytics denominato SQLDW.

Creare un servizio collegato Azure Data Lake Storage Gen2

  1. L'ultimo servizio collegato necessario per questo lab è Azure Data Lake Storage Gen2. Nella scheda Connessioni, selezionare Nuova. Selezionare la sezione Azure Data Lake Storage Gen2 e quindi selezionare Continua.

    Screenshot del portale di Azure relativo alla creazione di un nuovo servizio collegato di ADLS Gen2.

  2. Nel riquadro di configurazione del servizio collegato immettere 'ADLSGen2' come nome. Se si usa l'autenticazione tramite chiave dell'account, selezionare l'account di archiviazione di ADLS Gen2 nell’elenco a discesa Nome account di archiviazione. Per verificare se le informazioni per la connessione sono corrette, selezionare Test connessione. Selezionare Create (Crea) al termine.

    Screenshot del portale di Azure relativo alla configurazione di un nuovo servizio collegato di ADLS Gen2.

Attivare la modalità di debug dei flussi di dati

Nella sezione Trasformare i dati usando il flusso di dati per mapping, si creano flussi di dati per mapping. Prima di creare flussi di dati per mapping, la procedura consigliata consiste nell'attivare la modalità di debug, che consente di testare la logica di trasformazione in pochi secondi su un cluster Spark attivo.

Per abilitare il debug, selezionare il dispositivo di scorrimento Debug flusso di dati nella barra superiore dell'area di disegno del flusso di dati o di quella della pipeline quando sono presenti attività di Flusso di dati. Selezionare OK quando viene visualizzata la finestra di dialogo di conferma. Il cluster si avvia in circa 5-7 minuti. In fase di inizializzazione, continuare a inserire i dati del database SQL di Azure in ADLS Gen2 usando l'attività di copia.

Screenshot del portale di Azure relativo alle pagine di Risorse factory con il pulsante di debug del flusso di dati abilitato.

Screenshot che mostra dove si trova il dispositivo di scorrimento Debug flusso di dati dopo la creazione di un oggetto.

Inserire i dati usando l'attività di copia

In questa sezione si crea una pipeline con un'attività di copia che inserisce una tabella di un database SQL di Azure in un account di archiviazione di ADLS Gen2. Viene illustrato come aggiungere una pipeline, configurare un set di dati ed eseguire il debug della pipeline tramite l'esperienza utente di ADF. Il modello di configurazione di questa esercitazione può essere applicato alla copia da un archivio dati relazionale a un archivio dati basato su file.

In Azure Data Factory una pipeline è un raggruppamento logico di attività che insieme eseguono un'azione. L'attività definisce un'operazione da eseguire sui dati. Il set di dati punta ai dati da usare in un servizio collegato.

Creare una pipeline con un'attività di copia

  1. Nel riquadro Risorse factory, selezionare l'icona del segno più per aprire il menu della risorsa. Selezionare Pipeline.

    Screenshot del portale di Azure relativo alla creazione di una nuova pipeline.

  2. Nella scheda Generale del canvas assegnare alla pipeline un nome descrittivo, ad esempio 'IngestAndTransformTaxiData'.

    Screenshot del portale di Azure relativo al nuovo oggetto dati Inserimento e Trasformazione taxi.

  3. Nel riquadro attività del canvas della pipeline aprire il menu Move and Transform (Sposta e trasforma) e trascinare l'attività Copy data (Copia dati) nel canvas. Assegnare all'attività di copia un nome descrittivo, ad esempio 'IngestIntoADLS'.

    Screenshot del portale di Azure relativo all'aggiunta di un passaggio di copia dei dati.

Configurare il set di dati di origine del database SQL di Azure

  1. Selezionare la scheda Origine dell'attività di copia. Per creare un nuovo set di dati, selezionare Nuovo. L'origine sarà la tabella dbo.TripData situata nel servizio collegato ''SQLDB'' configurato in precedenza.

    Screenshot del portale di Azure relativo alla creazione di un nuovo set di dati nell'opzione Copia origine dati.

  2. Cercare Database SQL di Azure e quindi selezionare Continua.

    Screenshot del portale di Azure relativo alla creazione di un nuovo set di dati nel database SQL di Azure.

  3. Assegnare al set di dati il nome 'TripData'. Selezionare 'SQLDB' come servizio collegato. Selezionare la tabella denominata dbo.TripData dall'elenco a discesa Nome tabella. Importare lo schema From connection/store (Da connessione/archivio). Al termine, selezionare OK.

    Screenshot del portale di Azure relativo alla pagina delle proprietà per la creazione di un nuovo set di dati nel database SQL di Azure.

Il set di dati di origine è stato creato. Assicurarsi che nel campo Usa query delle impostazioni dell'origine sia selezionato il valore predefinito Tabella.

Configurare il set di dati sink di ADLS Gen 2

  1. Selezionare la scheda Sink dell'attività di copia. Per creare un nuovo set di dati, selezionare Nuovo.

    Screenshot del portale di Azure relativo alla creazione di un nuovo set di dati nell'opzione Copia dati sink.

  2. Cercare Azure Data Lake Storage Gen2 e quindi selezionare Continua.

    Screenshot del portale di Azure relativo alla creazione di nuovi dati in ADLS Gen2.

  3. Nel riquadro Formato selezionare DelimitedText perché si scriverà un file CSV. Selezionare Continua.

    Screenshot del portale di Azure relativo alla pagina del formato durante la creazione di nuovi dati in ADLS Gen2.

  4. Assegnare al set di dati sink il nome 'TripDataCSV'. Selezionare 'ADLSGen2' come servizio collegato. Specificare dove si vuole scrivere il file CSV. Ad esempio, è possibile scrivere i dati nel file trip-data.csv nel contenitore staging-container. Impostare First row as header (Prima riga come intestazione) su True se si vuole che i dati di output abbiano intestazioni. Poiché nella destinazione non esistono ancora file, impostare Importa schema su Nessuno. Al termine, selezionare OK.

    Screenshot del portale di Azure relativo alla pagina delle proprietà della creazione di nuovi dati in ADLS Gen2.

Testare l'attività di copia con l'esecuzione del debug della pipeline

  1. Per verificare il corretto funzionamento dell'attività di copia, selezionare Debug nella parte superiore del canvas della pipeline per avviare l'esecuzione del debug. L'esecuzione del debug consente di testare la pipeline end-to-end o fino a un punto di interruzione prima di pubblicarla nel servizio data factory.

    Screenshot del portale di Azure relativo al pulsante di debug.

  2. Per monitorare l'esecuzione del debug, aprire la scheda Output del canvas della pipeline. La schermata di monitoraggio si aggiorna automaticamente ogni 20 secondi oppure manualmente selezionando il pulsante di aggiornamento. L'attività di copia include una visualizzazione del monitoraggio speciale accessibile selezionando l'icona degli occhiali nella colonna Azioni.

    Screenshot del portale di Azure relativo al pulsante di monitoraggio.

  3. La visualizzazione del monitoraggio della copia fornisce i dettagli sull'esecuzione e le caratteristiche delle prestazioni dell'attività. Le informazioni riguardano la quantità di dati, righe e file letti/scritti, oltre alla velocità effettiva. Se tutte le impostazioni sono state configurate correttamente, si dovrebbero visualizzare 49.999 righe scritte in un unico file nel sink ADLS.

    Screenshot del portale di Azure relativo ai dettagli sulle prestazioni della visualizzazione di monitoraggio della copia.

  4. Prima di passare alla sezione successiva, è consigliabile pubblicare le modifiche nel servizio data factory selezionando Pubblica tutto nella barra superiore della factory. Anche se non è descritto in questo lab, Azure Data Factory supporta la piena integrazione con git. L'integrazione con git consente il controllo della versione, il salvataggio iterativo in un repository e la collaborazione su una data factory. Per altre informazioni, vedere Controllo del codice sorgente in Azure Data Factory.

    Screenshot del portale di Azure relativo al pulsante Pubblica tutto.

Trasformare i dati con il flusso di dati di mapping

Dopo aver correttamente copiato i dati in Azure Data Lake Storage, è possibile aggregarli in un data warehouse. Viene usato il flusso di dati per mapping, il servizio di trasformazione di Azure Data Factory progettato graficamente. I flussi di dati per mapping consentono agli utenti di sviluppare logica di trasformazione senza codice e di eseguirli in cluster Spark gestiti dal servizio ADF.

Il flusso di dati creato in questo passaggio unisce tramite inner join il set di dati ''TripDataCSV'' creato nella sezione precedente con una tabella dbo.TripFares archiviata in ''SQLDB'' in base a quattro colonne chiave. Quindi i dati vengono aggregati in base alla colonna payment_type per calcolare la media di determinati campi e vengono scritti in una tabella di Azure Synapse Analytics.

Aggiungere un'attività di flusso di dati alla pipeline

  1. Nel riquadro attività del canvas della pipeline aprire il menu Move and Transform (Sposta e trasforma) e trascinare l'attività Flusso di dati nel canvas.

    Screenshot del portale di Azure relativo all'opzione flusso di dati nel menu Sposta e trasforma.

  2. Nel riquadro laterale che si apre selezionare Create new data flow (Crea nuovo flusso di dati) e scegliere Flusso di dati per mapping. Seleziona OK.

    Screenshot del portale di Azure relativo all’aggiunta di un nuovo flusso di dati per mapping.

  3. Si viene indirizzati nel canvas del flusso di dati, dove viene sviluppata la logica di trasformazione. Nella scheda Generale assegnare al flusso di dati il nome 'JoinAndAggregateData'.

    Screenshot del portale di Azure relativo a Flusso di dati Join e Aggregato.

Configurare l'origine CSV dei dati sulle corse

  1. La prima cosa da fare è configurare le due trasformazioni di origine. La prima origine punterà al set di dati DelimitedText ''TripDataCSV''. Per aggiungere una trasformazione di origine, selezionare la casella Aggiungi origine nel canvas.

    Screenshot del portale di Azure relativo all’aggiunta del pulsante Origine in un nuovo flusso di dati.

  2. Assegnare all'origine il nome ''TripDataCSV'' e selezionare il set di dati ''TripDataCSV'' dall'elenco a discesa. Inizialmente, quando è stato creato questo set di dati, non è stato importato uno schema perché non erano disponibili dati. Poiché ora esiste trip-data.csv, selezionare Modifica per passare alla scheda delle impostazioni del set di dati.

    Screenshot del portale di Azure relativo al pulsante Modifica set di dati di origine nelle opzioni del flusso di dati.

  3. Passare alla scheda Schema e selezionare Importa schema. Selezionare From connection/store (Da connessione/archivio) per eseguire l'importazione direttamente dall'archivio file. Verranno visualizzate 14 colonne di tipo stringa.

    Screenshot del portale di Azure relativo alla selezione dell'origine dello schema.

  4. Tornare nel flusso di dati 'JoinAndAggregateData'. Se il cluster di debug è stato avviato (come indicato da un cerchio verde accanto al relativo dispositivo di scorrimento), è possibile ottenere uno snapshot dei dati nella scheda Anteprima dei dati. Selezionare Aggiorna per recuperare un'anteprima dei dati.

    Screenshot del portale di Azure relativo all’anteprima del flusso di dati.

Nota

L'anteprima dei dati non scrive dati.

Configurare l'origine del database SQL per le tariffe per le corse

  1. La seconda origine da aggiungere punta alla tabella del database SQL dbo.TripFares. Nell'origine TripDataCSV' è presente un'altra casella Aggiungi origine. Selezionarla per aggiungere una nuova trasformazione di origine.

    Screenshot del portale di Azure relativo all’aggiunta di un'altra origine dati a un flusso di dati.

  2. Assegnare a questa origine il nome 'TripFaresSQL'. Selezionare Nuovo accanto al campo del set di dati di origine per creare un nuovo set di dati del database SQL.

    Screenshot del portale di Azure relativo al nuovo set di dati di origine in un altro passaggio di copia dati nel flusso di dati.

  3. Selezionare il riquadro Database SQL di Azure e quindi selezionare Continua. Come si può notare, molti dei connettori della data factory non sono supportati nel flusso di dati per mapping. Per trasformare i dati di una di queste origini, inserirli in un'origine supportata usando l'attività di copia.

    Screenshot del portale di Azure relativo all’aggiunta di un nuovo set di dati del database SQL di Azure al flusso di dati.

  4. Assegnare al set di dati il nome 'TripFares'. Selezionare 'SQLDB' come servizio collegato. Selezionare la tabella denominata dbo.TripFares dall'elenco a discesa Nome tabella. Importare lo schema From connection/store (Da connessione/archivio). Al termine, selezionare OK.

    Screenshot del portale di Azure relativo alle proprietà dell'aggiunta di un nuovo set di dati del database SQL di Azure al flusso di dati.

  5. Per verificare i dati, recuperare un'anteprima nella scheda Anteprima dei dati.

    Screenshot del portale di Azure relativo all’anteprima dei dati di un'altra origine dati nel flusso di dati.

Unire TripDataCSV e TripFaresSQL tramite inner join

  1. Per aggiungere una nuova trasformazione, selezionare l’icona del segno più nell'angolo in basso a destra di "TripDataCSV". In Multiple inputs/outputs (Più input/output) selezionare Join.

    Screenshot del portale di Azure relativo al pulsante di join nelle origini dati in un flusso di dati.

  2. Assegnare alla trasformazione di join il nome 'InnerJoinWithTripFares'. Selezionare ''TripFaresSQL'' nell'elenco a discesa Flusso destro. Selezionare Inner come tipo di join. Per altre informazioni sui diversi tipi di join nel flusso di dati per mapping, vedere Tipi di join.

    Selezionare le colonne per cui trovare una corrispondenza da ogni flusso tramite l'elenco a discesa Condizioni di join. Per aggiungere un'altra condizione di join, selezionare l'icona del segno più accanto a una condizione esistente. Per impostazione predefinita, tutte le condizioni di join vengono combinate con un operatore AND, il che significa che devono essere soddisfatte tutte per restituire una corrispondenza. In questo lab verrà trovata una corrispondenza per le colonne medallion, hack_license, vendor_id e pickup_datetime

    Screenshot del portale di Azure relativo alle impostazioni di join del flusso di dati.

  3. Verificare di aver unito correttamente 25 colonne tra loro con un'anteprima dei dati.

    Screenshot del portale di Azure relativo all'anteprima dei dati di un flusso di dati con origini dati aggiunte.

Aggregazione per payment_type

  1. Dopo aver completato la trasformazione di join, aggiungere una trasformazione di aggregazione selezionando l'icona del segno più accanto a InnerJoinWithTripFares. Scegliere Aggregate (Aggregazione) in Schema modifier (Modificatore di schema).

    Screenshot del portale di Azure relativo al nuovo pulsante di aggregazione.

  2. Assegnare alla trasformazione di aggregazione il nome 'AggregateByPaymentType'. Selezionare payment_type come colonna in base a cui raggruppare.

    Screenshot del portale di Azure relativo alle impostazioni di aggregazione.

  3. Passare alla scheda Aggregates (Aggregazioni). Specificare due aggregazioni:

    • La tariffa media raggruppata per tipo di pagamento
    • La distanza totale delle corse raggruppata per tipo di pagamento

    Prima di tutto, si crea l'espressione per la tariffa media. Nella casella di testo Add or select a column (Aggiungere o selezionare una colonna) immettere 'average_fare'.

    Screenshot del portale di Azure relativo Raggruppato per opzione nelle impostazioni di aggregazione.

  4. Per immettere un'espressione di aggregazione, selezionare la casella blu con l’etichetta Immettere espressione, che apre il generatore di espressioni del flusso di dati, uno strumento usato per creare visivamente espressioni del flusso di dati usando lo schema di input, le funzioni e le operazioni predefinite e i parametri definiti dall'utente. Per altre informazioni sulle funzionalità di generatore di espressioni, vedere la relativa documentazione.

    Per ottenere la tariffa media, usare la funzione di aggregazione avg() per aggregare il cast della colonna total_amount a un intero con toInteger(). Nel linguaggio delle espressioni del flusso di dati, questa operazione viene definita come avg(toInteger(total_amount)). Al termine, selezionare Salva e chiudi.

    Screenshot del portale di Azure relativo al Generatore di espressioni visive che mostra una funzione di aggregazione avg(toInteger(total_amount)).

  5. Per aggiungere un'espressione di aggregazione aggiuntiva, selezionare l'icona del segno più accanto a average_fare. Selezionare Aggiungi colonna.

    Screenshot del portale di Azure relativo al pulsante Aggiungi colonna nelle impostazioni di aggregazione raggruppate per opzione.

  6. Nella casella di testo Add or select a column (Aggiungere o selezionare una colonna) immettere 'total_trip_distance'. Come nel passaggio precedente, aprire il generatore di espressioni per immettere l'espressione.

    Per ottenere la distanza totale delle corse, usare la funzione di aggregazione sum() per aggregare il cast della colonna trip_distance a un intero con toInteger(). Nel linguaggio delle espressioni del flusso di dati, questa operazione viene definita come sum(toInteger(trip_distance)). Al termine, selezionare Salva e chiudi.

    Screenshot del portale di Azure relativo alle due colonne nelle impostazioni di aggregazione raggruppate per opzione.

  7. Testare la logica di trasformazione nella scheda Anteprima dei dati. Come si può notare, il numero di righe e colonne è inferiore rispetto a prima. Solo le tre colonne di raggruppamento e aggregazione definite in questa trasformazione continuano downstream. Poiché nell'esempio sono presenti solo cinque gruppi di tipi di pagamento, vengono restituite solo cinque righe.

    Screenshot del portale di Azure relativo all’anteprima dei dati aggregati.

Configurare il sink di Azure Synapse Analytics

  1. Una volta completata la logica di trasformazione, è possibile eseguire il sink dei dati in una tabella di Azure Synapse Analytics. Aggiungere una trasformazione di sink nella sezione Destination (Destinazione).

    Screenshot del portale di Azure relativo al pulsante Aggiungi sink nel flusso di dati.

  2. Assegnare un nome al sink 'SQLDWSink'. Selezionare Nuovo accanto al campo del set di dati sink per creare un nuovo set di dati di Azure Synapse Analytics.

    Screenshot del portale di Azure relativo a un nuovo pulsante del set di dati sink nelle impostazioni del sink.

  3. Selezionare il riquadro Azure Synapse Analytics e quindi selezionare Continua.

    Screenshot del portale di Azure relativo a un nuovo set di dati di Azure Synapse Analytics per un nuovo sink di dati.

  4. Assegnare al set di dati il nome 'AggregatedTaxiData'. Selezionare 'SQLDW' come servizio collegato. Selezionare Crea nuova tabella e assegnare alla nuova tabella il nome dbo.AggregateTaxiData. Al termine, selezionare OK.

    Screenshot del portale di Azure relativo alla creazione di una nuova tabella per il sink di dati.

  5. Passare alla scheda Impostazioni del sink. Poiché si sta creando una nuova tabella, è necessario selezionare Ricrea tabella come azione. Deselezionare Abilita staging, che consente di scegliere se inserire i dati riga per riga o in batch.

    Screenshot del portale di Azure relativo alle impostazioni del sink di dati, opzione Ricrea tabella.

Il flusso di dati è stato creato. A questo punto è possibile eseguirlo in un'attività della pipeline.

Eseguire il debug della pipeline end-to-end

  1. Tornare nella scheda relativa alla pipeline IngestAndTransformData. Notare la casella verde nell'attività di copia 'IngestIntoADLS'. Trascinarla nell'attività del flusso di dati 'JoinAndAggregateData'. Viene creato un oggetto 'on success', che determina l'esecuzione dell'attività del flusso di dati solo se la copia riesce.

    Screenshot del portale di Azure relativo a una pipeline verde riuscita.

  2. Come per l'attività di copia,selezionareDebug per avviare un'esecuzione di debug. Per le esecuzioni di debug, l'attività del flusso di dati usa il cluster di debug attivo invece di creare un nuovo cluster. L'esecuzione di questa pipeline richiede poco più di un minuto.

    Screenshot del portale di Azure relativo al pulsante di debug del flusso di dati per la pipeline riuscita.

  3. Analogamente all'attività di copia, il flusso di dati include una speciale visualizzazione di monitoraggio accessibile tramite l'icona degli occhiali al completamento dell'attività.

    Screenshot del portale di Azure relativo al monitoraggio di output in una pipeline.

  4. Nella visualizzazione di monitoraggio è possibile visualizzare un grafico del flusso di dati semplificato insieme ai tempi di esecuzione e alle righe in ogni fase dell'esecuzione. Se l'attività viene eseguita correttamente, si dovrebbe aver aggregato 49.999 righe in cinque righe.

    Screenshot del portale di Azure relativo ai dettagli del monitoraggio di output in una pipeline.

  5. È possibile selezionare una trasformazione per ottenere ulteriori dettagli sulla relativa esecuzione, ad esempio informazioni sul partizionamento e sulle colonne nuove/aggiornate/eliminate.

    Screenshot del portale di Azure relativo alle informazioni sul flusso nel monitoraggio dell'output della pipeline.

A questo punto è stata completata la parte di questo lab relativa alla data factory. Pubblicare le risorse da operazionalizzare con i trigger. È stata eseguita correttamente una pipeline che ha inserito i dati del database SQL di Azure in Azure Data Lake Storage usando l'attività di copia e quindi ha aggregato questi dati in Azure Synapse Analytics. È possibile verificare che i dati siano stati scritti correttamente esaminando l'istanza stessa di SQL Server.

Condividere dati con Condivisione dati di Azure

In questa sezione viene illustrato come configurare una nuova condivisione dati usando il portale di Azure. Ciò comporta la creazione di una nuova condivisione dati contenente set di dati di Azure Data Lake Storage Gen2 e Azure Synapse Analytics. Verrà quindi configurata una pianificazione degli snapshot che fornirà ai consumer di dati l'opzione per aggiornare automaticamente i dati condivisi. Infine, verranno invitati i destinatari nella condivisione dati.

Dopo aver creato una condivisione di dati, si assumerà il ruolo di consumer di dati. In veste di consumer di dati, si completerà il flusso che consiste nell'accettare un invito alla condivisione dati, configurare la posizione in cui ricevere i dati ed eseguire il mapping dei set di dati in posizioni di archiviazione diverse. Si attiverà quindi uno snapshot, che copierà i dati condivisi nella destinazione specificata.

Condividere i dati (flusso del provider di dati)

  1. Aprire il portale di Azure in Microsoft Edge o Google Chrome.

  2. Usando la barra di ricerca nella parte superiore della pagina, cercare Condivisioni dati

    Screenshot del portale di Azure relativo alla ricerca di condivisioni dati nella barra di ricerca del portale di Azure.

  3. Selezionare l'account di condivisione dati con 'Provider' nel nome. Ad esempio, DataProvider0102.

  4. Selezionare Inizia la condivisione dei dati

    Screenshot del portale di Azure relativo al pulsante Avvia condivisione dei dati.

  5. Selezionare + Crea per avviare la configurazione della nuova condivisione dati.

  6. In Condivisione dati specificare un nome a scelta. Si tratta del nome della condivisione che verrà visualizzato dal consumer di dati, quindi assicurarsi di specificare un nome descrittivo, ad esempio TaxiData.

  7. In Descrizione inserire una frase che descriva il contenuto della condivisione dati. La condivisione dati contiene i dati relativi alle corse dei taxi di tutto il mondo, memorizzati in una varietà di archivi, tra cui Azure Synapse Analytics e Azure Data Lake Storage.

  8. In Condizioni per l'utilizzo specificare una serie di condizioni a cui il consumer di dati dovrà conformarsi, ad esempio "Non distribuire questi dati all'esterno dell'organizzazione" oppure "Vedere il contratto legale".

    Screenshot del portale di Azure relativo ai dettagli di condivisione dati in Condivisioni inviate.

  9. Selezionare Continua.

  10. Selezionare Aggiungi set di dati

    Screenshot del portale di Azure relativo al pulsante Aggiungi set di dati nella condivisione dati in Condivisioni inviate.

  11. Selezionare Azure Synapse Analytics per selezionare una tabella di Azure Synapse Analytics in cui sono state inserite le trasformazioni di Azure Data Factory.

  12. Prima di procedere, verrà fornito uno script da eseguire. Lo script fornito crea un utente nel database SQL per consentire all'identità del servizio gestita di Condivisione dati di Azure di eseguire l'autenticazione per suo conto.

    Importante

    Prima di eseguire lo script, è necessario impostare se stessi come amministratore di Active Directory per il server SQL logico di database SQL di Azure.

  13. Aprire una nuova scheda e passare al portale di Azure. Copiare lo script fornito per creare un utente nel database da cui si vogliono condividere i dati. A tale scopo, accedere al database EDW tramite l'editor di query del portale di Azure usando l'autenticazione di Microsoft Entra. È necessario modificare l'utente nello script di esempio seguente:

    CREATE USER [dataprovider-xxxx@contoso.com] FROM EXTERNAL PROVIDER; 
    ALTER ROLE db_owner ADD MEMBER [wiassaf@microsoft.com];
    
  14. Tornare in Condivisione dati di Azure in cui sono stati aggiunti i set di dati alla condivisione dati.

  15. Selezionare EDW, quindi selezionare AggregatedTaxiData per la tabella.

  16. Selezionare Aggiungi set di dati

    È ora disponibile una tabella SQL che fa parte del set di dati. Successivamente, si aggiungeranno altri set di dati da Azure Data Lake Storage.

  17. Selezionare Aggiungi set di dati e quindi Azure Data Lake Storage Gen2

    Screenshot del portale di Azure relativo all’aggiunta di un set di dati ADLS Gen2.

  18. Selezionare Avanti.

  19. Espandere wwtaxidata. Espandere Boston Taxi Data. È possibile condividere fino al livello del file.

  20. Selezionare la cartella Boston Taxi Data per aggiungere l'intera cartella alla condivisione dati.

  21. Selezionare Aggiungi set di dati

  22. Esaminare i set di dati aggiunti. Alla condivisione dati dovrebbero essere state aggiunte una tabella SQL e una cartella di ADLS Gen2.

  23. Selezionare Continua

  24. In questa schermata è possibile aggiungere i destinatari alla condivisione dati. I destinatari aggiunti riceveranno gli inviti alla condivisione dati. Ai fini di questo lab, è necessario aggiungere due indirizzi di posta elettronica:

    1. L'indirizzo di posta elettronica della sottoscrizione di Azure in uso.

      Screenshot del portale di Azure relativo all'aggiunta di destinatari della condivisione dati.

    2. Aggiungere il consumer di dati fittizio denominato janedoe@fabrikam.com.

  25. In questa schermata è possibile configurare un'impostazione degli snapshot per il consumer di dati. In questo modo, il consumer può ricevere aggiornamenti regolari dei dati a un intervallo definito dal provider.

  26. Selezionare Pianificazione degli snapshot e configurare un aggiornamento orario dei dati usando l'elenco a discesa Ricorrenza.

  27. Seleziona Crea.

    A questo punto è disponibile una condivisione dati attiva. Esaminare i contenuti visibili a un provider di dati quando si crea una condivisione dati.

  28. Selezionare la condivisione dati creata, denominata DataProvider. È possibile accedervi selezionando Condivisioni inviate in Condivisione dati.

  29. Selezionare Pianificazione degli snapshot. Se si preferisce, è possibile disabilitare la pianificazione degli snapshot.

  30. Selezionare quindi la scheda Set di dati. È possibile aggiungere altri set di dati a questa condivisione dati dopo la creazione.

  31. Selezionare la scheda Sottoscrizioni di condivisione. Non esistono ancora sottoscrizioni di condivisione perché il consumer di dati non ha ancora accettato l'invito.

  32. Passare alla scheda Inviti. Viene visualizzato un elenco di inviti in sospeso.

    Screenshot del portale di Azure relativo agli inviti in sospeso.

  33. Selezionare l'invito inviato a janedoe@fabrikam.com. Selezionare Elimina. Se il destinatario non ha ancora accettato l'invito, non sarà più in grado di farlo.

  34. Selezionare la scheda Cronologia . Non viene ancora visualizzato nulla perché il consumer di dati non ha ancora accettato l'invito né ha attivato uno snapshot.

Ricevere dati (flusso del consumer di dati)

Dopo aver esaminato la condivisione dati, è possibile cambiare contesto e assumere il ruolo di consumer di dati.

A questo punto, nella posta in arrivo si dovrebbe avere un invito di Condivisione dati di Azure inviato da Microsoft Azure. Avviare Outlook Web Access (outlook.com) e accedere con le credenziali fornite per la sottoscrizione di Azure.

Nel messaggio di posta elettronica ricevuto selezionare "Visualizza invito >". A questo punto, si simulerà l'esperienza del consumer di dati quando accetta l'invito di un provider di dati nella sua condivisione dati.

Screenshot di Outlook relativo a un invito tramite posta elettronica.

Potrebbe essere richiesto di selezionare una sottoscrizione. Assicurarsi di selezionare la sottoscrizione che si usa per questo lab.

  1. Selezionare l'invito denominato DataProvider.

  2. In questa schermata di Invito si notano diversi dettagli sulla condivisione dati configurata in precedenza come provider di dati. Esaminare i dettagli e accettare le condizioni per l'utilizzo, se disponibili.

  3. Selezionare la sottoscrizione e il gruppo di risorse già esistenti per il lab.

  4. Per Data share account (Account di condivisione dati), selezionare DataConsumer. È anche possibile creare un nuovo account di condivisione dati.

  5. Accanto a Nome condivisione ricevuta si nota che il nome predefinito della condivisione corrisponde a quello specificato dal provider di dati. Assegnare alla condivisione un nome descrittivo per i dati che si stanno per ricevere, ad esempio TaxiDataShare.

    Screenshot del portale di Azure relativo alla pagina per accettare e configurare una condivisione dati.

  6. È possibile scegliere l'opzione Accept and configure now (Accetta e configura ora) o Accept and configure later (Accetta e configura più tardi). Se si sceglie la prima opzione, specificare un account di archiviazione in cui devono essere copiati tutti i dati. Se si sceglie la seconda opzione, i set di dati della condivisione non saranno mappati e sarà necessario eseguirne il mapping manualmente. Questa opzione verrà scelta in seguito.

  7. Selezionare Accept and configure later (Accetta e configura più tardi).

    Quando si configura questa opzione, viene creata una sottoscrizione di condivisione, ma non è disponibile alcuna posizione per i dati perché non è stato eseguito il mapping di una destinazione.

    Configurare quindi i mapping dei set di dati per la condivisione dati.

  8. Selezionare la condivisione ricevuta (il nome specificato nel passaggio 5).

    L'opzione Attiva snapshot è disattivata, ma la condivisione è attiva.

  9. Selezionare la scheda Set di dati. Ogni set di dati risulta non mappato, il che significa che non è presente alcuna destinazione in cui copiare i dati.

    Screenshot del portale di Azure relativo ai set di dati non mappati.

  10. Selezionare la tabella di Azure Synapse Analytics e quindi selezionare + Esegui mapping alla destinazione.

  11. Sul lato destro dello schermo selezionare l'elenco a discesa Tipo di dati di destinazione.

    È possibile eseguire il mapping dei dati SQL a un'ampia gamma di archivi dati. In questo caso, verrà eseguito a un database SQL di Azure.

    Screenshot del portale di Azure relativo ai set di dati di mapping di destinazione.

    (Facoltativo) Selezionare Azure Data Lake Storage Gen2 come tipo di dati di destinazione.

    (Facoltativo) Selezionare la sottoscrizione, il gruppo di risorse e l'account di archiviazione in uso.

    (Facoltativo) È possibile scegliere di ricevere i dati nel data lake in formato CSV o parquet.

  12. Quindi, accanto a Tipo di dati di destinazioneselezionare Database SQL di Azure.

  13. Selezionare la sottoscrizione, il gruppo di risorse e l'account di archiviazione in uso.

    Screenshot del portale di Azure relativo ai set di dati di mapping in un database SQL di Azure di destinazione.

  14. Prima di continuare, è necessario creare un nuovo utente in SQL Server eseguendo lo script fornito. Copiare prima di tutto lo script fornito negli Appunti.

  15. Aprire una nuova scheda del portale di Azure. Non chiudere la scheda esistente perché sarà necessario tornarvi tra poco.

  16. Nella nuova scheda aperta passare a Database SQL.

  17. Selezionare il database SQL (dovrebbe esserne presente uno solo nella sottoscrizione). Fare attenzione a non selezionare il data warehouse.

  18. Selezionare Editor di query (anteprima)

  19. Usare l'autenticazione di Microsoft Entra per accedere a Editor di query.

  20. Eseguire la query specificata nella condivisione dati (copiata negli Appunti nel passaggio 14).

    Con questo comando il servizio Condivisione dati di Azure può usare identità gestite per consentire ai servizi di Azure di eseguire l'autenticazione in SQL Server in modo da potervi copiare i dati.

  21. Tornare nella scheda originale e selezionare Esegui mapping alla destinazione.

  22. Selezionare quindi la cartella Azure Data Lake Storage Gen2 che fa parte del set di dati ed eseguirne il mapping a un account di Archiviazione BLOB di Azure.

    Screenshot del portale di Azure relativo ai set di dati di mapping in Archiviazione BLOB di Azure di destinazione.

    Con tutti i set di dati mappati, è ora possibile iniziare a ricevere dati dal provider di dati.

    Screenshot del portale di Azure relativo alle condivisioni ricevute mappate.

  23. Selezionare Dettagli.

    L’opzione Attiva snapshot non è più disattivata, perché ora sono disponibili destinazioni della condivisione dati per la copia.

  24. Selezionare Attiva snapshot ->Copia completa.

    Screenshot dal portale Azure relativo allo snapshot del trigger, opzione di copia completa.

    Viene avviata la copia dei dati nel nuovo account di condivisione dati. In uno scenario reale, questi dati provengono da terze parti.

    Sono necessari circa 3-5 minuti prima che i dati vengano ricevuti. È possibile monitorare lo stato di avanzamento selezionando la scheda Cronologia.

    Durante l'attesa, passare alla condivisione dati originale (DataProvider) e visualizzare lo stato delle schede Sottoscrizioni di condivisione e Cronologia. Ora è disponibile una sottoscrizione attiva e, come provider di dati, è anche possibile monitorare quando il consumer di dati ha iniziato a ricevere i dati condivisi.

  25. Tornare nella condivisione dati del consumer di dati. Quando lo stato del trigger indica che l'operazione è riuscita, passare al database SQL e al data lake di destinazione per verificare che i dati siano stati inseriti nei rispettivi archivi.

Il lab è stato completato.