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 all-in-one per le aziende. Microsoft Fabric copre tutto, dallo spostamento dati al data science, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Vedere le informazioni su come iniziare una nuova prova gratuita!
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).
Dopo aver creato il progetto abilitato per Azure, verrà richiesto di connettersi a SSIS in Azure Data Factory.
Per connettersi immediatamente al runtime di integrazione Azure-SSIS, vedere Connessione a 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 sottomenu Connetti a SSIS in Azure Data Factory in SSIS in Azure Data Factory .
Abilitazione di progetti SSIS esistenti con abilitazione di Azure
Per i progetti SSIS esistenti, è possibile abilitarli con Azure seguendo questa procedura:
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.
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.
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.
Vedere Connessione ad Azure-SSIS IR per completare la connessione del progetto ad Azure-SSIS IR.
Connettere progetti abilitati per Azure a 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:
Nella pagina Introduzione a SSIS in ADF esaminare l'introduzione e selezionare il pulsante Avanti per continuare.
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.
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.
Selezionare il pulsante Connetti 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.
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.
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 Impostazioni di eliminazione delle regole di valutazione, in cui è possibile selezionare le regole di valutazione da eliminare.
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 Impostazioni abilitate 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 abilitate per Azure. Infine, selezionare il pulsante con i puntini di sospensione (...) per visualizzare la finestra Impostazioni di eliminazione delle regole di valutazione, in cui è possibile selezionare le regole di valutazione da eliminare.
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:
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 abilitate per Azure in SSIS nel sottomenu di Azure Data Factory per visualizzare una finestra contenente le pagine delle proprietà del progetto.
Selezionare la proprietà Abilita autenticazione di Windows nella sezione Impostazioni abilitate 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.
Immettere le credenziali autenticazione di Windows. Ad esempio, per accedere alle File di Azure, è possibile immettere
Azure
rispettivamente ,YourStorageAccountName
eYourStorageAccountKey
per Dominio, Nome utente e Password.
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 .
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 .
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:
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
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:
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.
Nella pagina Generale della finestra Editor attività File System impostare quindi i parametri della proprietà SourceVariable nella sezione Connessione di origine con il parametro del pacchetto FilePath.
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.
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 .
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.
Eseguire il pacchetto in Azure. È possibile ripristinare l'ambiente di esecuzione del pacchetto nel computer locale selezionando la configurazione sviluppo .
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.
Contenuto correlato
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.