Pacchetti Integration Services

Un pacchetto è una raccolta organizzata di connessioni, elementi di flusso di controllo, elementi di flusso di dati, gestori eventi, variabili e configurazioni che possono essere assemblati o compilati a livello di programmazione o utilizzando gli strumenti di progettazione grafica disponibili in SQL Server Integration Services. Il pacchetto completo viene quindi salvato in SQL Server, nell'archivio pacchetti SSIS o nel file system. Il pacchetto è l'unità di lavoro che viene recuperata, eseguita e salvata.

Al momento della creazione un pacchetto è un oggetto vuoto, privo di funzionalità. Per aggiungere funzionalità a un pacchetto è necessario aggiungervi un flusso di controllo e, facoltativamente, uno o più flussi di dati.

Nella figura seguente viene illustrato un semplice pacchetto che contiene un flusso di controllo con un'attività Flusso di dati, che a sua volta contiene un flusso di dati.

Pacchetto con flusso di controllo e flusso di dati

Dopo aver creato il pacchetto base è possibile estenderne le caratteristiche aggiungendovi ad esempio variabili e funzionalità di registrazione. Per ulteriori informazioni, vedere la sezione dedicata agli oggetti che estendono le funzionalità dei pacchetti.

Il pacchetto completo può essere quindi configurato impostando proprietà a livello di pacchetto che implementano la sicurezza, consentono il riavvio del pacchetto da un checkpoint o l'incorporamento di transazioni nel flusso di lavoro. Per ulteriori informazioni, vedere la sezione dedicata alle proprietà che supportano le caratteristiche avanzate.

Contenuto di un pacchetto

Un flusso di lavoro è costituito da una o più attività e contenitori che vengono eseguiti durante l'esecuzione del pacchetto. Per controllare l'ordine o definire le condizioni per l'esecuzione dell'attività o del contenitore successivo nel flusso di controllo del pacchetto, è necessario connettere le attività e i contenitori del pacchetto tramite vincoli di precedenza. È anche possibile raggruppare un subset di attività e contenitori per eseguirli ripetutamente come unità nell'ambito del flusso di controllo del pacchetto. Per ulteriori informazioni, vedere Elementi del flusso di controllo e Progettazione del flusso di controllo di un pacchetto.

Un flusso di dati è costituito da origini e destinazioni che estraggono e caricano dati, da trasformazioni che modificano ed estendono dati e da percorsi che collegano origini, trasformazioni e destinazioni. È possibile aggiungere un flusso di dati a un pacchetto solo se il flusso di controllo del pacchetto include un'attività Flusso di dati. L'attività Flusso di dati è un eseguibile, nell'ambito del pacchetto SSIS, che crea, ordina ed esegue il flusso di dati. Per ogni attività Flusso di dati contenuta in un pacchetto, viene aperta un'istanza distinta del motore flusso di dati. Per ulteriori informazioni, vedere Attività Flusso di dati, Elementi dei flussi di dati e Progettazione del flusso di dati di un pacchetto.

Un pacchetto include in genere almeno una gestione connessione. Una gestione connessione è un collegamento tra un pacchetto e un'origine dei dati, che definisce la stringa di connessione per l'accesso ai dati utilizzati dalle attività, dalle trasformazioni e dai gestori di eventi del pacchetto. Integration Services include tipi di connessione per origini dei dati quali file XML e di testo, database relazionali e database e progetti di Analysis Services. Per ulteriori informazioni, vedere Connessioni in Integration Services.

Modelli di pacchetto

Molti pacchetti vengono utilizzati come modello per la compilazione di pacchetti con le stesse funzionalità di base. È possibile compilare il pacchetto di base e quindi copiarlo oppure impostare tale pacchetto come modello. Un pacchetto che scarica e copia file e quindi ne estrae i dati, ad esempio, può includere le attività FTP e File system in un ciclo Foreach che enumera i file presenti in una cartella. Può inoltre includere gestioni connessioni file flat per l'accesso ai dati e origini file flat per l'estrazione dei dati. Poiché la destinazione dei dati può variare, viene aggiunta a ogni nuovo pacchetto dopo la copia dal pacchetto di base. È anche possibile creare pacchetti e quindi utilizzarli come modelli per i nuovi pacchetti da aggiungere a un progetto di Integration Services. Per ulteriori informazioni, vedere Creazione di pacchetti in Business Intelligence Development Studio.

