Usare l Azure Data Factory di comando per eseguire Esplora dati di Azure comandi di controllo

Azure Data Factory (ADF) è un servizio di integrazione dei dati basato sul cloud che consente di eseguire una combinazione di attività sui dati. Usare AdF per creare flussi di lavoro basati sui dati per orchestrare e automatizzare lo spostamento e la trasformazione dei dati. L Esplora dati di Azure'attività Command in Azure Data Factory consente di eseguire Esplora dati di Azure comandi di controllo all'interno di un flusso di lavoro di AdF. Questo articolo illustra come creare una pipeline con un'attività di ricerca e un'attività ForEach contenente un'attività Esplora dati di Azure comando.

Prerequisiti

Creare una nuova pipeline

  1. Selezionare lo strumento a forma di matita Crea.

  2. Creare una nuova pipeline selezionando + e quindi selezionare + dall'elenco a discesa.

    creare una nuova pipeline.

Creare un'attività Ricerca

Un'attività di ricerca può recuperare un set di dati da Azure Data Factory origini dati supportate. L'output dell'attività Lookup può essere usato in un'attività ForEach o in un'altra attività.

  1. Nel riquadro Attività selezionare l'attivitàCerca in Generale. Trascinarlo e rilasciarlo nell'area di disegno principale a destra.

    Selezionare l'attività di ricerca.

  2. L'area di disegno contiene ora l'attività Ricerca creata. Usare le schede sotto l'area di disegno per modificare i parametri pertinenti. In Generalerinominare l'attività.

    Modificare l'attività di ricerca.

    Suggerimento

    Fare clic sull'area di disegno vuota per visualizzare le proprietà della pipeline. Usare la scheda Generale per rinominare la pipeline. La pipeline è denominata pipeline-4-docs.

Creare un set Esplora dati di Azure set di dati nell'attività di ricerca

  1. In Impostazioniselezionare il set di dati di origine Esplora dati di Azure creato in precedenza oppure selezionare + Nuovo per creare un nuovo set di dati.

    aggiungere il set di dati nelle impostazioni di ricerca.

  2. Selezionare il set Esplora dati di Azure (Kusto) nella finestra Nuovo set di dati. Selezionare Continua per aggiungere il nuovo set di dati.

    Selezionare il nuovo set di dati.

  3. I nuovi parametri Esplora dati di Azure set di dati sono visibili in Impostazioni. Per aggiornare i parametri, selezionare Modifica.

    impostazioni di ricerca con Esplora dati di Azure set di dati.

  4. La nuova scheda AzureDataExplorerTable viene aperta nell'area di disegno principale.

    • Selezionare Generale e modificare il nome del set di dati.
    • Selezionare Connessione per modificare le proprietà del set di dati.
    • Selezionare il servizio collegato dall'elenco a discesa oppure selezionare + Nuovo per creare un nuovo servizio collegato.

    Modificare le Esplora dati di Azure set di dati.

  5. Quando si crea un nuovo servizio collegato, viene visualizzata la pagina Nuovo Esplora dati di Azure collegato:

    Nuovo servizio collegato ADX.

    • Selezionare Nome per Esplora dati di Azure servizio collegato. Se necessario, aggiungere Descrizione.
    • In Connessione runtime di integrazionemodificare le impostazioni correnti, se necessario.
    • In Metodo di selezione dell'account selezionare il cluster usando uno dei due metodi seguenti:
      • Selezionare il pulsante di opzione From Azure subscription (Da sottoscrizione di Azure) e selezionare l'account della sottoscrizione di Azure. Selezionare quindi il cluster. Si noti che l'elenco a discesa elenca solo i cluster che appartengono all'utente.
      • Selezionare invece il pulsante di opzione Enter manually (Immetti manualmente) e immettere l'endpoint (URL del cluster).
    • Specificare il tenant.
    • Immettere l'ID entità servizio. L'ID entità di sicurezza deve avere le autorizzazioni appropriate, in base al livello di autorizzazione richiesto dal comando in uso.
    • Selezionare il pulsante Chiave entità servizio e immettere Chiave entità servizio.
    • Selezionare il database dal menu a discesa. In alternativa, selezionare la casella di controllo Modifica e immettere il nome del database.
    • Selezionare Test connessione per testare la connessione al servizio collegato creata. Se è possibile connettersi alla configurazione, verrà visualizzato un segno di spunta verde Connessione riuscita.
    • Selezionare Fine per completare la creazione del servizio collegato.
  6. Dopo aver configurato un servizio collegato, in AzureDataExplorerTable > Connessioneaggiungere Nome tabella. Selezionare Anteprima datiper assicurarsi che i dati siano presentati correttamente.

    Il set di dati è ora pronto ed è possibile continuare a modificare la pipeline.

Aggiungere una query all'attività di ricerca

  1. In pipeline-4-docs Impostazioniuna query nella casella di testo Query, ad esempio:

    ClusterQueries
    | where Database !in ("KustoMonitoringPersistentDatabase", "$systemdb")
    | summarize count() by Database
    
  2. Modificare le proprietà Timeout query o Nessun troncamento e Solo prima riga, in base alle esigenze. In questo flusso si mantiene il valore predefinito Timeout query e si deselezionano le caselle di controllo.

    Impostazioni finali dell'attività di ricerca.

