Condividi tramite


Copiare in modo sicuro i dati da Archiviazione Blob di Azure a un database SQL utilizzando endpoint privati

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 data factory usando l'interfaccia utente Azure Data Factory. La pipeline in questa data factory copia i dati in sicurezza dall'archiviazione BLOB di Azure a un database SQL di Azure, consentendo l'accesso solo alle reti selezionate, usando endpoint privati nella rete virtuale gestita di Azure Data Factory. Il modello di configurazione di questa esercitazione si applica alla copia da un archivio dati basato su file a un archivio dati relazionale. Per un elenco degli archivi dati supportati come origini e sink, vedere la tabella Archivi dati e formati supportati. La funzionalità degli endpoint privati è disponibile in tutti i livelli di Azure Data Factory, quindi non è necessario alcun livello specifico per usarle. Per ulteriori dettagli sui prezzi e sui livelli, consultare la pagina dei prezzi di Azure Data Factory.

Nota

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

In questa esercitazione vengono completati i passaggi seguenti:

  • Creare una fabbrica di dati.
  • Creare una pipeline con un'attività di copia.

Prerequisiti

  • sottoscrizione Azure. Se non si ha una sottoscrizione Azure, creare un account free Azure prima di iniziare.
  • un account di archiviazione di Azure. Come archivio dati di origine si usa un archivio BLOB. Se non si ha un account di archiviazione, vedere Creare un account di archiviazione Azure per la procedura per crearne uno. Assicurarsi che l'account di archiviazione consenta l'accesso solo da reti selezionate.
  • database SQL di Azure. Il database viene usato come archivio dati sink. Se non si dispone di un database Azure SQL, vedere Creare un database SQL per la procedura per crearne una. Assicurarsi che l'account del database SQL di Azure consenta l'accesso solo da reti selezionate.

Creare un BLOB e una tabella SQL

Ora, prepara il tuo archivio BLOB e il database SQL per l'esercitazione eseguendo i passaggi seguenti.

Creare un BLOB di origine

  1. Aprire il Blocco note. Copiare il testo seguente e salvarlo come file emp.txt sul disco:

    FirstName,LastName
    John,Doe
    Jane,Doe
    
  2. Creare un contenitore denominato adftutorial nell'archivio BLOB. Creare una cartella denominata input in questo contenitore. Caricare quindi il file emp.txt nella cartella input. Usare il portale di Azure o gli strumenti, ad esempio Azure Storage Explorer per eseguire queste attività.

Creare una tabella SQL sink

Usare lo script SQL seguente per creare la tabella dbo.emp nel database SQL:

CREATE TABLE dbo.emp
(
    ID int IDENTITY(1,1) NOT NULL,
    FirstName varchar(50),
    LastName varchar(50)
)
GO

CREATE CLUSTERED INDEX IX_emp_ID ON dbo.emp (ID);

Creare una data factory

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

  1. Aprire Microsoft Edge o Google Chrome. Attualmente, solo Microsoft Edge e i Web browser Google Chrome supportano l'interfaccia utente di Data Factory.

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

  3. Nella pagina Nuova data factory, sotto Nome, immettere ADFTutorialDataFactory.

    Il nome della data factory Azure deve essere globalmente univoco. 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 subscription in cui si vuole creare la fabbrica di dati.

  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 Usare i gruppi di risorse per gestire le risorse 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 il database SQL) 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 Open nel riquadro Apri Azure Data Factory Studio per avviare l'interfaccia utente di Data Factory in una scheda separata.

Creare un runtime di integrazione Azure in Data Factory Managed Rete virtuale

In questo passaggio si crea un runtime di integrazione 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 Azure.

    Screenshot che mostra la creazione di un nuovo runtime di integrazione Azure.

  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 Continue.

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

    Screenshot che mostra un nuovo runtime di integrazione Azure.

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

    Screenshot che mostra come abilitare un nuovo runtime di integrazione Azure.

  5. Seleziona Crea.

Creare una pipeline

In questo passaggio si crea una pipeline con un'attività di copia nella data factory. L'attività di copia trasferisce dati da Blob storage al database SQL. Nel Quickstart tutorial, hai creato una pipeline seguendo questi passaggi:

  1. Creazione del servizio collegato.
  2. Creazione dei set di dati di input e di output.
  3. Creare una pipeline.

In questa esercitazione si inizia creando una pipeline. quindi si creano i servizi collegati e i set di dati quando risultano necessari per la configurazione della pipeline.

  1. Nella home page selezionare Esegui orchestrazione.

    Screenshot che mostra la home page della data factory con il pulsante Orchestrate evidenziato.

  2. Nel riquadro Proprietà per la pipeline immettere CopyPipeline per il nome della pipeline.

  3. Nella casella degli strumenti Attività espandere la categoria Move and Transform (Sposta e trasforma) e trascinare l'attività Copia dati dalla casella degli strumenti all'area di progettazione della pipeline. Immettere CopyFromBlobToSql per il nome.

    Screenshot che mostra l'attività di copia.

