Copiare in blocco da un database ad Azure Esplora dati usando il modello di Azure Data Factory

Azure Esplora dati è un servizio di analisi dei dati rapido e completamente gestito. Offre un'analisi in tempo reale su grandi volumi di dati trasmessi da molte origini, ad esempio applicazioni, siti Web e dispositivi IoT.

Per copiare dati da un database in Oracle Server, Netezza, Teradata o SQL Server in Azure Esplora dati, è necessario caricare grandi quantità di dati da più tabelle. I dati in genere devono essere partizionati in ogni tabella, in modo che sia possibile caricare righe con più thread in parallelo da una singola tabella. Questo articolo descrive un modello da usare in questi scenari.

I modelli di Azure Data Factory sono pipeline predefinite di Data Factory. Questi modelli consentono di iniziare rapidamente a usare Data Factory e ridurre i tempi di sviluppo nei progetti di integrazione dei dati.

È possibile creare il modello Copia bulk dal database ad Azure Esplora dati usando le attività Lookup e ForEach. Per una copia più rapida dei dati, è possibile usare il modello per creare molte pipeline per database o per tabella.

Importante

Assicurarsi di usare lo strumento appropriato per la quantità di dati che si desidera copiare.

  • Usare il modello Copia bulk dal database ad Azure Esplora dati per copiare grandi quantità di dati da database come SQL Server e Google BigQuery in Azure Esplora dati.
  • Usare lo strumento Copia dati di Data Factory per copiare alcune tabelle con piccole o moderate quantità di dati in Azure Esplora dati.

Prerequisiti

Creare ControlTableDataset

ControlTableDataset indica quali dati verranno copiati dall'origine alla destinazione nella pipeline. Il numero di righe indica il numero totale di pipeline necessarie per copiare i dati. È necessario definire ControlTableDataset come parte del database di origine.

Un esempio del formato di tabella di origine di SQL Server è illustrato nel codice seguente:

CREATE TABLE control_table (
PartitionId int,
SourceQuery varchar(255),
ADXTableName varchar(255)
);

Gli elementi di codice sono descritti nella tabella seguente:

Proprietà Descrizione Esempio
PartitionId Ordine di copia 1
SourceQuery Query che indica quali dati verranno copiati durante il runtime della pipeline
select * from table where lastmodifiedtime LastModifytime >= ''2015-01-01 00:00:00''>
ADXTableName Nome della tabella di destinazione MyAdxTable

Se l'oggetto ControlTableDataset è in un formato diverso, creare un oggetto ControlTableDataset paragonabile per il formato.

Usare il modello Copia bulk dal database ad Azure Esplora dati

  1. Nel riquadro Attività iniziali selezionare Crea pipeline dal modello per aprire il riquadro Raccolta modelli.

    Riquadro

  2. Selezionare il modello Copia bulk dal database ad Azure Esplora dati.

    Modello

  3. Nel riquadro Copia bulk da database ad Azure Esplora dati, in Input utente specificare i set di dati eseguendo le operazioni seguenti:

    a. Nell'elenco a discesa ControlTableDataset selezionare il servizio collegato nella tabella di controllo che indica quali dati vengono copiati dall'origine alla destinazione e dove verranno inseriti nella destinazione.

    b. Nell'elenco a discesa SourceDataset selezionare il servizio collegato al database di origine.

    c. Nell'elenco a discesa AzureDataExplorerTable selezionare la tabella Esplora dati di Azure. Se il set di dati non esiste, creare il servizio collegato di Azure Esplora dati per aggiungere il set di dati.

    d. Selezionare Usa questo modello.

    Riquadro

  4. Selezionare un'area nell'area di disegno, all'esterno delle attività, per accedere alla pipeline del modello. Selezionare la scheda Parametri per immettere i parametri per la tabella, inclusi Nome (nome tabella di controllo) e Valore predefinito (nomi di colonna).

    Parametri della pipeline.

  5. In Ricerca selezionare GetPartitionList per visualizzare le impostazioni predefinite. La query viene creata automaticamente.

  6. Selezionare l'attività Comando ForEachPartition, selezionare la scheda Impostazioni e quindi eseguire le operazioni seguenti:

    a. Nella casella Conteggio batch immettere un numero compreso tra 1 e 50. Questa selezione determina il numero di pipeline eseguite in parallelo finché non viene raggiunto il numero di righe ControlTableDataset .

    b. Per assicurarsi che i batch della pipeline vengano eseguiti in parallelo, non selezionare la casella di controllo Sequenziale .

    Impostazioni forEachPartition.

    Suggerimento

    La procedura consigliata consiste nell'eseguire molte pipeline in parallelo in modo che i dati possano essere copiati più rapidamente. Per aumentare l'efficienza, partizionare i dati nella tabella di origine e allocare una partizione per ogni pipeline, in base alla data e alla tabella.

  7. Selezionare Convalida tutto per convalidare la pipeline di Azure Data Factory e quindi visualizzare il risultato nel riquadro Output convalida pipeline.

    Convalidare le pipeline di modelli.

  8. Se necessario, selezionare Debug e quindi selezionare Aggiungi trigger per eseguire la pipeline.

    Pulsanti

È ora possibile usare il modello per copiare in modo efficiente grandi quantità di dati dai database e dalle tabelle.