Eseguire pacchetti SSIS in Azure da SSDT

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi completa per le aziende. Microsoft Fabric copre tutti gli elementi, dallo spostamento dei dati all'analisi scientifica dei dati, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Scopri come avviare gratuitamente una nuova versione di valutazione .

Questo articolo descrive la funzionalità dei progetti SQL Server Integration Services (SSIS) abilitati per Azure in SQL Server Data Tools (SSDT). Consente di valutare la compatibilità cloud dei pacchetti SSIS ed eseguirli in Azure-SSIS Integration Runtime (IR) in Azure Data Factory (ADF). È possibile usare questa funzionalità per testare i pacchetti esistenti prima di sollevarli e spostarli in Azure o sviluppare nuovi pacchetti da eseguire in Azure.

Con questa funzionalità, è possibile collegare un runtime di integrazione Azure-SSIS appena creato/esistente ai progetti SSIS e quindi eseguire i pacchetti in esso. Sono supportati i pacchetti in esecuzione da distribuire nel catalogo SSIS (SSISDB) ospitato dal server database SQL di Azure o dall'istanza gestita nel modello di distribuzione del progetto. Sono supportati anche i pacchetti in esecuzione da distribuire nel file system/File di Azure/database DI SQL Server (MSDB) ospitato dall'istanza gestita di SQL di Azure nel modello di distribuzione pacchetti.

Prerequisiti

Per usare questa funzionalità, scaricare e installare la versione più recente di SSDT con l'estensione progetti SSIS per Visual Studio (VS) da qui. In alternativa, è anche possibile scaricare e installare la versione più recente di SSDT come programma di installazione autonomo da qui.

Abilitare progetti SSIS di Azure

Creazione di nuovi progetti SSIS abilitati per Azure

In SSDT è possibile creare nuovi progetti SSIS abilitati per Azure usando il modello Progetto Integration Services (Abilitato per Azure).

New Azure-enabled SSIS project

Dopo aver creato il progetto abilitato per Azure, verrà richiesto di connettersi a SSIS in Azure Data Factory.

Connect Azure-SSIS IR prompt

Per connettersi immediatamente al runtime di integrazione Azure-SSIS, vedere Connessione ing to Azure-SSIS IR (Connessione ing to Azure-SSIS IR) per altri dettagli. È anche possibile connettersi in un secondo momento facendo clic con il pulsante destro del mouse sul nodo del progetto nella finestra Esplora soluzioni di SSDT per visualizzare un menu. Selezionare quindi il Connessione in SSIS nell'elemento Azure Data Factory in SSIS nel sottomenu di Azure Data Factory.

Abilitazione di progetti SSIS esistenti con abilitazione di Azure

Per i progetti SSIS esistenti, è possibile abilitarli con Azure seguendo questa procedura:

  1. Fare clic con il pulsante destro del mouse sul nodo del progetto nella finestra Esplora soluzioni di SSDT per visualizzare un menu. Selezionare quindi l'elemento Progetto abilitato per Azure nel sottomenu SSIS in Azure Data Factory per avviare la Creazione guidata progetto abilitata per Azure.

    Azure-enable existing SSIS project

  2. Nella pagina Selezione configurazione di Visual Studio selezionare la configurazione di Visual Studio esistente per applicare le impostazioni di esecuzione dei pacchetti in Azure. È anche possibile crearne uno nuovo se non è già stato fatto, vedere Creazione di una nuova configurazione di Visual Studio. È consigliabile avere almeno due configurazioni di Visual Studio diverse per le esecuzioni di pacchetti negli ambienti locali e cloud, in modo da poter abilitare il progetto in base alla configurazione cloud. In questo modo, se il progetto o i pacchetti sono stati parametrizzati, è possibile assegnare valori diversi ai parametri del progetto o del pacchetto in fase di esecuzione in base ai diversi ambienti di esecuzione (nel computer locale o in Azure). Ad esempio, vedere Cambio di ambienti di esecuzione dei pacchetti.

    Select Visual Studio configuration

  3. Per abilitare Azure i progetti SSIS esistenti è necessario impostare la versione del server di destinazione come più recente supportata da Azure-SSIS IR. Azure-SSIS IR è attualmente basato su SQL Server 2017. Assicurarsi che i pacchetti non contengano componenti aggiuntivi non supportati in SQL Server 2017. Assicurarsi anche che tutti i componenti aggiuntivi compatibili siano stati installati anche nel runtime di integrazione Azure-SSIS tramite configurazioni personalizzate, vedere Personalizzazione del runtime di integrazione Azure-SSIS. Selezionare il pulsante Avanti per continuare.

    Switch target server version

  4. Per completare la connessione del progetto a Azure-SSIS IR, vedere Connessione ing to Azure-SSIS IR (Connessione del progetto a Azure-SSIS IR).

