Estrarre, trasformare e caricare i dati in Linux con SSIS

Si applica a: SQL Server - Linux

Questo articolo descrive come eseguire pacchetti di SQL Server Integration Services (SSIS) in Linux. SSIS risolve problemi di integrazione dei dati complessi estraendo i dati da più origini e formati, trasformando e pulendo i dati e caricando i dati in più destinazioni.

I pacchetti SSIS in esecuzione in Linux possono connettersi a Microsoft SQL Server in esecuzione in Windows in locale o nel cloud, in Linux oppure in Docker. Possono anche connettersi a database SQL di Azure, Azure Synapse Analytics, origini dati ODBC, file flat e altre origini dati, tra cui origini ADO.NET, file XML e servizi OData.

Per altre informazioni sulle funzionalità di SSIS, vedere SQL Server Integration Services.

Prerequisiti

Per eseguire i pacchetti SSIS in un computer Linux, è prima di tutto necessario installare SQL Server Integration Services. SSIS non è incluso nell'installazione di SQL Server per computer Linux. Per le istruzioni di installazione, vedere Installare SQL Server Integration Services (SSIS) in Linux.

È necessario anche un computer Windows per creare e gestire i pacchetti. Gli strumenti di progettazione e gestione di SSIS sono applicazioni Windows che attualmente non sono disponibili per i computer Linux.

Eseguire un pacchetto SSIS

Per eseguire un pacchetto SSIS in un computer Linux, seguire questa procedura:

  1. Copiare il pacchetto SSIS nel computer Linux.

  2. Esegui questo comando:

    dtexec /F \<package name \> /DE <protection password>
    

Eseguire un pacchetto crittografato (protetto da password)

Esistono tre modi per eseguire un pacchetto SSIS crittografato con una password:

  1. Impostare il valore della variabile di ambiente SSIS_PACKAGE_DECRYPT, come illustrato nell'esempio seguente:

    SSIS_PACKAGE_DECRYPT=test /opt/ssis/bin/dtexec /f package.dtsx
    
  2. Specificare l'opzione /de[crypt] per immettere la password in modo interattivo, come illustrato nell'esempio seguente:

    /opt/ssis/bin/dtexec /f package.dtsx /de
    
    Enter decryption password:
    
  3. Specificare l'opzione /de per immettere la password nella riga di comando, come illustrato nell'esempio seguente. Questo metodo non è consigliato perché archivia la password di decrittografia con il comando nella cronologia dei comandi.

    opt/ssis/bin/dtexec /f package.dtsx /de test
    
    Warning: Using /De[crypt] <password> may store decryption password in command history.
    
    You can use /De[crypt] instead to enter interactive mode,
    or use environment variable SSIS_PACKAGE_DECRYPT to set decryption password.
    

Progettare pacchetti

Connettersi alle origini dati ODBC. Con SSIS in Linux CTP 2.1 Refresh e versioni successive, i pacchetti SSIS possono usare le connessioni ODBC in Linux. Questa funzionalità è stata testata con i driver ODBC di SQL Server e MySQL, ma è previsto che funzioni anche con i driver ODBC Unicode che osservano la specifica ODBC. In fase di progettazione è possibile specificare un DSN o una stringa di connessione per la connessione ai dati ODBC. È anche possibile usare l'autenticazione di Windows. Per altre informazioni, vedere il post di blog che annuncia il supporto ODBC in Linux.

Percorsi. Fornire percorsi di tipo Windows nei pacchetti SSIS. SSIS in Linux non supporta i percorsi di tipo Linux, ma esegue il mapping dei percorsi di tipo Windows ai percorsi di tipo Linux in fase di esecuzione, quindi SSIS in Linux, ad esempio, esegue il mapping del percorso di tipo Windows C:\test al percorso di tipo Linux /test.

Distribuire i pacchetti

In questa versione è possibile archiviare solo i pacchetti nel file system in Linux. Il database del catalogo SSIS e il servizio SSIS legacy non sono disponibili in Linux per la distribuzione e l'archiviazione dei pacchetti.

Pianificare i pacchetti

È possibile usare gli strumenti di pianificazione di sistema Linux, ad esempio cron, per definire la pianificazione dei pacchetti. Non è possibile usare SQL Agent in Linux per pianificare l'esecuzione di pacchetti in questa versione. Per ulteriori informazioni, vedere Pianificare l'esecuzione del pacchetto SQL Server Integration Services in Linux con cron.

Limitazioni e problemi noti

Per informazioni dettagliate sulle limitazioni e sui problemi noti di SSIS in Linux, vedere Limitazioni e problemi noti di SSIS in Linux.

Altre informazioni su SSIS in Linux

Per altre informazioni su SSIS in Linux, vedere i post di blog seguenti:

Altre informazioni su SSIS

Microsoft SQL Server Integration Services (SSIS) è una piattaforma per la compilazione di soluzioni di integrazione dei dati dalle prestazioni elevate, in cui sono incluse funzionalità per l'estrazione, la trasformazione e il caricamento (ETL) di pacchetti per il data warehousing. Per altre informazioni su SSIS, vedere SQL Server Integration Services.

SSIS include le funzionalità seguenti:

  • Strumenti grafici e procedure guidate per la compilazione e il debug di pacchetti in Windows
  • Varie attività per l'esecuzione di funzioni del flusso di lavoro, ad esempio operazioni FTP, esecuzione di istruzioni SQL e invio di messaggi di posta elettronica
  • Varie origini e destinazioni dati per l'estrazione e il caricamento dei dati
  • Varie trasformazioni per la pulizia, l'aggregazione, l'unione e la copia dei dati
  • API (Application Programming Interface) per l'estensione di SSIS con componenti e script personalizzati

Per iniziare a usare SSIS, scaricare l’ultima versione di SSIS Come creare un pacchetto ETL.

Per altre informazioni su SSIS, vedere gli articoli seguenti: