Delen via


Pakkettaak uitvoeren

Van toepassing op:SQL Server SSIS Integration Runtime in Azure Data Factory

De taak Pakket uitvoeren breidt de bedrijfsmogelijkheden van Integration Services uit door pakketten andere pakketten uit te voeren als onderdeel van een werkstroom.

U kunt de taak Pakket uitvoeren gebruiken voor de volgende doeleinden:

  • Complexe pakketwerkstroom opsplitsen. Met deze taak kunt u de werkstroom opsplitsen in meerdere pakketten, die gemakkelijker kunnen worden gelezen, getest en onderhouden. Als u bijvoorbeeld gegevens in een stervormig schema laadt, kunt u een afzonderlijk pakket maken om elke dimensie en de feitentabel te vullen.

  • Onderdelen van pakketten hergebruiken. Andere pakketten kunnen delen van een pakketwerkstroom hergebruiken. U kunt bijvoorbeeld een module voor gegevensextractie bouwen die kan worden aangeroepen vanuit verschillende pakketten. Elk pakket dat de extractiemodule aanroept, kan verschillende bewerkingen uitvoeren voor het wissen, filteren of samenvoegen van gegevens.

  • Werkeenheden groeperen. Werkeenheden kunnen worden ingekapseld in afzonderlijke pakketten en worden samengevoegd als transactionele onderdelen aan de werkstroom van een bovenliggend pakket. Het bovenliggende pakket voert bijvoorbeeld de accessoirepakketten uit en op basis van het slagen of mislukken van de accessoirepakketten, voert het bovenliggende pakket de transactie door of terug.

  • Pakketbeveiliging beheren. Auteurs van pakketten hebben alleen toegang nodig tot een deel van een oplossing voor meerdere pakketten. Door een pakket in meerdere pakketten te scheiden, kunt u een hoger beveiligingsniveau bieden, omdat u een auteur alleen toegang kunt verlenen tot de relevante pakketten.

Een pakket dat andere pakketten uitvoert, wordt meestal het bovenliggende pakket genoemd en de pakketten die door een bovenliggende werkstroom worden uitgevoerd, worden onderliggende pakketten genoemd.

Integration Services bevat taken die werkstroombewerkingen uitvoeren, zoals het uitvoeren van uitvoerbare bestanden en batchbestanden. Zie Procestaak uitvoeren voor meer informatie.

Pakketten uitvoeren

De taak Pakket uitvoeren kan onderliggende pakketten uitvoeren die zijn opgenomen in hetzelfde project dat het bovenliggende pakket bevat. U selecteert een onderliggend pakket in het project door de eigenschap ReferenceType in te stellen op Project Reference en vervolgens de eigenschap PackageNameFromProjectReference in te stellen.

Opmerking

De optie ReferenceType is alleen gereed en is ingesteld op Externe verwijzing als het project met het pakket niet is geconverteerd naar het projectimplementatiemodel. Implementeer SSIS-projecten (Integration Services) en -pakketten.

De taak Pakket uitvoeren kan ook pakketten uitvoeren die zijn opgeslagen in de SQL Server msdb-database en pakketten die zijn opgeslagen in het bestandssysteem. De taak maakt gebruik van een OLE DB-verbindingsbeheer om verbinding te maken met SQL Server of een bestandsverbindingsbeheer voor toegang tot het bestandssysteem. Zie OLE DB Connection Manager en Flat File Connection Manager voor meer informatie.

De taak Pakket uitvoeren kan ook een databaseonderhoudsplan uitvoeren, waarmee u zowel SSIS-pakketten als databaseonderhoudsplannen in dezelfde Integration Services-oplossing kunt beheren. Een databaseonderhoudsplan is vergelijkbaar met een SSIS-pakket, maar een plan kan alleen databaseonderhoudstaken bevatten en wordt altijd opgeslagen in de msdb-database.

