Share via


Esercitazione: Configurare un batch di prodotti dati

Questa esercitazione illustra come configurare i servizi di prodotto dati già distribuiti. Usare Azure Data Factory per integrare e orchestrare i dati e usare Microsoft Purview per individuare, gestire e gestire gli asset di dati.

Scopri come:

  • Creare e distribuire le risorse necessarie
  • Assegnare ruoli e autorizzazioni di accesso
  • Connessione risorse per l'integrazione dei dati

Questa esercitazione consente di acquisire familiarità con i servizi distribuiti nel <DMLZ-prefix>-dev-dp001 gruppo di risorse prodotto dati di esempio. Sperimentare l'interfaccia dei servizi di Azure tra loro e quali misure di sicurezza sono disponibili.

Quando si distribuiscono i nuovi componenti, si avrà la possibilità di esaminare il modo in cui Purview connette la governance dei servizi per creare una mappa olistica e aggiornata del panorama dei dati. Il risultato è l'individuazione automatica dei dati, la classificazione dei dati sensibili e la derivazione dei dati end-to-end.

Prerequisiti

Prima di iniziare a configurare il batch di prodotti dati, assicurarsi di soddisfare questi prerequisiti:

  • Abbonamento di Azure. Se non si ha una sottoscrizione di Azure, creare subito l'account Azure gratuito.

  • Autorizzazioni per la sottoscrizione di Azure. Per configurare Purview e Azure Synapse Analytics per la distribuzione, è necessario avere il ruolo Accesso utenti Amministrazione istrator o il ruolo Proprietario nella sottoscrizione di Azure. Nell'esercitazione verranno impostate più assegnazioni di ruolo per i servizi e le entità servizio.

  • Risorse distribuite. Per completare l'esercitazione, queste risorse devono essere già distribuite nella sottoscrizione di Azure:

    • Zona di destinazione per la gestione dei dati. Per altre informazioni, vedere il repository GitHub della zona di destinazione della gestione dei dati.
    • Zona di destinazione dei dati. Per altre informazioni, vedere il repository GitHub della zona di destinazione dei dati.
    • Batch di prodotti dati. Per altre informazioni, vedere il repository GitHub del batch di prodotti dati.
  • Account Microsoft Purview. L'account viene creato come parte della distribuzione della zona di destinazione della gestione dei dati.

  • Runtime di integrazione self-hosted. Il runtime viene creato come parte della distribuzione della zona di destinazione dei dati.

Nota

In questa esercitazione i segnaposto fanno riferimento alle risorse prerequisite distribuite prima di iniziare l'esercitazione:

  • <DMLZ-prefix> fa riferimento al prefisso immesso al momento della creazione della distribuzione della zona di destinazione della gestione dei dati.
  • <DLZ-prefix> fa riferimento al prefisso immesso al momento della creazione della distribuzione della zona di destinazione dei dati.
  • <DP-prefix> fa riferimento al prefisso immesso al momento della creazione della distribuzione batch del prodotto dati.

Creare istanze di database SQL di Azure

Per iniziare questa esercitazione, creare due istanze di esempio database SQL. I database verranno usati per simulare origini dati CRM e ERP nelle sezioni successive.

  1. Nel portale di Azure, nei controlli globali del portale selezionare l'icona di Cloud Shell per aprire un terminale di Azure Cloud Shell. Selezionare Bash per il tipo di terminale.

    Screenshot that shows the Cloud Shell icon in the Azure portal.

  2. In Cloud Shell eseguire lo script seguente. Lo script trova il <DLZ-prefix>-dev-dp001 gruppo di risorse e il <DP-prefix>-dev-sqlserver001 server SQL di Azure nel gruppo di risorse. Lo script crea quindi le due istanze di database SQL nel <DP-prefix>-dev-sqlserver001 server. I database vengono prepopolati con i dati di esempio AdventureWorks. I dati includono le tabelle usate in questa esercitazione.

    Assicurarsi di sostituire il valore segnaposto del subscription parametro con il proprio ID sottoscrizione di Azure.

    # Azure SQL Database instances setup
    # Create the AdatumCRM and AdatumERP databases to simulate customer and sales data.
    
    # Use the ID for the Azure subscription you used to deployed the data product.
    az account set --subscription "<your-subscription-ID>"
    
    # Get the resource group for the data product.
    resourceGroupName=$(az group list -o tsv  --query "[?contains(@.name, 'dp001')==\`true\`].name")
    
    # Get the existing Azure SQL Database server name.
    sqlServerName=$(az sql server list -g $resourceGroupName -o tsv  --query "[?contains(@.name, 'sqlserver001')==\`true\`].name")
    
    # Create the first SQL Database instance, AdatumCRM, to create the customer's data source.
    az sql db create --resource-group $resourceGroupName --server $sqlServerName --name AdatumCRM --service-objective Basic --sample-name AdventureWorksLT
    
    # Create the second SQL Database instance, AdatumERP, to create the sales data source.
    az sql db create --resource-group $resourceGroupName --server $sqlServerName --name AdatumERP --service-objective Basic --sample-name AdventureWorksLT
    

Al termine dell'esecuzione dello script, nel <DP-prefix>-dev-sqlserver001 server SQL di Azure sono disponibili due nuove istanze AdatumCRM di database SQL e AdatumERP. Entrambi i database si trovano nel livello di calcolo Basic. I database si trovano nello stesso <DLZ-prefix>-dev-dp001 gruppo di risorse usato per distribuire il batch di prodotti dati.

Configurare Purview per catalogare il batch di prodotti dati

Completare quindi i passaggi per configurare Purview per catalogare il batch di prodotti dati. Per iniziare, creare un'entità servizio. Quindi, si configurano le risorse necessarie e si assegnano ruoli e autorizzazioni di accesso.