Configurare una sorgente

Suggerimento

In questa esercitazione si usa Chiave dell'account come tipo di autenticazione per l'archivio dati di origine. È anche possibile scegliere altri metodi di autenticazione supportati, ad esempio URI SAS,Entità servizio e Identità gestita se necessario. Per altre informazioni, vedere le sezioni corrispondenti in Copy e trasformare i dati nell'archivio BLOB Azure usando Azure Data Factory.

Per archiviare i segreti per gli archivi dati in modo sicuro, è consigliabile usare anche Azure Key Vault. Per altre informazioni e illustrazioni, vedere Store credentials in Azure Key Vault.

Creare il set di dati di origine e il servizio collegato

  1. Passare alla scheda Origine. Selezionare + Nuovo per creare un set di dati di origine.

  2. Nella finestra di dialogo Nuovo set di dati selezionare Archiviazione BLOB di Azure e quindi selezionare Continue. I dati di origine si trovano nell'archivio BLOB, quindi è possibile selezionare Archiviazione BLOB di Azure per il set di dati di origine.

  3. Nella finestra di dialogo Selezionare il formato selezionare il tipo di formato dei dati e quindi fare clic su Continua.

  4. Nella finestra di dialogo Imposta proprietà immettere SourceBlobDataset in Nome. Selezionare la casella di controllo Prima riga come intestazione. Selezionare + Nuovo accanto alla casella di testo Servizio collegato.

  5. Nella finestra di dialogo Nuovo servizio collegato (Archiviazione BLOB di Azure) immettere AzureStorageLinkedService come Name e selezionare l'account di archiviazione dall'elenco Nome account di archiviazione.

  6. Assicurarsi di abilitare Creazione interattiva. L'abilitazione potrebbe richiedere circa un minuto.

    Screenshot che mostra la creazione interattiva.

  7. Selezionare Verifica connessione. L'operazione dovrebbe avere esito negativo se l'account di archiviazione consente l'accesso solo da Reti selezionate e richiede che Data Factory crei un endpoint privato che deve essere approvato prima dell'uso. Nel messaggio di errore verrà visualizzato un collegamento che è possibile seguire per creare un endpoint privato gestito. In alternativa, è possibile passare direttamente alla scheda Gestisci e seguire le istruzioni della sezione successiva per creare un endpoint privato gestito.

    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.

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

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

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

  11. Al termine della creazione del servizio collegato si tornerà alla pagina Imposta proprietà. Selezionare Sfoglia accanto a Percorso file.

  12. Passare alla cartella adftutorial/input, selezionare il file emp.txt e quindi selezionare OK.

  13. Seleziona OK. Si passerà automaticamente alla pagina della pipeline. Nella scheda Origine verificare che sia selezionato il set di dati SourceBlobDataset. Per visualizzare l'anteprima dei dati in questa pagina, selezionare Anteprima dati.

    Screenshot che mostra il set di dati di origine.

Creare un endpoint privato gestito

Se non è stato selezionato il collegamento ipertestuale durante il test della connessione, 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 che mostra il pulsante Nuovo degli Endpoint privati gestiti.

  4. Selezionare il riquadro Archiviazione BLOB di Azure dall'elenco e selezionare Continue.

  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 che mostra il riquadro Managed private endpoint (Endpoint privato gestito).

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

  2. Selezionare la casella di controllo per l'endpoint privato creato e selezionare Approva.

    Screenshot che mostra il pulsante Approva per l'endpoint privato.

  3. Aggiungere una descrizione e selezionare .

  4. Tornare alla sezione Managed private endpoints della scheda Gestisci in Data Factory.

  5. Dopo un paio di minuti dovrebbe essere visualizzata l'approvazione dell'endpoint privato nell'interfaccia utente di Data Factory.

Configurare un sink

Suggerimento

In questa esercitazione si userà Autenticazione SQL come tipo di autenticazione per l'archivio dati sink. È anche possibile scegliere altri metodi di autenticazione supportati, ad esempio Entità servizio e Identità gestita se necessario. Per altre informazioni, vedere le sezioni corrispondenti in Copy e trasformare i dati in database SQL di Azure usando Azure Data Factory.

Per archiviare i segreti per gli archivi dati in modo sicuro, è consigliabile usare anche Azure Key Vault. Per altre informazioni e illustrazioni, vedere Store credentials in Azure Key Vault.