Creare un'For-Each personalizzata

L'attività For-Each viene usata per scorrere una raccolta ed eseguire le attività specificate in un ciclo.

  1. A questo punto si aggiunge For-Each'attività di distribuzione alla pipeline. Questa attività eelaborare i dati restituiti dall'attività Lookup.

    • Nel riquadro Attività, in Istruzioni condizionali di iterazione,selezionare l'attività ForEach e trascinarla nell'area di disegno.

    • Disegnare una linea tra l'output dell'attività Lookup e l'input dell'attività ForEach nell'area di disegno per connetterli.

      Attività ForEach.

  2. Selezionare l'attività ForEach nell'area di disegno. Nella scheda Impostazioni seguente:

    • Selezionare la casella di controllo Sequenziale per un'elaborazione sequenziale dei risultati della ricerca oppure lasciare deselezionata l'opzione per creare l'elaborazione parallela.

    • Impostare Conteggio batch.

    • In Elementispecificare il riferimento seguente al valore di output: @activity('Lookup1').output.value

      Impostazioni dell'attività ForEach.

Creare un'Esplora dati di Azure command all'interno dell'attività ForEach

  1. Fare doppio clic sull'attività ForEach nell'area di disegno per aprirla in un nuovo canvas per specificare le attività all'interno di ForEach.

  2. Nel riquadro Attività,inEsplora dati di Azure , selezionare l'attività Esplora dati di Azure Comando e trascinarla nell'area di disegno.

    Esplora dati di Azure'attività del comando.

  3. Nella scheda Connessione selezionare lo stesso servizio collegato creato in precedenza.

    Scheda di connessione dell'attività di comando di Esplora dati di Azure.

  4. Nella scheda Comando specificare il comando seguente:

    .export
    async compressed
    into csv h"http://<storageName>.blob.core.windows.net/data/ClusterQueries;<storageKey>" with (
    sizeLimit=100000,
    namePrefix=export
    )
    <| ClusterQueries | where Database == "@{item().Database}"
    

    Il comando indica Esplora dati di Azure esportare i risultati di una determinata query in un archivio BLOB, in un formato compresso. Viene eseguito in modo asincrono (usando il modificatore async). La query fa riferimento alla colonna di database di ogni riga nel risultato dell'attività Ricerca. Il timeout del comando può essere lasciato invariato.

    attività di comando.

    Nota

    L'attività del comando presenta i limiti seguenti:

    • Limite dimensioni: dimensioni della risposta di 1 MB
    • Limite di tempo: 20 minuti (impostazione predefinita), 1 ora (massimo).
    • Se necessario, è possibile aggiungere una query al risultato usando AdminThenQueryper ridurre le dimensioni e il tempo risultanti.
  5. A questo punto la pipeline è pronta. È possibile tornare alla visualizzazione della pipeline principale facendo clic sul nome della pipeline.

    Esplora dati di Azure pipeline di comandi.

  6. Selezionare Debug prima di pubblicare la pipeline. Lo stato della pipeline può essere monitorato nella scheda Output.

    output dell'attività di comando di Esplora dati di Azure.

  7. È possibile pubblicare tutti e quindi aggiungere trigger per eseguire la pipeline.

Controllare gli output dei comandi

La struttura dell'output dell'attività del comando è illustrata in dettaglio di seguito. Questo output può essere usato dall'attività successiva nella pipeline.

Valore restituito di un comando di controllo non asincrono

In un comando di controllo non asincrono la struttura del valore restituito è simile alla struttura del risultato dell'attività Lookup. Il count campo indica il numero di record restituiti. Un campo di matrice value fisso contiene un elenco di record.

{ 
    "count": "2", 
    "value": [ 
        { 
            "ExtentId": "1b9977fe-e6cf-4cda-84f3-4a7c61f28ecd", 
            "ExtentSize": 1214.0, 
            "CompressedSize": 520.0 
        }, 
        { 
            "ExtentId": "b897f5a3-62b0-441d-95ca-bf7a88952974", 
            "ExtentSize": 1114.0, 
            "CompressedSize": 504.0 
        } 
    ] 
} 

Valore restituito di un comando di controllo asincrono

In un comando di controllo asincrono, l'attività esegue il polling della tabella delle operazioni in background, fino al completamento o al timeout dell'operazione asincrona. Pertanto, il valore restituito conterrà il risultato di .show operations OperationId per la proprietà .show operations OperationId specificata. Controllare i valori delle proprietà Statee Status per verificare il corretto completamento dell'operazione.

{ 
    "count": "1", 
    "value": [ 
        { 
            "OperationId": "910deeae-dd79-44a4-a3a2-087a90d4bb42", 
            "Operation": "TableSetOrAppend", 
            "NodeId": "", 
            "StartedOn": "2019-06-23T10:12:44.0371419Z", 
            "LastUpdatedOn": "2019-06-23T10:12:46.7871468Z", 
            "Duration": "00:00:02.7500049", 
            "State": "Completed", 
            "Status": "", 
            "RootActivityId": "f7c5aaaf-197b-4593-8ba0-e864c94c3c6f", 
            "ShouldRetry": false, 
            "Database": "MyDatabase", 
            "Principal": "<some principal id>", 
            "User": "<some User id>" 
        } 
    ] 
}

Passaggi successivi