Creare un'entità servizio

  1. Nel portale di Azure, nei controlli globali del portale selezionare l'icona di Cloud Shell per aprire un terminale di Azure Cloud Shell. Selezionare Bash per il tipo di terminale.

  2. Rivedere lo script seguente:

    • Sostituire il valore segnaposto del subscriptionId parametro con il proprio ID sottoscrizione di Azure.
    • Sostituire il valore segnaposto del spname parametro con il nome da usare per l'entità servizio. Il nome dell'entità servizio deve essere univoco nella sottoscrizione.

    Dopo aver aggiornato i valori dei parametri, eseguire lo script in Cloud Shell.

    # Replace the parameter values with the name you want to use for your service principal name and your Azure subscription ID.
    spname="<your-service-principal-name>"
    subscriptionId="<your-subscription-id>"
    
    # Set the scope to the subscription.
    scope="/subscriptions/$subscriptionId"
    
    # Create the service principal.
    az ad sp create-for-rbac \
      --name $spname \
      --role "Contributor" \
      --scope $scope
    
  3. Controllare l'output JSON per ottenere un risultato simile all'esempio seguente. Prendere nota o copiare i valori nell'output da usare nei passaggi successivi.

    {
      "appId": "<your-app-id>",
      "displayName": "<service-principal-display-name>",
      "name": "<your-service-principal-name>",
      "password": "<your-service-principal-password>",
      "tenant": "<your-tenant>"
    }
    

Configurare l'accesso e le autorizzazioni dell'entità servizio

Dall'output JSON generato nel passaggio precedente, ottenere i valori restituiti seguenti:

  • ID entità servizio (appId)
  • chiave dell'entità servizio (password)

L'entità servizio deve avere le autorizzazioni seguenti:

  • Archiviazione ruolo Lettore dati BLOB negli account di archiviazione.
  • Autorizzazioni di lettura dati per le istanze di database SQL.

Per configurare l'entità servizio con il ruolo e le autorizzazioni necessarie, completare i passaggi seguenti.

Archiviazione di Azure autorizzazioni dell'account

  1. Nel portale di Azure passare all'account <DLZ-prefix>devraw Archiviazione di Azure. Nel menu delle risorse selezionare Controllo di accesso (IAM).

    Screenshot that shows the storage account service principal permissions pane, with Access Control highlighted.

  2. Seleziona Aggiungi>Aggiungi assegnazione ruolo.

    Screenshot that shows the storage account service principal Access Control pane that shows how to add a role assignment.

  3. Nella scheda Ruolo della scheda Aggiungi assegnazione di ruolo cercare e selezionare Archiviazione Lettore dati BLOB. Quindi, seleziona Avanti.

    Screenshot that shows searching for Storage Blob Data Reader under Add role assignment.

  4. In Membri scegliere Seleziona membri.

    Screenshot that shows select members pane under add role assignment.

  5. In Seleziona membri cercare il nome dell'entità servizio creata.

    Screenshot that shows how to search for a service principal name.

  6. Nei risultati della ricerca selezionare l'entità servizio e quindi scegliere Seleziona.

    Screenshot that shows the results pane after searching for a service principal name.

  7. Per completare l'assegnazione di ruolo, selezionare Rivedi e assegna due volte.

Ripetere i passaggi descritti in questa sezione per gli account di archiviazione rimanenti:

  • <DLZ-prefix>devencur
  • <DLZ-prefix>devwork

autorizzazioni database SQL

Per impostare le autorizzazioni di database SQL, connettersi alla macchina virtuale SQL di Azure usando l'editor di query. Poiché tutte le risorse si trovano dietro un endpoint privato, è prima necessario accedere al portale di Azure usando una macchina virtuale host di Azure Bastion.

Nella portale di Azure connettersi alla macchina virtuale distribuita nel <DMLZ-prefix>-dev-bastion gruppo di risorse. Se non si è certi di come connettersi alla macchina virtuale usando il servizio host Bastion, vedere Connessione a una macchina virtuale.

Per aggiungere l'entità servizio come utente nel database, potrebbe essere necessario aggiungere se stessi come amministratore di Microsoft Entra. Nei passaggi 1 e 2 si aggiunge se stessi come amministratore di Microsoft Entra. Nei passaggi da 3 a 5 si assegnano le autorizzazioni dell'entità servizio a un database. Dopo aver eseguito l'accesso al portale dalla macchina virtuale host Bastion, cercare macchine virtuali SQL di Azure nella portale di Azure.

  1. Passare alla <DP-prefix>-dev-sqlserver001 macchina virtuale SQL di Azure. Nel menu delle risorse in Impostazioni selezionare Microsoft Entra ID.

    Screenshot that shows the Microsoft Entra pane in Azure SQL Database Server.

  2. Nella barra dei comandi selezionare Imposta amministratore. Cercare e selezionare il proprio account. Scegli Seleziona.

    Screenshot that shows how to search for an account to make a user an admin.

  3. Nel menu delle risorse selezionare Database SQL e quindi selezionare il AdatumCRM database.

    Screenshot that shows a search for the correct database, with AdatumCRM highlighted.

  4. Nel menu della risorsa AdatumCRM selezionare Editor di query (anteprima). In Autenticazione di Active Directory selezionare il pulsante Continua come per accedere.

    Screenshot that shows how to sign in to the query editor by using Active Directory authentication.

  5. Nell'editor di query rivedere le istruzioni seguenti per sostituire <service principal name> con il nome dell'entità servizio creata, ad esempio purview-service-principal. Eseguire quindi le istruzioni .

    
    CREATE USER [<service principal name>] FROM EXTERNAL PROVIDER
    GO
    
    EXEC sp_addrolemember 'db_datareader', [<service principal name>]
    GO
    
    

    Screenshot that shows how to execute statements in the query editor.

Ripetere i passaggi da 3 a 5 per il AdatumERP database.

Configurare l'insieme di credenziali delle chiavi

Purview legge la chiave dell'entità servizio da un'istanza di Azure Key Vault. L'insieme di credenziali delle chiavi viene creato nella distribuzione della zona di destinazione della gestione dei dati. Per configurare l'insieme di credenziali delle chiavi sono necessari i passaggi seguenti:

  1. Aggiungere la chiave dell'entità servizio all'insieme di credenziali delle chiavi come segreto.

  2. Concedere all'agente di lettura segreti MSI purview nell'insieme di credenziali delle chiavi.

  3. Aggiungere l'insieme di credenziali delle chiavi a Purview come connessione all'insieme di credenziali delle chiavi.

  4. Creare una credenziale in Purview che punti al segreto dell'insieme di credenziali delle chiavi.