Alla creazione di un nuovo pacchetto, a livello di programmazione o tramite Progettazione SSIS, viene aggiunto un GUID alla proprietà ID e un nome alla proprietà Name del pacchetto. Se si crea un nuovo pacchetto copiando un pacchetto esistente oppure utilizzando un pacchetto modello, verranno copiati anche il nome e il GUID di tale pacchetto. Quando si utilizza la registrazione questo può costituire un problema, perché il GUID e il nome del pacchetto vengono scritti nei log per identificare il pacchetto a cui appartengono le informazioni registrate. È pertanto necessario modificare il nome e il GUID dei nuovi pacchetti per distinguerli tra loro e da quello da cui sono stati copiati, nei dati dei file di log.

Per modificare il GUID di un pacchetto è necessario rigenerare il GUID nella proprietà ID, disponibile nella finestra Proprietà in Business Intelligence Development Studio. Per cambiare il nome di un pacchetto è necessario modificare il valore della proprietà Name nella finestra Proprietà. In alternativa è possibile utilizzare l'utilità della riga di comando dtutil oppure modificare il nome e il GUID a livello di programmazione. Per ulteriori informazioni, vedere Impostazione delle proprietà di un pacchetto e Utilità dtutil (strumento di SSIS).

Oggetti che estendono le funzionalità dei pacchetti

I pacchetti possono includere oggetti quali gestori eventi, configurazioni, funzionalità di registrazione e variabili, che aggiungono caratteristiche avanzate o estendono quelle esistenti.

Gestori di eventi

Un gestore di evento è un flusso di lavoro che viene eseguito in risposta agli eventi generati da un pacchetto, un'attività o un contenitore. È ad esempio possibile utilizzare un gestore di evento per controllare lo spazio su disco quando si verifica un evento di pre-esecuzione o un errore e inviare a un amministratore un messaggio di posta elettronica contenente informazioni sullo spazio disponibile o sull'errore. Un gestore di evento è strutturato come un pacchetto, con un flusso di controllo e uno o più flussi di dati facoltativi. I gestori di eventi possono essere aggiunti alle singole attività o contenitori di un pacchetto. Per ulteriori informazioni, vedere Gestori di eventi in Integration Services e Aggiunta di gestori di eventi per i pacchetti.

Configurazioni

Una configurazione è un set di coppie proprietà-valore che definisce le proprietà del pacchetto e dei relativi contenitori, attività, variabili, connessioni e gestori di eventi, al momento dell'esecuzione del pacchetto. Grazie alle configurazioni è possibile aggiornare le proprietà senza modificare il pacchetto. Quando il pacchetto viene eseguito, le informazioni di configurazione vengono caricate e i valori delle proprietà vengono aggiornati. Una configurazione può ad esempio aggiornare la stringa di connessione.

La configurazione viene salvata e quindi distribuita insieme al pacchetto quando questo viene installato in un altro computer. Quando il pacchetto viene installato in un ambiente diverso, i valori della configurazione possono essere aggiornati in base alle nuove esigenze. Per ulteriori informazioni, vedere Creazione di configurazioni di pacchetto.

Registrazione e provider di log

Un log è una raccolta di informazioni sul pacchetto che vengono raccolte quando il pacchetto viene eseguito. Un log può ad esempio indicare l'ora di inizio e di fine dell'esecuzione di un pacchetto. Un provider di log definisce il tipo di destinazione e il formato che il pacchetto e i relativi contenitori e attività possono utilizzare per la registrazione delle informazioni in fase di esecuzione. I log sono associati a un pacchetto, ma le attività e i contenitori del pacchetto possono registrare informazioni in qualsiasi log di pacchetto. Integration Services include diversi provider di log predefiniti. Integration Services include ad esempio provider di log per SQL Server e file di testo. È inoltre possibile creare provider di log personalizzati e utilizzarli per la registrazione. Per ulteriori informazioni, vedere Provider di log di Integration Services.

Variabili

Integration Services supporta variabili di sistema e variabili definite dall'utente. Le variabili di sistema contengono informazioni utili sugli oggetti del pacchetto in fase di esecuzione, mentre le variabili definite dall'utente consentono la gestione di scenari personalizzati. Entrambi i tipi di variabili possono essere utilizzati in espressioni, script e configurazioni.