Creare un set di dati sink e un servizio collegato

  1. Passare alla scheda Sink e selezionare + Nuovo per creare un set di dati sink.

  2. Nella finestra di dialogo Nuovo set di dati immettere SQL nella casella di ricerca per filtrare i connettori. Selezionare database SQL di Azure e quindi selezionare Continue. In questa esercitazione si copiano i dati in un database SQL.

  3. Nella finestra di dialogo Imposta proprietà immettere OutputSqlDataset in Nome. Nell'elenco a discesa Servizio collegato selezionare + Nuovo. È necessario associare un set di dati a un servizio collegato. Il servizio collegato ha il stringa di connessione usato da Data Factory per connettersi al database SQL in fase di esecuzione. Il set di dati specifica il contenitore, la cartella e il file (facoltativo) in cui vengono copiati i dati.

  4. Nella finestra di dialogo Nuovo servizio collegato (database SQL di Azure) seguire questa procedura:

    1. In Nome immettere AzureSqlDatabaseLinkedService.
    2. In Nome server selezionare l'istanza di SQL Server.
    3. Assicurarsi di abilitare Creazione interattiva.
    4. In Nome database selezionare il database SQL.
    5. In Nome utente immettere il nome dell'utente.
    6. In Password immettere la password dell'utente.
    7. Selezionare Verifica connessione. Il test dovrebbe avere esito negativo perché il server SQL consente l'accesso solo da Reti selezionate e richiede che Data Factory crei un endpoint privato che deve essere approvato prima dell'uso. Nel messaggio di errore verrà visualizzato un collegamento che è possibile seguire per creare un endpoint privato gestito. In alternativa, è possibile passare direttamente alla scheda Gestisci e seguire le istruzioni della sezione successiva per creare un endpoint privato gestito.
    8. Tenere aperta la finestra di dialogo e quindi passare al server SQL selezionato.
    9. Seguire le istruzioni riportate in questa sezione per approvare il collegamento privato.
    10. Tornare nella finestra di dialogo. Selezionare di nuovo Test connessione e selezionare Crea per distribuire il servizio collegato.
  5. Si passerà automaticamente alla finestra di dialogo Imposta proprietà. In Tabella selezionare [dbo].[emp]. Quindi, selezionare OK.

  6. Passare alla scheda con la pipeline e verificare che in Sink Dataset (Set di dati sink) sia selezionato OutputSqlDataset.

    Screenshot che mostra la scheda Pipeline.

Facoltativamente, è possibile eseguire il mapping dello schema dell'origine allo schema corrispondente della destinazione seguendo le indicazioni riportate in Mapping dello schema nell'attività di copia.

Creare un endpoint privato gestito

Se non è stato selezionato il collegamento ipertestuale durante il test della connessione, seguire il percorso. A questo punto è necessario creare un endpoint privato gestito che verrà connesso al servizio collegato creato.

  1. Passare alla scheda Gestisci.

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

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

    Screenshot che mostra il pulsante Nuovo degli Endpoint privati gestiti.

  4. Selezionare il riquadro database SQL di Azure dall'elenco e selezionare Continue.

  5. Immettere il nome del server SQL selezionato.

  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 server SQL.

  1. Nel server SQL passare a Connessioni a endpoint privato nella sezione Impostazioni.
  2. Selezionare la casella di controllo per l'endpoint privato creato e selezionare Approva.
  3. Aggiungere una descrizione e selezionare .
  4. Tornare alla sezione Managed private endpoints della scheda Gestisci in Data Factory.
  5. L'approvazione per l'endpoint privato dovrebbe essere visualizzata nel giro di un paio di minuti.

Eseguire il debug della pipeline e pubblicarla

È possibile eseguire il debug di una pipeline prima di pubblicare elementi (servizi collegati, set di dati e pipeline) in Data Factory o nel proprio repository Git Azure Repos.

  1. Per eseguire il debug della pipeline, selezionare Debug sulla barra degli strumenti. Lo stato dell'esecuzione della pipeline verrà visualizzato nella scheda Output nella parte inferiore della finestra.
  2. Quando è possibile eseguire correttamente la pipeline, nella barra degli strumenti superiore selezionare Pubblica tutto. Questa azione pubblica le entità create (set di dati e pipeline) in Data Factory.
  3. Attendere fino alla visualizzazione del messaggio Pubblicazione riuscita. Per visualizzare i messaggi di notifica, selezionare Mostra notifiche nell'angolo superiore destro (pulsante a forma di campanello).

Riepilogo

La pipeline in questo esempio copia i dati dall'Archiviazione Blob al database SQL utilizzando endpoint privati nella rete virtuale gestita da Data Factory. Si è appreso come:

  • Creare una fabbrica di dati.
  • Creare una pipeline con un'attività di copia.