Aggiungere autorizzazioni per aggiungere un segreto all'insieme di credenziali delle chiavi

  1. Nel portale di Azure passare al servizio Azure Key Vault. Cercare l'insieme di credenziali delle <DMLZ-prefix>-dev-vault001 chiavi.

    Screenshot that shows the Access Control Key Vault pane.

  2. Nel menu della risorsa selezionare Controllo di accesso (IAM). Nella barra dei comandi selezionare Aggiungi e quindi Aggiungi assegnazione di ruolo.

    Screenshot that shows adding a role assignment in Purview.

  3. Nella scheda Ruolo cercare e quindi selezionare Key Vault Amministrazione istrator. Selezionare Avanti.

    Screenshot that shows how to search for the Key Vault Administrator role.

  4. In Membri scegliere Seleziona membri per aggiungere l'account attualmente connesso.

    Screenshot that shows the Select members button highlighted.

  5. In Seleziona membri cercare l'account attualmente connesso. Selezionare l'account e quindi selezionare Seleziona.

    Screenshot that shows the select member search box.

  6. Per completare il processo di assegnazione dei ruoli, selezionare Rivedi e assegna due volte.

Aggiungere un segreto all'insieme di credenziali delle chiavi

Completare i passaggi seguenti per accedere al portale di Azure dalla macchina virtuale host Bastion.

  1. Nel menu delle risorse dell'insieme <DMLZ-prefix>-dev-vault001 di credenziali delle chiavi selezionare Segreti. Nella barra dei comandi selezionare Genera/Importa per creare un nuovo segreto.

    Screenshot that shows the key vault Generate/Import button highlighted.

  2. In Crea un segreto selezionare o immettere i valori seguenti:

    Impostazione Azione
    Opzioni di caricamento Selezionare Manuale.
    Nome Immettere service-principal-secret.
    valore Immettere la password dell'entità servizio creata in precedenza.

    Screenshot that shows the key vault Create a secret pane.

    Nota

    Questo passaggio crea un segreto denominato service-principal-secret nell'insieme di credenziali delle chiavi usando la chiave della password dell'entità servizio. Purview usa il segreto per connettersi e analizzare le origini dati. Se si immette una password non corretta, non sarà possibile completare le sezioni seguenti.

  3. Seleziona Crea.

Configurare le autorizzazioni purview nell'insieme di credenziali delle chiavi