Connessione progetti abilitati per Azure in SSIS in Azure Data Factory

Con la connessione dei progetti abilitati per Azure a SSIS in ADF, è possibile caricare i pacchetti in File di Azure ed eseguirli nel runtime di integrazione Azure-SSIS. A tale scopo, seguire questa procedura:

  1. Nella pagina Introduzione a SSIS in ADF esaminare l'introduzione e selezionare il pulsante Avanti per continuare.

    SSIS in ADF introduction

  2. Nella pagina Select SSIS IR in ADF (Seleziona runtime di integrazione SSIS in Azure Data Factory ) selezionare il runtime di integrazione Azure-SSIS esistente per eseguire i pacchetti. È anche possibile crearne di nuovi se non sono disponibili.

    • Per selezionare il runtime di integrazione Azure-SSIS esistente, selezionare prima la sottoscrizione di Azure pertinente e ADF.
    • Se si seleziona un'istanza di Azure Data Factory esistente che non dispone di azure-SSIS IR, selezionare il pulsante Crea runtime di integrazione SSIS per crearne uno nuovo nel portale di Azure Data Factory. Dopo la creazione, è possibile tornare a questa pagina per selezionare il nuovo runtime di integrazione Azure-SSIS.
    • Se si seleziona la sottoscrizione di Azure esistente che non dispone di Azure Data Factory, selezionare il pulsante Crea runtime di integrazione SSIS per avviare la Creazione guidata runtime di integrazione. Nella procedura guidata è possibile immettere la posizione e il prefisso designati per creare automaticamente un nuovo gruppo di risorse di Azure, Data Factory e SSIS IR per conto dell'utente, denominato nel modello seguente: YourPrefix-RG/DF/IR-YourCreationTime. Dopo la creazione, è possibile tornare a questa pagina per selezionare il nuovo runtime di integrazione Azure-SSIS e Azure.Once created, you can return to this page to select your new ADF and Azure-SSIS IR.

    Select SSIS IR in ADF

  3. Nella pagina Seleziona Archiviazione di Azure selezionare l'account di Archiviazione di Azure esistente per caricare i pacchetti in File di Azure. È anche possibile crearne uno nuovo se non è disponibile.

    • Per selezionare l'account di Archiviazione di Azure esistente, selezionare prima la sottoscrizione di Azure pertinente.
    • Se si seleziona la stessa sottoscrizione di Azure del runtime di integrazione Azure-SSIS che non dispone di alcun account Archiviazione di Azure, selezionare il pulsante Crea Archiviazione di Azure. Ne creeremo automaticamente uno nuovo per conto dell'istanza di Azure-SSIS IR, denominato combinando un prefisso del nome del runtime di integrazione Azure-SSIS e la data di creazione. Dopo la creazione, è possibile tornare a questa pagina per selezionare il nuovo account Archiviazione di Azure.
    • Se si seleziona una sottoscrizione di Azure diversa che non dispone di alcun account Archiviazione di Azure, selezionare il pulsante Crea Archiviazione di Azure per crearne uno nuovo in portale di Azure. Dopo la creazione, è possibile tornare a questa pagina per selezionare il nuovo account Archiviazione di Azure.

    Select Azure Storage

  4. Selezionare il pulsante Connessione per completare la connessione del progetto ad Azure-SSIS IR. Verrà visualizzato l'account azure-SSIS IR selezionato e Archiviazione di Azure nel nodo Risorse di Azure collegate nella finestra Esplora soluzioni di SSDT. Verrà anche aggiornato e visualizzato regolarmente lo stato del runtime di integrazione Azure-SSIS. È possibile gestire il runtime di integrazione Azure-SSIS facendo clic con il pulsante destro del mouse sul relativo nodo per visualizzare un menu e quindi selezionando l'elemento Start\Stop\Manage che consente di accedere al portale di Azure Data Factory per eseguire questa operazione.