Le variabili a livello di pacchetto includono le variabili di sistema predefinite e le variabili definite dall'utente con ambito pacchetto. Per ulteriori informazioni, vedere Variabili in Integration Services.

Proprietà dei pacchetti che supportano caratteristiche avanzate

L'oggetto pacchetto può essere configurato in modo da supportare caratteristiche quali il riavvio del pacchetto da un determinato checkpoint, la firma del pacchetto con un certificato digitale, l'impostazione del livello di protezione del pacchetto e la protezione dell'integrità dei dati tramite transazioni.

Riavvio dei pacchetti

Il pacchetto include proprietà checkpoint che possono essere utilizzate per riavviarlo quando una o più attività hanno esito negativo. Se ad esempio un pacchetto contiene due attività Flusso di dati che aggiornano due diverse tabelle e la seconda attività non riesce, sarà possibile riavviare il pacchetto senza ripetere la prima attività Flusso di dati. Per i pacchetti a esecuzione prolungata questo consente un notevole risparmio di tempo, perché tramite il riavvio è possibile riprendere l'esecuzione del pacchetto a partire dall'attività non riuscita, anziché rieseguirlo per intero. Per ulteriori informazioni, vedere Riavvio dei pacchetti non riusciti tramite checkpoint.

Sicurezza dei pacchetti

I pacchetti possono essere firmati digitalmente e crittografati utilizzando una password o una chiave utente. La firma digitale consente di autenticare l'origine del pacchetto. Tuttavia, è necessario configurare anche Integration Services per verificare la firma digitale quando viene caricato il pacchetto. Per ulteriori informazioni, vedere Utilizzo delle firme digitali con i pacchetti e Impostazione del livello di protezione dei pacchetti.

Supporto delle transazioni

Se si imposta un attributo di transazione a livello di pacchetto, sarà possibile includere nella transazione tutti i contenitori, le attività e le connessioni del pacchetto. Gli attributi di transazione assicurano che il pacchetto e i relativi elementi abbiano esito positivo o negativo come una singola unità. Poiché un pacchetto può eseguire altri pacchetti e includerli in una transazione, una singola unità di lavoro può comprendere più pacchetti. Per ulteriori informazioni, vedere Verifica dell'integrità dei dati tramite transazioni.

Voci di log personalizzate disponibili nei pacchetti

Nella tabella seguente sono elencate le voci di log personalizzate disponibili per i pacchetti. Per ulteriori informazioni, vedere Implementazione della registrazione nei pacchetti e Messaggi personalizzati per la registrazione.

Voce di log

Descrizione

PackageStart

Indica che l'esecuzione del pacchetto è iniziata.

NotaNota
Questa voce di log viene scritta automaticamente nel log e non può essere esclusa.

PackageEnd

Indica che l'esecuzione del pacchetto è stata completata.

NotaNota
Questa voce di log viene scritta automaticamente nel log e non può essere esclusa.

Diagnostic

Offre informazioni sugli elementi di configurazione del sistema che influiscono sull'esecuzione dei pacchetti, ad esempio il numero di file eseguibili che possono essere eseguiti simultaneamente.

Creazione di un pacchetto

In Integration Services sono disponibili due strumenti grafici per la creazione di pacchetti, Progettazione SSIS e Importazione/Esportazione guidata SQL Server, oltre al modello a oggetti SSIS.

Per ulteriori informazioni sulla creazione dei pacchetti, fare clic su un argomento nell'elenco seguente:

Configurazione di un pacchetto

È possibile impostare le proprietà a livello di programmazione o nella finestra Proprietà di Business Intelligence Development Studio.

Per ulteriori informazioni sulle procedure per l'impostazione delle proprietà, fare clic sull'argomento seguente:

Configurazione di un pacchetto a livello di programmazione

Per ulteriori informazioni sull'impostazione di queste proprietà a livello di programmazione, fare clic sull'argomento seguente:

Icona di Integration Services (piccola) Rimanere aggiornati con Integration Services

Per informazioni sui download, gli articoli, gli esempi e i video Microsoft più recenti, nonché sulle soluzioni selezionate dalla community, visitare la pagina Integration Services su MSDN o Technet:

Per ricevere notifica automatica su questi aggiornamenti, sottoscrivere i feed RSS disponibili nella pagina.