Per consentire all'istanza di Purview di leggere i segreti archiviati nell'insieme di credenziali delle chiavi, è necessario assegnare a Purview le autorizzazioni pertinenti nell'insieme di credenziali delle chiavi. Per impostare le autorizzazioni, aggiungere l'identità gestita purview al ruolo lettore segreti dell'insieme di credenziali delle chiavi.

  1. Nel menu delle risorse dell'insieme <DMLZ-prefix>-dev-vault001 di credenziali delle chiavi selezionare Controllo di accesso (IAM).

  2. Nella barra dei comandi selezionare Aggiungi e quindi Aggiungi assegnazione di ruolo.

    Screenshot that shows the Access Control pane, with the add role assignment button highlighted.

  3. In Ruolo cercare e selezionare Key Vault Secrets User (Utente dei segreti dell'insieme di credenziali delle chiavi). Selezionare Avanti.

    Screenshot that shows the search for Key Vault Secret User pane.

  4. In Membri scegliere Seleziona membri.

    Screenshot that shows the add role assignment pane with the select member button highlighted.

  5. Cercare l'istanza <DMLZ-prefix>-dev-purview001 di Purview. Selezionare l'istanza per aggiungere l'account pertinente. Scegliere, quindi, Seleziona.

    Screenshot that shows the search box for the Purview instance name.

  6. Per completare il processo di assegnazione dei ruoli, selezionare Rivedi e assegna due volte.

    Screenshot that shows how to complete a role assignment.

Configurare una connessione all'insieme di credenziali delle chiavi in Purview

Per configurare una connessione dell'insieme di credenziali delle chiavi a Purview, è necessario accedere al portale di Azure usando una macchina virtuale host di Azure Bastion.

  1. Nel portale di Azure passare all'account <DMLZ-prefix>-dev-purview001 Purview. In Getting started (Introduzione) in Open Microsoft Purview Governance Portal (Apri portale di governance di Microsoft Purview) selezionare Apri.

    Screenshot that shows the Microsoft Purview account overview.

  2. In Purview Studio selezionare Credenziali di gestione>. Nella barra dei comandi Credenziali selezionare Gestisci connessioni di Key Vault e quindi selezionare Nuovo.

    Screenshot that shows the Manage Key Vault connections button.

  3. In Nuova connessione dell'insieme di credenziali delle chiavi selezionare o immettere le informazioni seguenti:

    Impostazione Azione
    Nome Immettere <DMLZ-prefix-dev-vault001>.
    Sottoscrizione di Azure Selezionare la sottoscrizione che ospita l'insieme di credenziali delle chiavi.
    Nome dell'insieme di credenziali delle chiavi Selezionare l'insieme <di credenziali delle chiavi DMLZ-prefix-dev-vault001>.

    Screenshot that shows the new Key Vault connections pane.

  4. Seleziona Crea.

  5. In Confermare la concessione dell'accesso selezionare Conferma.

Creare credenziali in Purview

Il passaggio finale per configurare l'insieme di credenziali delle chiavi consiste nel creare una credenziale in Purview che punti al segreto creato nell'insieme di credenziali delle chiavi per l'entità servizio.

  1. In Purview Studio selezionare Credenziali di gestione>. Nella barra dei comandi Credenziali selezionare Nuovo.

    Screenshot that shows the new Purview Credentials pane.

  2. In Nuova credenziale selezionare o immettere le informazioni seguenti:

    Impostazione Azione
    Nome Immettere purviewServicePrincipal.
    Metodo di autenticazione Selezionare Entità servizio.
    ID tenant Il valore viene popolato automaticamente.
    ID entità servizio Immettere l'ID applicazione o l'ID client dell'entità servizio.
    Connessione di Key Vault Selezionare la connessione all'insieme di credenziali delle chiavi creata nella sezione precedente.
    Nome segreto Immettere il nome del segreto nell'insieme di credenziali delle chiavi (service-principal-secret).

    Screenshot that shows the new credentials form, with values highlighted.

  3. Seleziona Crea.

Registrare le origini dati

A questo punto, Purview può connettersi all'entità servizio. È ora possibile registrare e configurare le origini dati.

Registrare gli account azure Data Lake Archiviazione Gen2

I passaggi seguenti illustrano il processo per registrare un account di archiviazione di Azure Data Lake Archiviazione Gen2.

  1. In Purview Studio selezionare l'icona della mappa dati, selezionare Origini e quindi selezionare Registra.

    Screenshot that shows the data map button highlighted in Purview.

  2. In Registra origini selezionare Azure Data Lake Archiviazione Gen2 e quindi selezionare Continua.

    Screenshot that shows the Azure Data Lake Storage Gen2 registration source.

  3. In Registra origini (Azure Data Lake Archiviazione Gen2) selezionare o immettere le informazioni seguenti:

    Impostazione Azione
    Nome Immettere <DLZ-prefix>dldevraw.
    Sottoscrizione di Azure Selezionare la sottoscrizione che ospita l'account di archiviazione.
    Nome account di archiviazione Selezionare l'account di archiviazione pertinente.
    Endpoint Il valore viene popolato automaticamente in base all'account di archiviazione selezionato.
    Selezionare una raccolta Selezionare la raccolta radice.

    Screenshot that shows the Register Azure Data Lake Storage Gen2 pane, with values highlighted.

  4. Selezionare Registra per creare l'origine dati.

Ripetere questi passaggi per gli account di archiviazione seguenti:

  • <DMLZ-prefix>devencur
  • <DMLZ-prefix>devwork

Registrare l'istanza di database SQL come origine dati

  1. In Purview Studio selezionare l'icona Mappa dati, selezionare Origini e quindi selezionare Registra.

    Screenshot that shows the data map button highlighted in the Purview interface.

  2. In Registra origini selezionare database SQL di Azure e quindi selezionare Continua.

    Screenshot that shows the Azure SQL Database registration source.

  3. In Registra origini (database SQL di Azure)selezionare o immettere le informazioni seguenti:

    Impostazione Azione
    Nome Immettere SQLDatabase (nome del database creato in Creare istanze di database SQL di Azure).
    Abbonamento Selezionare la sottoscrizione che ospita il database.
    Nome server Immettere <DP-prefix-dev-sqlserver001>.

    Screenshot that shows the Register SQL Database form, with values highlighted.

  4. Selezionare Registrazione.

Configurare le analisi

Configurare quindi le analisi per le origini dati.

Analizzare l'origine dati data Lake Archiviazione Gen2

  1. In Purview Studio passare alla mappa dei dati. Nell'origine dati selezionare l'icona Nuova analisi .

    Screenshot that shows how to set up a new Data Lake Storage Gen2 scan.

  2. Nel nuovo riquadro di analisi selezionare o immettere le informazioni seguenti:

    Impostazione Azione
    Nome Immettere Scan_<DLZ-prefix>devraw.
    Connessione tramite il runtime di integrazione Selezionare il runtime di integrazione self-hosted distribuito con la zona di destinazione dei dati.
    Credenziali Selezionare l'entità servizio configurata per Purview.

    Screenshot that shows the scan Data Lake Storage Gen2 credential form with values entered.

  3. Selezionare Test connessione per verificare la connettività e che siano state applicate le autorizzazioni. Seleziona Continua.

  4. In Ambito analisi selezionare l'intero account di archiviazione come ambito per l'analisi e quindi selezionare Continua.

    Screenshot that shows the Scope your scan pane with storage accounts selected.

  5. In Selezionare un set di regole di analisi selezionare AdlsGen2 e quindi selezionare Continua.

    Screenshot that shows the Data Lake Storage Gen2 scan rule set selection.

  6. In Imposta un trigger di analisi selezionare Una sola volta e quindi selezionare Continua.

    Screenshot that shows the set a scan Trigger pane, with Once selected.

  7. In Esaminare l'analisi esaminare le impostazioni di analisi. Selezionare Salva ed Esegui per avviare l'analisi.

    Screenshot that shows reviewing your scan before you save and run it.

Ripetere questi passaggi per gli account di archiviazione seguenti:

  • <DMLZ-prefix>devencur
  • <DMLZ-prefix>devwork

Analizzare l'origine dati database SQL

  1. Nell'origine dati database SQL di Azure selezionare Nuova analisi.

    Screenshot that shows how to create a new SQL Database scan.

  2. Nel nuovo riquadro di analisi selezionare o immettere le informazioni seguenti:

    Impostazione Azione
    Nome Immettere Scan_Database001.
    Connessione tramite il runtime di integrazione Selezionare Purview-SHIR.
    Nome database Selezionare il nome del database.
    Credenziali Selezionare le credenziali dell'insieme di credenziali delle chiavi create in Purview.
    Estrazione derivazione (anteprima) selezionare No.

    Screenshot that shows the scan credential form, with values entered.

  3. Selezionare Test connessione per verificare la connettività e che siano state applicate le autorizzazioni. Seleziona Continua.

  4. Selezionare l'ambito per l'analisi. Per analizzare l'intero database, usare il valore predefinito.

    Screenshot that shows how to set the scope for the scan to the whole database.

  5. In Selezionare un set di regole di analisi selezionare AzureSqlDatabase e quindi selezionare Continua.

    Screenshot that shows the SQL Database scan rule set selection.

  6. In Imposta un trigger di analisi selezionare Una sola volta e quindi selezionare Continua.

    Screenshot that shows the set a scan to run pane with once selected.

  7. In Esaminare l'analisi esaminare le impostazioni di analisi. Selezionare Salva ed Esegui per avviare l'analisi.

Ripetere questi passaggi per il AdatumERP database.

Purview è ora configurato per la governance dei dati per le origini dati registrate.

Copiare database SQL dati in Data Lake Archiviazione Gen2

Nei passaggi seguenti si usa lo strumento Copia dati in Data Factory per creare una pipeline per copiare le tabelle dalle istanze AdatumCRM di database SQL e AdatumERP nei file CSV nell'account <DLZ-prefix>devraw Data Lake Archiviazione Gen2.

L'ambiente è bloccato per l'accesso pubblico, quindi è prima necessario configurare gli endpoint privati. Per usare gli endpoint privati, accedere al portale di Azure nel browser locale e quindi connettersi alla macchina virtuale host Bastion per accedere ai servizi di Azure necessari.

Creare endpoint privati

Per configurare gli endpoint privati per le risorse necessarie:

  1. <DMLZ-prefix>-dev-bastion Nel gruppo di risorse selezionare <DMLZ-prefix>-dev-vm001.

    Screenshot that shows the resource groups for connecting to the bastion host virtual machine.

  2. Nella barra dei comandi selezionare Connessione e selezionare Bastion.

    Screenshot that shows the connect to bastion selection pane.

  3. Immettere il nome utente e la password per la macchina virtuale e quindi selezionare Connessione.

    Screenshot that shows the username and password entry pane.

  4. Nel Web browser della macchina virtuale passare alla portale di Azure. Passare al <DLZ-prefix>-dev-shared-integration gruppo di risorse e aprire la <DLZ-prefix>-dev-integration-datafactory001 data factory.

    Screenshot that shows how to go to a different resource group to open Azure Data Factory.

  5. In Getting started (Introduzione) in Open Azure Data Factory Studio (Apri Azure Data Factory Studio) selezionare Open ( Apri).

    Screenshot that shows how to open Azure Data Factory Studio.

  6. Nel menu di Data Factory Studio selezionare l'icona Gestisci (l'icona è simile a una casella degli strumenti quadrata con una chiave stampata su di essa). Nel menu delle risorse selezionare Endpoint privati gestiti per creare gli endpoint privati necessari per connettere Data Factory ad altri servizi di Azure protetti.

    L'approvazione delle richieste di accesso per gli endpoint privati viene descritta in una sezione successiva. Dopo aver approvato le richieste di accesso all'endpoint privato, lo stato di approvazione è Approvato, come nell'esempio seguente dell'account <DLZ-prefix>devencur di archiviazione.

    Screenshot that shows how to go to the Manage Private Endpoints pane.

  7. Prima di approvare le connessioni dell'endpoint privato, selezionare Nuovo. Immettere Azure SQL per trovare il connettore database SQL di Azure usato per creare un nuovo endpoint privato gestito per la <DP-prefix>-dev-sqlserver001 macchina virtuale SQL di Azure. La macchina virtuale contiene i AdatumCRM database e AdatumERP creati in precedenza.

  8. In Nuovo endpoint privato gestito (database SQL di Azure) immettere data-product-dev-sqlserver001 in Nome. Immettere la sottoscrizione di Azure usata per creare le risorse. In Nome server selezionare <DP-prefix>-dev-sqlserver001 in modo da potersi connettere da questa data factory nelle sezioni successive.

    Screenshot that shows how to name the new private endpoint.