Valutare il progetto SSIS\pacchetti per le esecuzioni in Azure

Valutazione di pacchetti singoli o multipli

Prima di eseguire i pacchetti in Azure, è possibile valutarli per individuare eventuali potenziali problemi di compatibilità del cloud. Tra questi sono inclusi i blocchi di migrazione e informazioni aggiuntive che è necessario tenere presenti.

  • Sono disponibili le opzioni per valutare singoli pacchetti uno per uno o tutti i pacchetti contemporaneamente nel progetto.

    Assess package

    Assess project

  • Nella finestra Report di valutazione di SSDT è possibile trovare tutti i potenziali problemi di compatibilità del cloud rilevati, ognuno con una descrizione dettagliata e un consiglio specifici. È anche possibile esportare il report di valutazione in un file CSV che può essere condiviso con chiunque debba attenuare questi problemi.

    Assessment report

Eliminazione delle regole di valutazione

Dopo aver verificato che alcuni potenziali problemi di compatibilità del cloud non siano applicabili o siano stati risolti correttamente nei pacchetti, è possibile eliminare le regole di valutazione pertinenti che le presentano. In questo modo si ridurrà il rumore nei report di valutazione successivi.

  • Selezionare il collegamento Configura eliminazione delle regole di valutazione nella finestra Report valutazione di SSDT per visualizzare la finestra Di eliminazione delle regole di valutazione Impostazioni, in cui è possibile selezionare le regole di valutazione da eliminare.

    Assessment rule suppression settings

  • In alternativa, fare clic con il pulsante destro del mouse sul nodo del progetto nella finestra Esplora soluzioni di SSDT per visualizzare un menu. Selezionare l'elemento di Impostazioni abilitato per Azure in SSIS nel sottomenu di Azure Data Factory per visualizzare una finestra contenente le pagine delle proprietà del progetto. Selezionare la proprietà Id regola di valutazione soppressa nella sezione Impostazioni abilitata per Azure. Infine, selezionare il pulsante con i puntini di sospensione (...) per visualizzare la finestra Di eliminazione delle regole di valutazione Impostazioni, in cui è possibile selezionare le regole di valutazione da eliminare.

    Azure-enabled settings

    Assessment rule suppression settings via Azure-enabled settings

Eseguire pacchetti SSIS in Azure

Configurazione delle impostazioni abilitate per Azure

Prima di eseguire i pacchetti in Azure, è possibile configurare le impostazioni abilitate per Azure. Ad esempio, è possibile abilitare autenticazione di Windows nel runtime di integrazione Azure-SSIS per accedere agli archivi dati locali/cloud seguendo questa procedura:

  1. Fare clic con il pulsante destro del mouse sul nodo del progetto nella finestra Esplora soluzioni di SSDT per visualizzare un menu. Selezionare quindi l'elemento Impostazioni abilitato per Azure in SSIS nel sottomenu di Azure Data Factory per visualizzare una finestra contenente le pagine delle proprietà del progetto.

    Azure-enabled settings

  2. Selezionare la sezione Abilita autenticazione di Windows nella sezione Impostazioni abilitata per Azure e quindi selezionare True nel menu a discesa. Selezionare quindi la proprietà Credenziali di autenticazione di Windows e quindi selezionare il pulsante con i puntini di sospensione (...) per visualizzare la finestra Credenziali di autenticazione di Windows.

    Enable Windows authentication

  3. Immettere le credenziali autenticazione di Windows. Ad esempio, per accedere alle File di Azure, è possibile immettere Azurerispettivamente , YourStorageAccountNamee YourStorageAccountKey per Dominio, Nome utente e Password.

    Windows authentication credentials

Avvio delle esecuzioni di pacchetti

