Migrazione lift-and-shift dei carichi di lavoro di SQL Server Integration Services nel cloud

Si applica a:SQL Server SSIS Integration Runtime in Azure Data Factory

È ora possibile spostare progetti, pacchetti e carichi di lavoro di SQL Server Integration Services (SSIS) nel cloud di Azure. Distribuire, eseguire e gestire progetti e pacchetti SSIS nel catalogo SSIS (SSISDB) per il database SQL di Azure o Istanza gestita di SQL con strumenti noti come SQL Server Management Studio (SSMS).

Vantaggi

Spostare i carichi di lavoro SSIS locali in Azure presenta i potenziali vantaggi seguenti:

  • Riduzione dei costi operativi e riduzione delle attività di gestione dell'infrastruttura svolte quando si esegue SSIS in locale o in macchine virtuali di Azure.
  • Aumento della disponibilità elevata con la possibilità di specificare più nodi per cluster, nonché le funzionalità di disponibilità elevata di Azure e del database SQL di Azure.
  • Aumento della scalabilità con la possibilità di specificare più core per nodo (riduzione del numero di istanze) e più nodi per cluster (aumento del numero di istanze).

Architettura di SSIS in Azure

Nella tabella seguente vengono evidenziate le differenze tra SSIS in locale e SSIS in Azure.

La differenza più significativa è la separazione dell'archiviazione dal runtime. Azure Data Factory ospita il motore di runtime per i pacchetti SSIS in Azure. Il motore di runtime è definito Runtime di integrazione Azure-SSIS (Azure-SSIS IR). Per altre informazioni, vedere Runtime di integrazione Azure-SSIS.

Ufficio Storage esecuzione Scalabilità
In locale SQL Server Runtime SSIS ospitato da SQL Server SQL Server Integration Services Scale Out (in SQL Server 2017 e versioni successive)

Soluzioni personalizzate (nelle versioni precedenti di SQL Server)
In Azure Database SQL o Istanza gestita di SQL Runtime di integrazione Azure-SSIS, un componente di Azure Data Factory Opzioni di scalabilità per il runtime di integrazione Azure-SSIS

Provisioning di SSIS in Azure

Provisioning. Prima di distribuire ed eseguire i pacchetti SSIS in Azure, è necessario eseguire il provisioning del catalogo SSIS (SSISDB) e del runtime di integrazione Azure-SSIS.

È sufficiente eseguire il provisioning del runtime di integrazione Azure-SSIS una sola volta. Successivamente, è possibile usare strumenti familiari, ad esempio SQL Server Data Tools (SSDT) e SQL Server Management Studio (SSMS), per distribuire, configurare, eseguire, monitorare, pianificare e gestire i pacchetti.

Nota

Il runtime di integrazione Azure-SSIS non è ancora disponibile in tutte le aree di Azure. Per informazioni sulle aree supportate, vedere i prodotti Microsoft Azure disponibili in base all'area geografica.

Eseguire l’aumento e lo scale-out.Quando si esegue il provisioning del runtime di integrazione Azure-SSIS, è possibile aumentare e ridurre il numero di istanze specificando i valori per le opzioni seguenti:

  • La dimensione del nodo, incluso il numero di core, e il numero di nodi del cluster.
  • L'istanza esistente del database SQL di Azure per ospitare il database del catalogo SSIS (SSISDB) e il livello di servizio per il database.
  • Le esecuzioni parallele massime per ogni nodo.

Miglioramento delle prestazioni. Per altre informazioni, vedere Configurare il runtime di integrazione Azure-SSIS per garantire prestazioni elevate.

Ridurre i costi. Per ridurre i costi, eseguire il runtime di integrazione Azure-SSIS solo quando necessario. Per altre informazioni, vedere Come avviare e arrestare il runtime di integrazione Azure SSIS in base a una pianificazione.

Progettare pacchetti

Continuare a progettare e compilare i pacchetti in locale in SSDT o in Visual Studio con SSDT installato.

Connettersi alle origini dati

Per connettersi alle origini dati locali dal cloud con l'autenticazione di Windows, vedere Connettersi a origini dati e condivisioni file con l'autenticazione di Windows in pacchetti SSIS in Azure.

Per connettersi a file e condivisioni file, vedere Aprire e salvare file in locale e in Azure con pacchetti SSIS distribuiti in Azure.

Componenti SSIS disponibili

Quando si effettua il provisioning di un'istanza del database SQL per ospitare SSISDB, vengono installati anche il Feature Pack di Azure per SSIS e Access Redistributable. Questi componenti offrono la connettività a varie origini dati di Azure e ai file di Excel e Access, oltre che alle origini dati supportate dai componenti predefiniti.

È anche possibile installare componenti aggiuntivi, ad esempio un driver non installato per impostazione predefinita. Per altre informazioni, vedere Personalizzare l'installazione del runtime di integrazione Azure-SSIS.

Se si ha una licenza Enterprise Edition, sono disponibili componenti aggiuntivi. Per altre informazioni, vedere Provisioning della Enterprise Edition per il Runtime di integrazione Azure-SSIS.