Approvare le richieste di accesso all'endpoint privato

Per concedere a Data Factory l'accesso agli endpoint privati per i servizi necessari, sono disponibili due opzioni:

  • Opzione 1: in ogni servizio a cui si richiede l'accesso, nella portale di Azure passare all'opzione rete o connessioni endpoint private del servizio e approvare le richieste di accesso all'endpoint privato.

  • Opzione 2: eseguire gli script seguenti in Azure Cloud Shell in modalità Bash per approvare tutte le richieste di accesso agli endpoint privati necessari contemporaneamente.

    
    # Storage managed private endpoint approval
    
    # devencur
    resourceGroupName=$(az group list -o tsv  --query "[?contains(@.name, '-dev-storage')==\`true\`].name")
    storageAcctName=$(az storage account list -g $resourceGroupName -o tsv  --query "[?contains(@.name, 'devencur')==\`true\`].name")
    endPointConnectionName=$(az network private-endpoint-connection list -g $resourceGroupName -n $storageAcctName --type Microsoft.Storage/storageAccounts -o tsv --query "[?contains(@.properties.privateLinkServiceConnectionState.status, 'Pending')==\`true\`].name")
    
    az network private-endpoint-connection approve -g $resourceGroupName -n $endPointConnectionName --resource-name $storageAcctName --type Microsoft.Storage/storageAccounts --description "Approved"
    
    # devraw
    resourceGroupName=$(az group list -o tsv  --query "[?contains(@.name, '-dev-storage')==\`true\`].name")
    storageAcctName=$(az storage account list -g $resourceGroupName -o tsv  --query "[?contains(@.name, 'devraw')==\`true\`].name")
    endPointConnectionName=$(az network private-endpoint-connection list -g $resourceGroupName -n $storageAcctName --type Microsoft.Storage/storageAccounts -o tsv --query "[?contains(@.properties.privateLinkServiceConnectionState.status, 'Pending')==\`true\`].name")
    az network private-endpoint-connection approve -g $resourceGroupName -n $endPointConnectionName --resource-name $storageAcctName --type Microsoft.Storage/storageAccounts --description "Approved"
    
    # SQL Database managed private endpoint approval
    resourceGroupName=$(az group list -o tsv  --query "[?contains(@.name, '-dev-dp001')==\`true\`].name")
    sqlServerName=$(az sql server list -g $resourceGroupName -o tsv  --query "[?contains(@.name, 'sqlserver001')==\`true\`].name")
    endPointConnectionName=$(az network private-endpoint-connection list -g $resourceGroupName -n $sqlServerName --type Microsoft.Sql/servers -o tsv --query "[?contains(@.properties.privateLinkServiceConnectionState.status, 'Pending')==\`true\`].name")
    az network private-endpoint-connection approve -g $resourceGroupName -n $endPointConnectionName --resource-name $sqlServerName --type Microsoft.Sql/servers --description "Approved"
    
    # Key Vault private endpoint approval
    resourceGroupName=$(az group list -o tsv  --query "[?contains(@.name, '-dev-metadata')==\`true\`].name")
    keyVaultName=$(az keyvault list -g $resourceGroupName -o tsv  --query "[?contains(@.name, 'dev-vault001')==\`true\`].name")
    endPointConnectionID=$(az network private-endpoint-connection list -g $resourceGroupName -n $keyVaultName --type Microsoft.Keyvault/vaults -o tsv --query "[?contains(@.properties.privateLinkServiceConnectionState.status, 'Pending')==\`true\`].id")
    az network private-endpoint-connection approve -g $resourceGroupName --id $endPointConnectionID --resource-name $keyVaultName --type Microsoft.Keyvault/vaults --description "Approved"
    
    # Purview private endpoint approval
    resourceGroupName=$(az group list -o tsv  --query "[?contains(@.name, 'dev-governance')==\`true\`].name")
    purviewAcctName=$(az purview account list -g $resourceGroupName -o tsv  --query "[?contains(@.name, '-dev-purview001')==\`true\`].name")
    for epn in $(az network private-endpoint-connection list -g $resourceGroupName -n $purviewAcctName --type Microsoft.Purview/accounts -o tsv --query "[?contains(@.properties.privateLinkServiceConnectionState.status, 'Pending')==\`true\`].name")
    do
        az network private-endpoint-connection approve -g $resourceGroupName -n $epn --resource-name $purviewAcctName --type Microsoft.Purview/accounts --description "Approved"
    done
    
    