Dopo aver connesso i progetti abilitati per Azure a SSIS in Azure Data Factory, valutare la compatibilità del cloud e attenuare i potenziali problemi, è possibile eseguire/testare i pacchetti in Azure-SSIS IR.

  • Selezionare il pulsante Start nella barra degli strumenti di SSDT per visualizzare un menu. Selezionare quindi l'elemento Esegui in Azure .

    Execute in Azure

  • In alternativa, fare clic con il pulsante destro del mouse sul nodo del pacchetto nella finestra Esplora soluzioni di SSDT per visualizzare un menu. Selezionare quindi l'elemento Esegui pacchetto in Azure .

    Execute package in Azure

Nota

Per eseguire i pacchetti in Azure è necessario disporre di un runtime di integrazione Azure-SSIS in esecuzione, quindi, se il runtime di integrazione Azure-SSIS è arrestato, verrà visualizzata una finestra di dialogo per avviarla. Se si esclude un tempo di configurazione personalizzato, questo processo deve essere completato entro 5 minuti, ma potrebbe richiedere circa 20 - 30 minuti per l'aggiunta di azure-SSIS IR a una rete virtuale. Dopo aver eseguito i pacchetti in Azure, è possibile arrestare il runtime di integrazione Azure-SSIS per gestirli facendo clic con il pulsante destro del mouse sul relativo nodo nella finestra Esplora soluzioni di SSDT per visualizzare un menu e quindi selezionando l'elemento Start\Stop\Manage che consente di accedere al portale di Azure Data Factory per eseguire questa operazione.

Utilizzo dell'attività Esegui pacchetto

Se i pacchetti contengono attività Esegui pacchetto che fanno riferimento a pacchetti figlio archiviati nei file system locali, seguire questa procedura aggiuntiva:

  1. Caricare i pacchetti figlio in File di Azure con lo stesso account Archiviazione di Azure connesso ai progetti e ottenere il nuovo percorso UNC (Universal Naming Convention), ad esempio\\YourStorageAccountName.file.core.windows.net\ssdtexecution\YourChildPackage1.dtsx

  2. Sostituire il percorso del file di tali pacchetti figlio nel file Gestione connessioni di Esegui attività pacchetto con il nuovo percorso UNC

    • Se il computer locale che esegue SSDT non riesce ad accedere al nuovo percorso UNC, è possibile immetterlo nel pannello Proprietà di File Gestione connessioni
    • In alternativa, è possibile usare una variabile per il percorso del file per assegnare il valore corretto in fase di esecuzione

Se i pacchetti contengono attività esegui pacchetto che fanno riferimento a pacchetti figlio nello stesso progetto, non è necessario alcun passaggio aggiuntivo.

Passaggio del livello di protezione dei pacchetti

L'esecuzione di pacchetti SSIS in Azure non supporta i livelli di protezione EncryptSensitiveWithUserKey/EncryptAllWithUserKey. Di conseguenza, se i pacchetti sono configurati per usarli, verranno convertiti temporaneamente in usando rispettivamente i livelli di protezione EncryptSensitiveWithPassword/EncryptAllWithPassword. Le password di crittografia verranno generate in modo casuale anche quando si caricano i pacchetti in File di Azure per le esecuzioni nel runtime di integrazione Azure-SSIS.

Nota

Se i pacchetti contengono attività esegui pacchetti che fanno riferimento a pacchetti figlio configurati per l'uso dei livelli di protezione EncryptSensitiveWithUserKey/EncryptAllWithUserKey, è necessario riconfigurare manualmente tali pacchetti figlio per usare rispettivamente i livelli di protezione EncryptSensitiveWithPassword/EncryptAllWithPassword prima di eseguire i pacchetti.

Se i pacchetti sono già configurati per l'uso dei livelli di protezione EncryptSensitiveWithPassword/EncryptAllWithPassword, verranno mantenuto invariati. Le password di crittografia verranno comunque generate in modo casuale quando si caricano i pacchetti in File di Azure per le esecuzioni nel runtime di integrazione Azure-SSIS.

Cambio di ambienti di esecuzione dei pacchetti