Als u een pakket kiest dat is opgeslagen in het bestandssysteem, moet u de naam en locatie van het pakket opgeven. Het pakket kan zich overal in het bestandssysteem bevinden; het hoeft niet in dezelfde map te staan als het bovenliggende pakket.

Het onderliggende pakket kan worden uitgevoerd tijdens het proces van het bovenliggende pakket of kan in een eigen proces worden uitgevoerd. Het uitvoeren van het onderliggende pakket in een eigen proces vereist meer geheugen, maar biedt meer flexibiliteit. Als het onderliggende proces bijvoorbeeld mislukt, kan het bovenliggende proces blijven worden uitgevoerd.

Soms wilt u ook dat de bovenliggende en onderliggende pakketten samen mislukken als één eenheid, of dat u de extra overhead van een ander proces niet wilt oplopen. Als een onderliggend proces bijvoorbeeld mislukt en de daaropvolgende verwerking in het bovenliggende proces van het pakket afhankelijk is van het succes van het onderliggende proces, moet het onderliggende pakket worden uitgevoerd in het proces van het bovenliggende pakket.

De eigenschap ExecuteOutOfProcess van de taak Pakket uitvoeren is standaard ingesteld op False en het onderliggende pakket wordt uitgevoerd in hetzelfde proces als het bovenliggende pakket. Als u deze eigenschap instelt op True, wordt het onderliggende pakket uitgevoerd in een afzonderlijk proces. Dit kan het starten van het onderliggende pakket vertragen. Als u de eigenschap instelt op True, kunt u bovendien geen fouten opsporen in het pakket in een installatie met alleen hulpprogramma's. U moet Integration Services installeren. Zie Integration Services installeren voor meer informatie

Transacties uitbreiden

De transactie die door het bovenliggende pakket wordt gebruikt, kan worden uitgebreid naar het onderliggende pakket; Daarom kan het werk dat beide pakketten uitvoeren, worden doorgevoerd of teruggedraaid. De database voegt bijvoorbeeld in dat het bovenliggende pakket kan worden doorgevoerd of teruggedraaid, afhankelijk van de database die het onderliggende pakket uitvoert en omgekeerd. Zie Overgenomen transacties voor meer informatie.

Details van logboekregistratie doorgeven

Het onderliggende pakket dat door de taak Pakket uitvoeren wordt uitgevoerd, is mogelijk of niet geconfigureerd voor het gebruik van logboekregistratie, maar het onderliggende pakket stuurt altijd de logboekgegevens door naar het bovenliggende pakket. Als de taak Pakket uitvoeren is geconfigureerd voor het gebruik van logboekregistratie, registreert de taak de logboekgegevens van het onderliggende pakket. Zie Logboekregistratie van Integration Services (SSIS) voor meer informatie.

Waarden doorgeven aan onderliggende pakketten

Vaak gebruikt een onderliggend pakket waarden die aan het pakket worden doorgegeven door een ander pakket dat het aanroept, gewoonlijk het bovenliggende pakket. Het gebruik van waarden uit een bovenliggend pakket is handig in scenario's zoals het volgende:

  • Onderdelen van een grotere werkstroom worden toegewezen aan verschillende pakketten. Met één pakket worden bijvoorbeeld gegevens per nacht gedownload, worden de gegevens samengevat, worden samenvattingsgegevenswaarden aan variabelen toegewezen en worden de waarden vervolgens doorgegeven aan een ander pakket voor aanvullende verwerking van de gegevens.

  • Het bovenliggende pakket coördineert taken in een onderliggend pakket dynamisch. Het bovenliggende pakket bepaalt bijvoorbeeld het aantal dagen in een huidige maand en wijst het aantal toe aan een variabele en het onderliggende pakket voert een taak uit dat aantal keren.

  • Een onderliggend pakket vereist toegang tot gegevens die dynamisch worden afgeleid door het bovenliggende pakket. Het bovenliggende pakket extraheert bijvoorbeeld gegevens uit een tabel en laadt de rijenset in een variabele en het onderliggende pakket voert extra bewerkingen uit op de gegevens.