L'esempio seguente illustra come l'account <DLZ-prefix>devraw di archiviazione gestisce le richieste di accesso agli endpoint privati. Nel menu delle risorse per l'account di archiviazione selezionare Rete. Nella barra dei comandi selezionare Connessioni endpoint privato.

Screenshot that shows how to go to the Private endpoint connections pane.

Per alcune risorse di Azure, selezionare Connessioni endpoint privati nel menu delle risorse. Un esempio per il server SQL di Azure è illustrato nello screenshot seguente.

Per approvare una richiesta di accesso all'endpoint privato, in Connessioni endpoint privati selezionare la richiesta di accesso in sospeso e quindi selezionare Approva:

Screenshot that shows to approve a private endpoint access request.

Dopo aver approvato la richiesta di accesso in ogni servizio necessario, potrebbero essere necessari alcuni minuti prima che la richiesta venga visualizzata come Approvata negli endpoint privati gestiti in Data Factory Studio. Anche se si seleziona Aggiorna nella barra dei comandi, lo stato di approvazione potrebbe non essere aggiornato per alcuni minuti.

Al termine dell'approvazione di tutte le richieste di accesso per i servizi necessari, in Endpoint privati gestiti il valore Stato approvazione per tutti i servizi è Approvato:

Screenshot that shows the private endpoint SQL connections as Approved.

Assegnazioni di ruolo

Al termine dell'approvazione delle richieste di accesso all'endpoint privato, aggiungere le autorizzazioni del ruolo appropriate per Data Factory per accedere a queste risorse:

  • database SQL istanze AdatumCRM e AdatumERP nel server SQL di <DP-prefix>-dev-sqlserver001 Azure
  • Archiviazione account <DLZ-prefix>devraw, <DLZ-prefix>devencure<DLZ-prefix>devwork
  • Account Purview <DMLZ-prefix>-dev-purview001

Macchina virtuale SQL di Azure

  1. Per aggiungere assegnazioni di ruolo, iniziare con la macchina virtuale SQL di Azure. <DMLZ-prefix>-dev-dp001 Nel gruppo di risorse passare a <DP-prefix>-dev-sqlserver001.

  2. Nel menu della risorsa selezionare Controllo di accesso (IAM). Nella barra dei comandi selezionare Aggiungi aggiungi>assegnazione di ruolo.

  3. Nella scheda Ruolo selezionare Collaboratore e quindi avanti.

    Screenshot that shows the Contributor role selection pane.

  4. In Membri, per Assegna accesso a, selezionare Identità gestita. In Membri scegliere Seleziona membri.

    Screenshot that shows the select Managed Identity Members pane.

  5. In Selezionare le identità gestite selezionare la sottoscrizione di Azure. Per Identità gestita selezionare Data Factory (V2) per visualizzare le data factory disponibili. Nell'elenco delle data factory selezionare Azure Data Factory <DLZ-prefix-dev-integration-datafactory001>. Scegli Seleziona.

    Screenshot that shows the role assignment completion pane.

  6. Selezionare Rivedi e assegna due volte per completare il processo.

Account di archiviazione

Assegnare quindi i ruoli necessari agli <DLZ-prefix>devrawaccount di archiviazione , <DLZ-prefix>devencure <DLZ-prefix>devwork .

Per assegnare i ruoli, completare gli stessi passaggi usati per creare l'assegnazione di ruolo del server SQL di Azure. Per il ruolo, tuttavia, selezionare Archiviazione Collaboratore dati BLOB anziché Collaboratore.

Dopo aver assegnato i ruoli per tutti e tre gli account di archiviazione, Data Factory può connettersi e accedere agli account di archiviazione.

Microsoft Purview

Il passaggio finale per aggiungere assegnazioni di ruolo consiste nell'aggiungere il ruolo Di curatore dei dati purview in Microsoft Purview all'account di identità gestita della <DLZ-prefix>-dev-integration-datafactory001 data factory. Completare i passaggi seguenti in modo che Data Factory possa inviare informazioni sugli asset del catalogo dati da più origini dati all'account Purview.

  1. Nel gruppo <DMLZ-prefix>-dev-governancedi risorse passare all'account <DMLZ-prefix>-dev-purview001 Purview.

  2. In Purview Studio selezionare l'icona Mappa dati e quindi raccolte.

  3. Selezionare la scheda Assegnazioni di ruolo per la raccolta. In Curatori dei dati aggiungere l'identità gestita per <DLZ-prefix>-dev-integration-datafactory001:

    Screenshot that shows how to add data curators to your Purview role assignment.

Connessione Data Factory a Purview

Le autorizzazioni sono impostate e Purview può ora visualizzare la data factory. Il passaggio successivo consiste nel fare in modo che <DMLZ-prefix>-dev-purview001 ci si connetta a <DLZ-prefix>-dev-integration-datafactory001.

  1. In Purview Studio selezionare l'icona Gestione e quindi selezionare Data Factory. Selezionare Nuovo per creare una connessione data factory.

  2. Nel riquadro Nuove connessioni data factory immettere la sottoscrizione di Azure e selezionare la <DLZ-prefix>-dev-integration-datafactory001 data factory. Seleziona OK.

    Screenshot that shows what the Purview Studio pane looks like while selecting a new connection.

  3. Nell'istanza <DLZ-prefix>-dev-integration-datafactory001 di Data Factory Studio, in Gestisci>Azure Purview aggiornare l'account Azure Purview.

    L'integrazione Data Lineage - Pipeline mostra ora l'icona verde Connessione ed.

    Screenshot that shows the Azure Data Factory Purview account pane with the data lineage pipeline connected.

Creare una pipeline ETL

Ora che dispone <DLZ-prefix>-dev-integration-datafactory001 delle autorizzazioni di accesso necessarie, creare un'attività di copia in Data Factory per spostare i dati dalle istanze di database SQL all'account <DLZ-prefix>devraw di archiviazione non elaborato.

Usare lo strumento Copia dati con AdatumCRM

