Condividi tramite


Esercitazione: Integrazione di SSIS con Fabric Data Warehouse

Si applica a:SQL ServerSSIS Integration Runtime in Azure Data Factory

Questo documento è incentrato sulle procedure consigliate per usare i pacchetti SSIS esistenti per lavorare con il data warehouse nella piattaforma Fabric.

Introduzione

Microsoft Fabric è una piattaforma di analisi completa che copre ogni aspetto del patrimonio di dati di un'organizzazione. Una delle sue esperienze chiave è Fabric Data Warehouse, che funge da soluzione SaaS semplificata per un warehouse completamente transazionale. Archivia i dati in OneLake usando un formato aperto denominato Delta Parquet, assicurandosi che i dati possano essere accessibili da altre esperienze all'interno di Fabric e altre applicazioni client che si connettono usando i driver SQL.

Microsoft Fabric, come piattaforma di analisi, supporta esclusivamente l'autenticazione tramite Microsoft Entra ID per gli utenti e le entità servizio (SPN). Questa scelta intenzionale garantisce la sicurezza centralizzata e basata sulle identità, allineata alle moderne procedure di sicurezza. L'autenticazione SQL e altri metodi di autenticazione non sono supportati in Fabric Data Warehouse all'interno dell'ecosistema Fabric.

Integrazione con Fabric Data Warehouse

Microsoft SQL Server Integration Services (SSIS) è un componente del database di Microsoft SQL Server che è una soluzione ETL. SSIS è ampiamente usato dai molti clienti aziendali per eseguire ETL in locale.

Nel pacchetto SSIS sono necessarie due modifiche chiave perché funzioni senza problemi con Fabric Data Warehouse, come indicato di seguito.

Autenticazione

Se si usa l'autenticazione SQL o l'autenticazione di Windows, riconfigurarla in modo da usare l'utente o il nome dell'entità servizio (SPN) di Microsoft Entra ID. Tenere presente che se si usa un account utente, l'autenticazione a più fattori (MFA) deve essere disabilitata, perché SSIS non supporta le richieste popup. Richiede anche i rispettivi driver, come indicato di seguito:

Per usare la gestione connessione OLEDB:

Per usare la gestione connessione ADO.NET:

Inserimento di file

Il Fabric Data Warehouse consiglia di usare il comando T-SQL nativo 'COPY INTO' per l'inserimento efficiente dei dati nel magazzino dati. Pertanto, tutte le operazioni DFT attualmente basate sulla modalità inserimento veloce o sullo script BCP IN devono essere sostituite con l'istruzione COPY INTO usando Execute SQL Task.

SSIS scrive i dati in Data Warehouse in Fabric

Si tratta di uno scenario ETL comune in cui i dati vengono letti da origini diverse (come database transazionali, condivisioni file di rete, locale/rete e così via), eseguono passaggi di trasformazione e scrivono in una DW designata, come un server SQL, un pool dedicato synapse o qualsiasi altro archivio dati conforme a SQL (come illustrato di seguito nel diagramma).

Diagramma del data warehouse etl come destinazione.

Per creare lo stesso pacchetto SSIS da scrivere in Fabric Data Warehouse, aggiornare prima di tutto l'autenticazione perché si basi si Microsoft Entra ID, se non è già stato fatto. In secondo luogo, preparare temporaneamente i dati in un'istanza di ADLS Gen2. Passare quindi il percorso al comando COPY INTO in Execute SQL Task.

Il componente Destinazione file flessibile consente a un pacchetto SSIS di scrivere dati in Azure Data Lake Storage Gen2 (ADLS Gen2). All'interno dell'attività Flusso di dati, dopo il caricamento e la trasformazione, aggiungere una Destinazione file flessibile, in cui è possibile definire il nome e la posizione del file di destinazione in ADLS Gen2.

Screenshot della parte 1 della destinazione del file flessibile. Screenshot della parte 2 della destinazione del file flessibile. Screenshot della parte 3 della destinazione del file flessibile.

I dati archiviati in Azure Data Lake Storage (ADLS) Gen2 possono essere inseriti in Warehouse usando l'istruzione COPY direttamente tramite Execute SQL Task.

Ad esempio:

COPY INTO <table_name>
FROM 'https://<Your_storage_account>.dfs.core.windows.net/<folder>/'
WITH (
    FILE_TYPE = 'CSV',
    CREDENTIAL=(IDENTITY= 'Storage Account Key', SECRET= '<Your_account_key>'),
    FIELDQUOTE = '"',
    FIELDTERMINATOR=',',
    ROWTERMINATOR='0x0A',
    ENCODING = 'UTF8'
)

Screenshot dell'attività Esegui SQL.

Per istruzioni più dettagliate, vedere Inserire i dati nel warehouse usando l'istruzione COPY.

Limitazioni note

Fabric Data Warehouse supporta un sottoinsieme di tipi di dati T-SQL e non, tutti i comandi T-SQL sono attualmente supportati. I pacchetti potrebbero non riuscire a causa di funzionalità non supportate. Per i dettagli, vedere Tipi di dati in Warehouse e superficie di attacco T-SQL.

Riferimenti

Superficie di attacco T-SQL - Microsoft Fabric | Microsoft Learn

Opzioni per ottenere i dati in Lakehouse - Microsoft Fabric | Microsoft Learn

Inserimento di dati nel warehouse - Microsoft Fabric | Microsoft Learn