U kunt de volgende methoden gebruiken om waarden door te geven aan een onderliggend pakket:

  • Pakketconfiguraties

    Integration Services biedt een configuratietype, de configuratie van de bovenliggende pakketvariabele, voor het doorgeven van waarden van bovenliggende naar onderliggende pakketten. De configuratie is gebaseerd op het onderliggende pakket en maakt gebruik van een variabele in het bovenliggende pakket. De configuratie wordt toegewezen aan een variabele in het onderliggende pakket of aan de eigenschap van een object in het onderliggende pakket. De variabele kan ook worden gebruikt in de scripts die worden gebruikt door de scripttaak of het scriptonderdeel.

  • Parameters

    U kunt de taak Pakket uitvoeren configureren om bovenliggende pakketvariabelen of -parameters, of projectparameters, toe te wijzen aan onderliggende pakketparameters. Het project moet het projectimplementatiemodel gebruiken en het onderliggende pakket moet zich in hetzelfde project bevinden dat het bovenliggende pakket bevat.

    Opmerking

    Als de parameter van het onderliggende pakket niet gevoelig is en is toegewezen aan een bovenliggende parameter die gevoelig is, kan het onderliggende pakket niet worden uitgevoerd.

    De volgende toewijzingsvoorwaarden worden ondersteund:

    Gevoelige, onderliggende pakketparameter is toegewezen aan een gevoelige, bovenliggende parameter

    Gevoelige, onderliggende pakketparameter is toegewezen aan een niet-gevoelige, bovenliggende parameter

    Niet-gevoelige, onderliggende pakketparameter is toegewezen aan een niet-gevoelige, bovenliggende parameter

De variabele bovenliggend pakket kan worden gedefinieerd in het bereik van de taak Pakket uitvoeren of in een bovenliggende container, zoals het pakket. Als er meerdere variabelen met dezelfde naam beschikbaar zijn, wordt de variabele die is gedefinieerd in het bereik van de taak Pakket uitvoeren gebruikt of de variabele die zich het dichtst bij de taak bevindt.

Zie De waarden van variabelen en parameters gebruiken in een onderliggend pakket voor meer informatie.

Toegang tot bovenliggende pakketvariabelen

Onderliggende pakketten hebben toegang tot bovenliggende pakketvariabelen met behulp van de scripttaak. Wanneer u de naam van de bovenliggende pakketvariabele invoert op de pagina Script in de scripttaakeditor, moet u gebruiker niet opnemen in de naam van de variabele. Anders vindt het onderliggende pakket de variabele niet wanneer u het bovenliggende pakket uitvoert.

De taak Pakket uitvoeren configureren

U kunt eigenschappen instellen via SSIS Designer of programmatisch.

Klik op het volgende onderwerp voor meer informatie over de eigenschappen die u in SSIS Designer kunt instellen:

Klik op het volgende onderwerp voor meer informatie over het instellen van deze eigenschappen in SSIS Designer:

De taak Pakket uitvoeren programmatisch configureren

Klik op het volgende onderwerp voor meer informatie over het programmatisch instellen van deze eigenschappen:

Pakkettaakeditor uitvoeren

Gebruik de editor pakkettaak uitvoeren om de pakkettaak uitvoeren te configureren. De taak Pakket uitvoeren breidt de bedrijfsmogelijkheden van Integration Services uit door pakketten andere pakketten uit te voeren als onderdeel van een werkstroom.

Wat wilt u doen?

Open de editor voor het uitvoeren van pakkettaken

  1. Open een Integration Services-project in Visual Studio met een taak Pakket uitvoeren.

  2. Klik met de rechtermuisknop op de taak in SSIS Designer en klik vervolgens op Bewerken.

De opties instellen op de pagina Algemeen

Naam
Geef een unieke naam op voor de taak Pakket uitvoeren. Deze naam wordt gebruikt als het label in het taakpictogram.

Opmerking

Taaknamen moeten uniek zijn binnen een pakket.

Beschrijving
Typ een beschrijving van de taak Pakket uitvoeren.

De opties op de pakketpagina instellen

ReferenceType
Selecteer Projectreferentie voor onderliggende pakketten die zich in het project bevinden. Externe verwijzing selecteren voor onderliggende pakketten die zich buiten het pakket bevinden

Opmerking

De optie ReferenceType is alleen gereed en is ingesteld op Externe verwijzing als het project met het pakket niet is geconverteerd naar het projectimplementatiemodel. Implementeer SSIS-projecten (Integration Services) en -pakketten.

wachtwoord
Als het onderliggende pakket met een wachtwoord is beveiligd, geeft u het wachtwoord voor het onderliggende pakket op of klikt u op de knop met het beletselteken (...) en maakt u een nieuw wachtwoord voor het onderliggende pakket.

ExecuteOutOfProcess
Geef op of het onderliggende pakket wordt uitgevoerd in het proces van het bovenliggende pakket of in een afzonderlijk proces. De eigenschap ExecuteOutOfProcess van de taak Pakket uitvoeren is standaard ingesteld op False en het onderliggende pakket wordt uitgevoerd in hetzelfde proces als het bovenliggende pakket. Als u deze eigenschap instelt op true, wordt het onderliggende pakket uitgevoerd in een afzonderlijk proces. Dit kan het starten van het onderliggende pakket vertragen. Als u de eigenschap instelt op true, kunt u bovendien geen fouten opsporen in het pakket in een installatie met alleen hulpprogramma's; u moet het Integration Services-product installeren. Zie Integration Services installeren voor meer informatie.

Dynamische opties voor ReferenceType

ReferenceType = Externe verwijzing

Plaats
Selecteer de locatie van het onderliggende pakket. Deze eigenschap bevat de opties in de volgende tabel.

Waarde Description
SQL Server Stel de locatie in op een exemplaar van SQL Server.
Bestandssysteem Stel de locatie in op het bestandssysteem.

Verbinding
Selecteer het type opslaglocatie voor het onderliggende pakket.

PackageNameReadOnly
Geeft de pakketnaam weer.

ReferenceType = Project Reference

PackageNameFromProjectReference
Selecteer een pakket in het project om het onderliggende pakket te zijn.

Dynamische opties voor locatie

Locatie = SQL Server

Verbinding
Selecteer een OLE DB-verbindingsbeheer in de lijst of klik op <Nieuwe verbinding...> om een nieuw verbindingsbeheer te maken.

Verwante onderwerpen:OLE DB-verbindingsbeheer

PackageName
Typ de naam van het onderliggende pakket of klik op het beletselteken (...) en zoek het pakket.

Location = Bestandssysteem

Verbinding
Selecteer een bestandsverbindingsbeheer in de lijst of klik op <Nieuwe verbinding...> om een nieuw verbindingsbeheer te maken.

Verwante onderwerpen:Bestandsverbindingsbeheer

PackageNameReadOnly
Geeft de pakketnaam weer.

De opties instellen op de pagina Parameterbindingen

U kunt waarden van het bovenliggende pakket of het project doorgeven aan het onderliggende pakket. Het project moet het projectimplementatiemodel gebruiken en het onderliggende pakket moet zich in hetzelfde project bevinden dat het bovenliggende pakket bevat.

Zie SSIS-projecten (Deploy Integration Services) en -pakketten voor informatie over het converteren van projecten naar het projectimplementatiemodel.

Parameter onderliggend pakket
Voer een naam in of selecteer deze voor de parameter van het onderliggende pakket.

Bindingsparameter of -variabele
Selecteer de parameter of variabele die de waarde bevat die u wilt doorgeven aan het onderliggende pakket.

Add
Klik om een parameter of variabele toe te wijzen aan een parameter voor een onderliggend pakket.

Remove
Klik om een toewijzing tussen een parameter of variabele en een onderliggende pakketparameter te verwijderen.