Questo processo estrae i dati dei clienti dall'istanza AdatumCRM di database SQL e li copia nell'archiviazione di Data Lake Archiviazione Gen2.

  1. In Data Factory Studio selezionare l'icona Autore e quindi selezionare Risorse factory. Selezionare il segno più (+) e selezionare Copia dati strumento.

    Screenshot that shows the Copy Data tool under factory resources.

    Completare ogni passaggio della procedura guidata Copia dati:

    1. Per creare un trigger per eseguire la pipeline ogni 24 ore, selezionare Pianifica.

      Screenshot that shows how to schedule a Trigger to run periodically in CRM.

    2. Per creare un servizio collegato per connettere questa data factory all'istanza AdatumCRM di database SQL nel <DP-prefix>-dev-sqlserver001 server (origine), selezionare Nuovo Connessione ion.

      Screenshot that shows connecting to the AdatumCRM database.

      Nota

      Se si verificano errori di connessione o accesso ai dati nelle istanze di database SQL o negli account di archiviazione, esaminare le autorizzazioni nella sottoscrizione di Azure. Assicurarsi che la data factory disponga delle credenziali necessarie e delle autorizzazioni di accesso a qualsiasi risorsa problematica.

    3. Selezionare queste tre tabelle:

      • SalesLT.Address
      • SalesLT.Customer
      • SalesLT.CustomerAddress

      Screenshot that shows the select tables pane with tables highlighted.

    4. Creare un nuovo servizio collegato per accedere all'archiviazione <DLZ-prefix>devraw di Azure Data Lake Archiviazione Gen2 (destinazione).

      Screenshot that shows the raw storage connection.

    5. Esplorare le cartelle nella <DLZ-prefix>devraw risorsa di archiviazione e selezionare Dati come destinazione.

      Screenshot that shows the destination as raw data.

    6. Modificare il suffisso del nome file in csv e usare le altre opzioni predefinite.

      Screenshot that shows the file name suffix field with CSV entered.

    7. Passare al riquadro successivo e selezionare Aggiungi intestazione al file.

      Screenshot that shows how to add a header to a file.

    8. Al termine della procedura guidata, il riquadro Distribuzione completa è simile all'esempio seguente:

      Screenshot that shows the Copy Data tool deployment completed.

La nuova pipeline è elencata in Pipeline.

Eseguire la pipeline

Questo processo crea tre file con estensione csv nella cartella Data\CRM , uno per ognuna delle tabelle selezionate nel AdatumCRM database.

  1. Rinominare la pipeline CopyPipeline_CRM_to_Raw.

  2. Rinominare i set di dati CRM_Raw_Storage e CRM_DB.

  3. Nella barra dei comandi Risorse factory selezionare Pubblica tutto.

  4. Selezionare la CopyPipeline_CRM_to_Raw pipeline e nella barra dei comandi della pipeline selezionare Trigger per copiare le tre tabelle da database SQL a Data Lake Archiviazione Gen2.

    Screenshot that shows how to use the trigger tool to copy data from the SQL Database to Data Lake Storage Gen2.

Usare lo strumento Copia dati con AdatumERP

Estrarre quindi i dati dal AdatumERP database. I dati rappresentano i dati di vendita provenienti dal sistema ERP.

  1. Sempre in Data Factory Studio creare una nuova pipeline usando lo strumento Copia dati. Questa volta si inviano i dati di vendita dalla AdatumERP cartella dei dati dell'account <DLZ-prefix>devraw di archiviazione, allo stesso modo con i dati CRM. Completare gli stessi passaggi, ma usare il AdatumERP database come origine.

    1. Creare la pianificazione da attivare ogni ora.

    2. Creare un servizio collegato all'istanza AdatumERP di database SQL.

      Screenshot that shows the Adatum ERP connection pane completed.

    3. Selezionare queste sette tabelle:

      • SalesLT.Product
      • SalesLT.ProductCategory
      • SalesLT.ProductDescription
      • SalesLT.ProductModel
      • SalesLT.ProductModelProductDescription
      • SalesLT.SalesOrderDetail
      • SalesLT.SalesOrderHeader

      Screenshot that shows Adatum ERP Table options.

    4. Usare il servizio collegato esistente per l'account <DLZ-prefix>devraw di archiviazione e impostare l'estensione del file su csv.

      Screenshot that shows a raw storage account with the file extension set to CSV.

    5. Selezionare Aggiungi intestazione al file.

      Screenshot that shows adding a header to a file under File format settings.

    6. Completare di nuovo la procedura guidata e rinominare la pipeline CopyPipeline_ERP_to_DevRaw. Quindi, nella barra dei comandi selezionare Pubblica tutto. Eseguire infine il trigger in questa pipeline appena creata per copiare le sette tabelle selezionate da database SQL a Data Lake Archiviazione Gen2.

Al termine di questi passaggi, 10 file CSV si trovano nell'archiviazione <DLZ-prefix>devraw di Data Lake Archiviazione Gen2. Nella sezione successiva si curano i file nell'archiviazione <DLZ-prefix>devencur di Data Lake Archiviazione Gen2.

Curare i dati in Data Lake Archiviazione Gen2

Al termine della creazione dei 10 file CSV nell'archiviazione <DLZ-prefix>devraw data lake non elaborata Archiviazione Gen2, trasformare questi file in base alle esigenze durante la copia nell'archiviazione di Data Lake Archiviazione Gen2 curato<DLZ-prefix>devencur.

Continuare a usare Azure Data Factory per creare queste nuove pipeline per orchestrare lo spostamento dei dati.

Curare CRM ai dati dei clienti