Se si parametrizzano il progetto o i pacchetti nel modello di distribuzione del progetto, è possibile creare più configurazioni di Visual Studio per cambiare gli ambienti di esecuzione dei pacchetti. In questo modo, è possibile assegnare valori specifici dell'ambiente ai parametri di progetto/pacchetto in fase di esecuzione. È consigliabile disporre di almeno due configurazioni di Visual Studio diverse per le esecuzioni di pacchetti negli ambienti locali e cloud, in modo da poter abilitare i progetti in base alla configurazione cloud. Ecco un esempio dettagliato di cambio degli ambienti di esecuzione dei pacchetti tra il computer locale e Azure:

  1. Si supponga che il pacchetto contenga un'attività file system che imposta gli attributi di un file. Quando viene eseguito nel computer locale, imposta gli attributi di un file archiviato nel file system locale. Quando viene eseguito nel runtime di integrazione Azure-SSIS, si vuole impostare gli attributi di un file archiviato in File di Azure. Creare prima di tutto un parametro di pacchetto di tipo stringa e denominarlo FilePath per contenere il valore del percorso del file di destinazione.

    Create package parameter

  2. Nella pagina Generale della finestra Editor attività File System impostare quindi i parametri della proprietà SourceVariable nella sezione Source Connessione ion con il parametro del pacchetto FilePath.

    Parameterize source connection

  3. Per impostazione predefinita, è disponibile una configurazione di Visual Studio esistente per le esecuzioni di pacchetti nell'ambiente locale denominato Sviluppo. Creare una nuova configurazione di Visual Studio per le esecuzioni di pacchetti nell'ambiente cloud denominato Azure, vedere Creazione di una nuova configurazione di Visual Studio, se non è già stato fatto.

  4. Quando si visualizzano i parametri del pacchetto, selezionare il pulsante Aggiungi parametri alle configurazioni per aprire la finestra Gestisci valori parametri per il pacchetto. Assegnare quindi valori diversi del percorso del file di destinazione al parametro del pacchetto FilePath nelle configurazioni Sviluppo e Azure .

    Assign parameter values

  5. Abilitare il progetto con la configurazione cloud, vedere Azure-enable existing SSIS projects (Abilitazione di Azure per i progetti SSIS esistenti, se non è già stato fatto). Configurare quindi le impostazioni abilitate per Azure per abilitare autenticazione di Windows per il runtime di integrazione Azure-SSIS per accedere alle File di Azure, vedere Configurazione delle impostazioni abilitate per Azure, se non è già stato fatto.

  6. Eseguire il pacchetto in Azure. È possibile ripristinare l'ambiente di esecuzione del pacchetto nel computer locale selezionando la configurazione sviluppo .

    Switch Visual Studio Configuration

Uso del file di configurazione del pacchetto

Se si usano i file di configurazione del pacchetto nel modello di distribuzione pacchetti, è possibile assegnare valori specifici dell'ambiente alle proprietà del pacchetto in fase di esecuzione. Questi file verranno caricati automaticamente in File di Azure per le esecuzioni nel runtime di integrazione Azure-SSIS.

Controllo dei log di esecuzione dei pacchetti

Dopo aver avviato l'esecuzione del pacchetto, i log verranno formattati e visualizzati nella finestra Stato di SSDT. Per un pacchetto a esecuzione prolungata, i log verranno aggiornati periodicamente entro i minuti. È possibile annullare immediatamente l'esecuzione del pacchetto selezionando il pulsante Arresta nella barra degli strumenti di SSDT. È anche possibile trovare temporaneamente i dati non elaborati dei relativi log nel percorso UNC seguente: \\<YourStorageAccountName>.file.core.windows.net\ssdtexecution\<YourProjectName-FirstConnectTime>\<YourPackageName-tmp-ExecutionTime>\logs, ma la pulizia verrà eseguita dopo un giorno.

Limitazioni correnti

  • SSDT abilitato per Azure supporta solo aree cloud commerciali/globali e non supporta per il momento aree cloud governative/nazionali.

Dopo aver eseguito i pacchetti in Azure da SSDT, è possibile distribuirli ed eseguirli come attività Esegui pacchetto SSIS nelle pipeline di Azure Data Factory, vedere Esecuzione di pacchetti SSIS come attività Esegui pacchetto SSIS nelle pipeline di Azure Data Factory.