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.
APPLICABILE A:
Azure Data Factory
Azure Synapse Analytics
Suggerimento
Data Factory in Microsoft Fabric è la nuova generazione di Azure Data Factory, con un'architettura più semplice, un'intelligenza artificiale predefinita e nuove funzionalità. Se non si ha familiarità con l'integrazione dei dati, iniziare con Fabric Data Factory. I carichi di lavoro di Azure Data Factory esistenti possono eseguire l'aggiornamento a Fabric per accedere a nuove funzionalità tra data science, analisi in tempo reale e creazione di report.
In questa esercitazione si crea una pipeline di Data Factory che illustra alcune funzionalità del flusso di controllo. Questa pipeline esegue una copia semplice da un contenitore in Archiviazione BLOB di Azure a un altro contenitore nello stesso account di archiviazione. Se l'attività di copia ha esito positivo, la pipeline invia i dettagli dell'operazione di copia completata (ad esempio, la quantità di dati scritti) in un messaggio di posta elettronica di operazione riuscita. Se l'attività di copia ha esito negativo, la pipeline invia i dettagli dell'errore di copia (ad esempio, il messaggio di errore) in un messaggio di posta elettronica di operazione non riuscita. Nel corso dell'esercitazione verrà illustrato come passare i parametri.
Panoramica generale dello scenario:
In questa esercitazione vengono completati i passaggi seguenti:
- Creare una fabbrica di dati.
- Creare un servizio collegato Archiviazione di Azure.
- Creare un set di dati BLOB Azure
- Creare una pipeline contenente un'attività di copia e un'attività di Web
- Inviare gli output delle attività alle attività successive
- Utilizzare il passaggio di parametri e le variabili di sistema
- Avviare un'esecuzione della pipeline
- Monitorare le esecuzioni di pipeline e attività
Questa esercitazione usa il portale di Azure. È possibile usare altri meccanismi per interagire con Azure Data Factory, fare riferimento a "Guide introduttive" nel sommario.
Prerequisiti
- sottoscrizione Azure. Se non si ha una sottoscrizione Azure, creare un account free prima di iniziare.
- Archiviazione di Azure account. Usi l'archivio BLOB come archivio dati di origine. Se non si ha un account di archiviazione Azure, vedere l'articolo Creare un account di archiviazione per la procedura per crearne uno.
- database SQL di Azure. Usare il database come archivio dati sink. Se non si dispone di un database in database SQL di Azure, vedere l'articolo Creare un database in database SQL di Azure per la procedura per crearne uno.
Creare la tabella BLOB
Avviare il Blocco note. Copiare il testo seguente e salvarlo come file input.txt sul disco.
John,Doe Jane,DoeUsare strumenti come Azure Storage Explorer seguire questa procedura:
- Creare il contenitore adfv2branch.
- Creare la cartella di input nel contenitore adfv2branch.
- Caricare il file input.txt nel contenitore.
Creare gli endpoint del flusso di lavoro email
Per attivare l'invio di un messaggio di posta elettronica dalla pipeline, usare App per la logica di Azure per definire il flusso di lavoro. Per altre informazioni sulla creazione di un flusso di lavoro di un'app per la logica, vedere Creare un flusso di lavoro di esempio di un'app per la logica A consumo.
Flusso di lavoro email di successo
Creare un flusso di lavoro dell'app di logica di consumo denominato CopySuccessEmail. Aggiungere il trigger request denominato Quando viene ricevuta una richiesta HTTP e aggiungere l'azione Office 365 Outlook denominata Send an email. Se richiesto, accedere all'account Office 365 Outlook.
Per il trigger Richiesta, compilare la casella Schema JSON del corpo della richiesta con il codice JSON seguente:
{
"properties": {
"dataFactoryName": {
"type": "string"
},
"message": {
"type": "string"
},
"pipelineName": {
"type": "string"
},
"receiver": {
"type": "string"
}
},
"type": "object"
}
Il trigger Richiesta nella finestra di progettazione del flusso di lavoro dovrebbe essere simile all'immagine seguente:
Per l'azione Invia un messaggio di posta elettronica , personalizzare la modalità di formattazione del messaggio di posta elettronica, usando le proprietà passate nello schema JSON del corpo della richiesta. Ecco un esempio:
Salvare il flusso di lavoro. Prendere nota dell'URL della richiesta HTTP Post per il flusso di lavoro del messaggio di posta elettronica di operazione riuscita:
//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
Flusso di lavoro email non riuscito
Seguire la stessa procedura per creare un altro flusso di lavoro dell'app per la logica denominato CopyFailEmail. Nel trigger Richiesta il valore schema JSON del corpo della richiesta è lo stesso. Modificare la formattazione del messaggio di posta elettronica, ad esempio Subject, per adattarlo a un messaggio di posta elettronica di operazione non riuscita. Ecco un esempio:
Salvare il flusso di lavoro. Prendere nota dell'URL della richiesta HTTP Post per il flusso di lavoro del messaggio di posta elettronica di operazione non riuscita:
//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
Si avranno ora due URL di flusso di lavoro:
//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
Creare una data factory
Avviare Microsoft Edge o Google Chrome Web browser. Attualmente, l'interfaccia utente di Data Factory è supportata solo in Microsoft Edge e nei Web browser Google Chrome.
Espandere il menu in alto a sinistra e selezionare Crea una risorsa. Selezionare quindi Analytics>Data Factory :
Nella pagina Nuova data factory immettere ADFTutorialDataFactory per Nome.
Il nome della data factory Azure deve essere globalmente univoco. Se viene visualizzato l'errore seguente, modificare il nome della data factory, ad esempio, nomeutenteADFTutorialDataFactory, e provare di nuovo a crearla. Per informazioni sulle regole di denominazione per gli elementi di Data Factory, vedere l'articolo Data Factory - Regole di denominazione.
Il nome della data factory "ADFTutorialDataFactory" non è disponibile.
Selezionare la sottoscrizione di Azure in cui si vuole creare la fabbrica di dati.
Per il 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 Utilizza i gruppi di risorse per gestire le risorse Azure.
Selezionare V2 per la versione.
Selezionare la località per la Data Factory. Nell'elenco a discesa vengono mostrate solo le località supportate. Gli archivi dati (Archiviazione di Azure, database SQL di Azure e così via) e i calcoli (HDInsight e così via) usati dalla data factory possono trovarsi in altre aree.
Selezionare Aggiungi al dashboard.
Cliccare su Crea.
Al termine della creazione verrà visualizzata la pagina Data factory, come illustrato nell'immagine.
Fare clic su Aprire Azure Data Factory Studio riquadro per avviare l'interfaccia utente Azure Data Factory in una scheda separata.
Creare una pipeline
In questo passaggio viene creata una pipeline con una attività Copy e due attività Web. Vengono usate le funzionalità seguenti per creare la pipeline:
- Parametri della pipeline a cui accedono i dataset.
- Attività Web per richiamare i flussi di lavoro delle app per la logica per inviare messaggi di posta elettronica di operazione riuscita o non riuscita.
- Connessione di un'attività con un'altra attività (in caso di esito positivo e negativo)
- Uso dell'output di un'attività come input per l'attività successiva
Nella home page dell'interfaccia utente di Data Factory fare clic sul riquadro Orchestrate .In the home page of Data Factory UI, click the Orchestrate tile.
Nella finestra delle proprietà per la pipeline passare alla scheda Parametri e usare il pulsante Nuovo per aggiungere i tre parametri seguenti di tipo String: sourceBlobContainer, sinkBlobContainer e receiver.
- sourceBlobContainer: parametro nella pipeline utilizzato dal set di dati del BLOB di origine.
- sinkBlobContainer - parametro nella pipeline utilizzato dal set di dati del BLOB sink.
- receiver : questo parametro viene usato dalle due attività Web nella pipeline che inviano messaggi di posta elettronica di esito positivo o negativo al ricevitore il cui indirizzo di posta elettronica è specificato da questo parametro.
Nella casella degli strumenti Attività cercare Copia e trascinare l'attività Copia nell'area di progettazione della pipeline.
Selezionare l'attività Copia trascinata nell'area di progettazione della pipeline. Nella finestra Proprietà per l'attività Copia nella parte inferiore passare alla scheda Origine e fare clic su + Nuovo. In questa attività viene creato un set di dati di origine per l'attività di copia.
Nella finestra Nuovo set di dati selezionare la scheda Azure nella parte superiore e quindi scegliere Archiviazione BLOB di Azure e selezionare Continue.
Nella finestra Seleziona formato scegliere DelimitedText e selezionare Continua.
Verrà visualizzata una nuova scheda denominata Imposta proprietà. Modificare il nome del set di dati in SourceBlobDataset. Selezionare il menu a tendina Linked Service e scegliere +Nuovo per creare un nuovo Linked Service al set di dati di origine.
Verrà visualizzata la finestra Nuovo servizio collegato in cui è possibile compilare le proprietà necessarie per il servizio collegato.
Nella finestra New Linked Service (Nuovo servizio collegato) completare questa procedura:
- Immettere AzureStorageLinkedService per Nome.
- Seleziona il tuo account di archiviazione Azure per il Storage account name.
- Cliccare su Crea.
Nella finestra Imposta proprietà visualizzata successivamente selezionare Apri questo set di dati per immettere un valore con parametri per il nome del file.
Immettere
@pipeline().parameters.sourceBlobContainerper la cartella eemp.txtper il nome file.
Tornare alla scheda pipeline (o fare clic sulla visualizzazione ad albero a sinistra) e selezionare l'attività Copy nella finestra di progettazione. Verificare che il nuovo set di dati sia selezionato per Set di dati origine.
Nella finestra delle proprietà passare alla scheda Sink e fare clic su + Nuovo per Sink Dataset (Set di dati sink). In questo passaggio viene creato un set di dati sink per l'attività di copia con una procedura simile a quella per il set di dati di origine.
Nella finestra Nuovo set di dati selezionare Archiviazione BLOB di Azure e fare clic su Continue, quindi selezionare di nuovo DelimitedText nella finestra Selezionare il formato e fare clic su Continue di nuovo.
Nella pagina Imposta proprietà per il set di dati immettere SinkBlobDataset per Nome e selezionare AzureStorageLinkedService per LinkedService.
Espandere la sezione Avanzate della pagina delle proprietà e selezionare Apri questo set di dati.
Nella scheda Connessione del set di dati, modificare il percorso del file. Immettere
@pipeline().parameters.sinkBlobContainerper la cartella e@concat(pipeline().RunId, '.txt')per il nome del file. L'espressione usa l'ID dell'esecuzione corrente della pipeline per il nome del file. Per l'elenco delle variabili di sistema e delle espressioni supportate, vedere Variabili di sistema e Linguaggio delle espressioni.
Tornare alla scheda pipeline in alto. Cerca 'Web' nella barra di ricerca, e trascina un'attività Web nell'area di progettazione della pipeline. Impostare il nome dell'attività su SendSuccessEmailActivity. L'attività Web consente una chiamata a qualsiasi endpoint REST. Per altre informazioni sull'attività, vedere l'articolo relativo all'attività Web. Questa pipeline usa un'attività Web per chiamare il flusso di lavoro di Logic Apps per le email.
Passare alla scheda Impostazioni dalla scheda Generale e seguire questa procedura:
Per URL, specificare l'URL per il flusso di lavoro delle app logiche che invia l'email di conferma di avvenuto successo.
Selezionare POST per Metodo.
Fare clic sul collegamento + Aggiungi intestazione nella sezione Intestazioni.
Aggiungere un'intestazione Tipo contenuto e impostarla su application/json.
Specificare il codice JSON seguente per Corpo.
{ "message": "@{activity('Copy1').output.dataWritten}", "dataFactoryName": "@{pipeline().DataFactory}", "pipelineName": "@{pipeline().Pipeline}", "receiver": "@pipeline().parameters.receiver" }Il corpo del messaggio contiene le proprietà seguenti:
Messaggio - Passa il valore di
@{activity('Copy1').output.dataWritten. Accede a una proprietà della precedente attività di copia e passa il valore di dataWritten. In caso di esito negativo, passa l'output di errore al posto di@{activity('CopyBlobtoBlob').error.message.Nome della Data Factory - Valore di passaggio di
@{pipeline().DataFactory}Questa è una variabile di sistema che consente di accedere al nome della data factory corrispondente. Per un elenco delle variabili di sistema, vedere l'articolo relativo alle variabili di sistema.Nome pipeline - Passa il valore di
@{pipeline().Pipeline}. È anche questa una variabile di sistema, che consente di accedere al nome di pipeline corrispondente.Destinatario - Passa il valore di "@pipeline().parameters.receiver"). Accesso ai parametri della pipeline.
Connettere l'attività Copy all'attività Web trascinando il pulsante della casella di controllo verde accanto al attività Copy ed eliminando l'attività Web.
Trascinare un'altra attività Web dalla casella degli strumenti Attività all'area di progettazione della pipeline e impostare nome su SendFailureEmailActivity.
Passare alla scheda Impostazioni e seguire questa procedura:
Per URL, specificare l'URL per il flusso di lavoro delle app logiche che invia l'email di errore.
Selezionare POST per Metodo.
Fare clic sul collegamento + Aggiungi intestazione nella sezione Intestazioni.
Aggiungere un'intestazione Tipo contenuto e impostarla su application/json.
Specificare il codice JSON seguente per Corpo.
{ "message": "@{activity('Copy1').error.message}", "dataFactoryName": "@{pipeline().DataFactory}", "pipelineName": "@{pipeline().Pipeline}", "receiver": "@pipeline().parameters.receiver" }
Selezionare il pulsante X rosso sul lato destro dell'attività Copia nel progettista di pipeline e trascinarlo sull'attività SendFailureEmailActivity appena creata.
Per convalidare la pipeline, fare clic sul pulsante Convalida sulla barra degli strumenti. Chiudere la finestra Pipeline Validation Output (Output di convalida della pipeline) facendo clic sul pulsante >>.
Per pubblicare le entità (set di dati, pipeline e così via) nel servizio Data Factory, selezionare Pubblica tutti. Attendere fino alla visualizzazione del messaggio Pubblicazione riuscita.
Attivare un'esecuzione della pipeline con esito positivo
Per attivare un'esecuzione della pipeline, fare clic su Trigger sulla barra degli strumenti e quindi su Trigger Now (Attiva adesso).
Nella finestra Pipeline Run (Esecuzioni di pipeline) seguire questa procedura:
Immettere adftutorial/adfv2branch/input per il parametro sourceBlobContainer.
Immettere adftutorial/adfv2branch/output per il parametro sinkBlobContainer.
Immettere un indirizzo di posta elettronica del destinatario.
Fare clic su Fine
Monitorare l'esecuzione della pipeline con esito positivo
Per monitorare l'esecuzione della pipeline, passa alla scheda Monitor a sinistra. Viene visualizzata l'esecuzione della pipeline attivata manualmente in precedenza. Usare il pulsante Aggiorna per aggiornare l'elenco.
Per visualizzare l'esecuzione delle attività associate a questa esecuzione della pipeline, fare clic sul primo collegamento nella colonna Azioni. È possibile tornare alla visualizzazione precedente facendo clic su Pipeline in alto. Usare il pulsante Aggiorna per aggiornare l'elenco.
Attivare un'esecuzione della pipeline con esito negativo
Passare alla scheda Modifica a sinistra.
Per attivare un'esecuzione della pipeline, fare clic su Trigger sulla barra degli strumenti e quindi su Trigger Now (Attiva adesso).
Nella finestra Pipeline Run (Esecuzioni di pipeline) seguire questa procedura:
- Immettere adftutorial/dummy/input per il parametro sourceBlobContainer. Assicurarsi che la cartella fittizia non esista nel contenitore adftutorial.
- Immettere adftutorial/dummy/output per il parametro sinkBlobContainer.
- Immettere un indirizzo di posta elettronica del destinatario.
- Fare clic su Fine.
Monitorare l'esecuzione della pipeline non riuscita
Per monitorare l'esecuzione della pipeline, selezionare la scheda Monitoraggio a sinistra. Viene visualizzata l'esecuzione della pipeline attivata manualmente in precedenza. Usare il pulsante Aggiorna per aggiornare l'elenco.
Fare clic sul collegamento Errore relativo all'esecuzione della pipeline per visualizzare i dettagli dell'errore.
Per visualizzare le esecuzioni delle attività associate a questa esecuzione della pipeline, fare clic sul primo collegamento della colonna Azioni. Usare il pulsante Aggiorna per aggiornare l'elenco. Si noti che l'attività di copia nella pipeline non è riuscita. L'attività Web è riuscita a inviare il messaggio di posta elettronica di errore al destinatario specificato.
Fare clic sul collegamento Errore nella colonna Azioni per visualizzare informazioni dettagliate sull'errore.
Contenuto correlato
In questa esercitazione sono stati eseguiti i passaggi seguenti:
- Creare una fabbrica di dati.
- Creare un servizio collegato Archiviazione di Azure.
- Creare un set di dati BLOB Azure
- Creare una pipeline contenente un'attività di copia e un'attività Web
- Inviare gli output delle attività alle attività successive
- Utilizzare il passaggio di parametri e le variabili di sistema
- Avviare un'esecuzione della pipeline
- Monitorare le esecuzioni di pipeline e attività
È ora possibile passare alla sezione Concetti per altre informazioni sulle Azure Data Factory.