Creare un flusso di dati che ottiene i file CSV nella cartella Data\CRM in <DLZ-prefix>devraw. Trasformare i file e copiare i file trasformati in formato parquet nella cartella Data\Customer in <DLZ-prefix>devencur.

  1. In Azure Data Factory passare alla data factory e selezionare Orchestrate (Orchestra).

    Screenshot that shows the Orchestrate button in Azure Data Factory.

  2. In Generale assegnare alla pipeline Pipeline_transform_CRMil nome .

  3. Nel riquadro Attività espandere Sposta e trasforma. Trascinare l'attività del flusso di dati e rilasciarla nell'area di disegno della pipeline.

    Screenshot that shows the Activities pane and Move and transform highlighted.

  4. In Aggiunta Flusso di dati selezionare Crea nuovo flusso di dati e assegnare al flusso CRM_to_Customerdi dati il nome . Selezionare Fine.

    Nota

    Nella barra dei comandi dell'area di disegno della pipeline attivare Debug del flusso di dati. In modalità di debug è possibile testare in modo interattivo la logica di trasformazione in un cluster Apache Spark attivo. Il riscaldamento dei cluster del flusso di dati richiede da 5 a 7 minuti. È consigliabile attivare il debug prima di iniziare lo sviluppo del flusso di dati.

    Screenshot that shows the Open Data Flow button.

    Al termine della selezione delle opzioni nel CRM_to_Customer flusso di dati, la Pipeline_transform_CRM pipeline avrà un aspetto simile a questo esempio:

    Screenshot that shows the pipeline transform CRM.

    Il flusso di dati è simile all'esempio seguente:

    Screenshot that shows the CRM to Customer data flow.

  5. Modificare quindi queste impostazioni nel flusso di dati per l'origine CRMAddress :

    1. Creare un nuovo set di dati da Data Lake Archiviazione Gen2. Usare il formato DelimitedText . Denominare il set di dati DevRaw_CRM_Address.

    2. Connessione il servizio collegato a <DLZ-prefix>devraw.

    3. Selezionare il Data\CRM\SalesLTAddress.csv file come origine.

  6. Modificare queste impostazioni nel flusso di dati per il sink associato CustAddress :

    1. Creare un nuovo set di dati denominato DevEncur_Cust_Address.

    2. Selezionare la cartella Data\Customer in <DLZ-prefix>devencur come sink.

    3. In Impostazioni\Output in un singolo file convertire il file in Address.parquet.

Per il resto della configurazione del flusso di dati, usare le informazioni riportate nelle tabelle seguenti per ogni componente. Si noti che CRMAddress e CustAddress sono le prime due righe. Usarli come esempi per gli altri oggetti.

Un elemento che non si trova in una delle tabelle seguenti è il RemovePasswords modificatore dello schema. Lo screenshot precedente mostra che questo elemento passa tra CRMCustomer e CustCustomer. Per aggiungere questo modificatore dello schema, passare a Selezionare le impostazioni e rimuovere PasswordHash e PasswordSalt.

CRMCustomer restituisce uno schema a 15 colonne dal file con estensione crv. CustCustomer scrive solo 13 colonne dopo che il modificatore dello schema rimuove le due colonne della password.

Tabella completa

Nome Object type Nome del set di dati Archivio dati Tipo di formato Servizio collegato File o cartella
CRMAddress source DevRaw_CRM_Address Azure Data Lake Storage Gen2 DelimitedText devraw Data\CRM\SalesLTAddress.csv
CustAddress sink DevEncur_Cust_Address Azure Data Lake Storage Gen2 Parquet devencur Data\Customer\Address.parquet
CRMCustomer source DevRaw_CRM_Customer Azure Data Lake Storage Gen2 DelimitedText devraw Data\CRM\SalesLTCustomer.csv
CustCustomer sink DevEncur_Cust_Customer Azure Data Lake Storage Gen2 Parquet devencur Data\Customer\Customer.parquet
CRMCustomerAddress source DevRaw_CRM_CustomerAddress Azure Data Lake Storage Gen2 DelimitedText devraw Data\CRM\SalesLTCustomerAddress.csv
CustCustomerAddress sink DevEncur_Cust_CustomerAddress Azure Data Lake Storage Gen2 Parquet devencur Data\Customer\CustomerAddress.parquet

Tabella ERP to Sales

Ripetere ora passaggi simili per creare una Pipeline_transform_ERP pipeline, creare un ERP_to_Sales flusso di dati per trasformare i file con estensione csv nella cartella Data\ERP in <DLZ-prefix>devrawe copiare i file trasformati nella cartella Data\Sales in <DLZ-prefix>devencur.

Nella tabella seguente sono disponibili gli oggetti da creare nel ERP_to_Sales flusso di dati e le impostazioni da modificare per ogni oggetto. Ogni file con estensione csv viene mappato a un sink parquet .

Nome Object type Nome del set di dati Archivio dati Tipo di formato Servizio collegato File o cartella
ERPProduct source DevRaw_ERP_Product Azure Data Lake Storage Gen2 DelimitedText devraw Data\ERP\SalesLTProduct.csv
SalesProduct sink DevEncur_Sales_Product Azure Data Lake Storage Gen2 Parquet devencur Data\Sales\Product.parquet
ERPProductCategory source DevRaw_ERP_ProductCategory Azure Data Lake Storage Gen2 DelimitedText devraw Data\ERP\SalesLTProductCategory.csv
SalesProductCategory sink DevEncur_Sales_ProductCategory Azure Data Lake Storage Gen2 Parquet devencur Data\Sales\ProductCategory.parquet
ERPProductDescription source DevRaw_ERP_ProductDescription Azure Data Lake Storage Gen2 DelimitedText devraw Data\ERP\SalesLTProductDescription.csv
SalesProductDescription sink DevEncur_Sales_ProductDescription Azure Data Lake Storage Gen2 Parquet devencur Data\Sales\ProductDescription.parquet
ERPProductModel source DevRaw_ERP_ProductModel Azure Data Lake Storage Gen2 DelimitedText devraw Data\ERP\SalesLTProductModel.csv
SalesProductModel sink DevEncur_Sales_ProductModel Azure Data Lake Storage Gen2 Parquet devencur Data\Sales\ProductModel.parquet
ERPProductModelProductDescription source DevRaw_ERP_ProductModelProductDescription Azure Data Lake Storage Gen2 DelimitedText devraw Data\ERP\SalesLTProductModelProductDescription.csv
SalesProductModelProductDescription sink DevEncur_Sales_ProductModelProductDescription Azure Data Lake Storage Gen2 Parquet devencur Data\Sales\ProductModelProductDescription.parquet
ERPProductSalesOrderDetail source DevRaw_ERP_ProductSalesOrderDetail Azure Data Lake Storage Gen2 DelimitedText devraw Data\ERP\SalesLTProductSalesOrderDetail.csv
SalesProductSalesOrderDetail sink DevEncur_Sales_ProductSalesOrderDetail Azure Data Lake Storage Gen2 Parquet devencur Data\Sales\ProductSalesOrderDetail.parquet
ERPProductSalesOrderHeader source DevRaw_ERP_ProductSalesOrderHeader Azure Data Lake Storage Gen2 DelimitedText devraw Data\ERP\SalesLTProductSalesOrderHeader.csv
SalesProductSalesOrderHeader sink DevEncur_Sales_ProductSalesOrderHeader Azure Data Lake Storage Gen2 Parquet devencur Data\Sales\ProductSalesOrderHeader.parquet

Passaggi successivi