Se l'utente è un ISV può aggiornare l'installazione dei componenti concessi in licenza per renderli disponibili in Azure. Per altre informazioni, vedere Installare componenti personalizzati a pagamento o concessi in licenza per il runtime di integrazione Azure-SSIS.

Distribuire ed eseguire i pacchetti

Per iniziare, vedere Esercitazione: Distribuire ed eseguire un pacchetto di SQL Server Integration Services (SSIS) in Azure.

Prerequisiti

Per distribuire pacchetti SSIS in Azure è necessario avere una delle versioni seguenti di SQL Server Data Tools (SSDT):

  • Per Visual Studio 2017, versione 15.3 o successiva.
  • Per Visual Studio 2015, versione 17.2 o successiva.

Connettersi a SSISDB

Il nome del database SQL che ospita SSISDB diventa la prima parte del nome in quattro parti da usare quando si distribuiscono ed eseguono pacchetti da SSDT e SSMS, con il formato seguente: <sql_database_name>.database.windows.net. Per altre informazioni su come connettersi al database del catalogo SSIS in Azure, vedere Connettersi al catalogo SSIS (SSISDB) in Azure.

Distribuire progetti e pacchetti

Per la distribuzione di progetti a SSISDB in Azure è necessario usare il modello di distribuzione dei progetti e non il modello di distribuzione dei pacchetti.

Per distribuire progetti in Azure è possibile usare diversi strumenti e opzioni di scripting comuni:

  • SQL Server Management Studio (SSMS)
  • Transact-SQL (da SSMS, Visual Studio Code o un altro strumento)
  • Uno strumento da riga di comando
  • PowerShell o C# e il modello a oggetti di gestione di SSIS

Il processo di distribuzione convalida i pacchetti, per verificare che siano eseguibili nel runtime di integrazione SSIS di Azure. Per altre informazioni, vedere Convalidare i pacchetti SQL Server Integration Services (SSIS) distribuiti in Azure.

Per un esempio di distribuzione che usa SSMS e la Distribuzione guidata Integration Services, vedere Esercitazione: Distribuire ed eseguire un pacchetto di SQL Server Integration Services (SSIS) in Azure.

Supporto versione

È possibile distribuire in Azure un pacchetto creato con qualsiasi versione di SSIS. Quando si distribuisce un pacchetto in Azure, se non si verificano errori di convalida il pacchetto viene aggiornato automaticamente al formato più recente. In altri termini il pacchetto viene sempre aggiornato alla versione più recente di SSIS.

Eseguire i pacchetti

Per eseguire pacchetti SSIS distribuiti in Azure, è possibile usare diversi metodi. Per altre informazioni, vedere Eseguire i pacchetti SQL Server Integration Services (SSIS) distribuiti in Azure.

Eseguire i pacchetti in una pipeline di Azure Data Factory

Per eseguire un pacchetto SSIS in una pipeline di Azure Data Factory, usare l'attività Esegui pacchetto SSIS. Per altre informazioni, vedere Eseguire un pacchetto SSIS tramite l'attività Esegui pacchetto SSIS in Azure Data Factory.

Quando si esegue un pacchetto in una pipeline di Data Factory con l'attività Esegui pacchetto SSIS, è possibile passare valori al pacchetto in fase di esecuzione. Per passare uno o più valori di runtime, creare ambienti di esecuzione SSIS in SSISDB con SQL Server Management Studio (SSMS). In ogni ambiente creare variabili e assegnare valori corrispondenti ai parametri dei progetti o dei pacchetti. Configurare i pacchetti SSIS in SSMS in modo da associare le variabili di ambiente ai parametri del progetto o del pacchetto. Quando si eseguono i pacchetti nella pipeline, passare da un ambiente all'altro specificando percorsi di ambiente diversi nella scheda Impostazioni dell'interfaccia utente dell'attività Esegui pacchetto SSIS. Per altre informazioni sugli ambienti SSIS, vedere Creare ed eseguire il mapping di un ambiente server.

Monitorare i pacchetti

Per monitorare i pacchetti in esecuzione, usare le opzioni per la creazione di report seguenti di SSMS.

  • Fare clic con il pulsante destro del mouse su SSISDB, quindi selezionare Operazioni attive per aprire la finestra di dialogo Operazioni attive.
  • Selezionare un pacchetto in Esplora oggetti, fare clic con il pulsante destro del mouse e selezionare Report, quindi Report standard e infine Tutte le esecuzioni.

Per monitorare il runtime di integrazione Azure-SSIS, vedere Monitorare il runtime di integrazione Azure-SSIS.

Pianificare i pacchetti

Per pianificare l'esecuzione dei pacchetti distribuiti in Azure, è possibile usare vari strumenti. Per altre informazioni, vedere Pianificare l'esecuzione dei pacchetti di SQL Server Integration Services (SSIS) distribuiti in Azure.

Passaggi successivi

Per iniziare con carichi di lavoro SSIS in Azure, vedere gli articoli seguenti: