Megosztás:


Csomagfeladat végrehajtása

A következőkre vonatkozik:SQL Server SSIS integrációs modul az Azure Data Factoryben

A Csomag végrehajtása feladat kibővíti az Integrációs szolgáltatások vállalati képességeit azáltal, hogy lehetővé teszi, hogy a csomagok más csomagokat futtasson egy munkafolyamat részeként.

A Csomag végrehajtása feladatot a következő célokra használhatja:

  • Az összetett csomag munkafolyamatának lebontását. Ezzel a feladatsal több csomagra bonthatja a munkafolyamatokat, amelyek könnyebben olvashatók, tesztelhetők és karbantarthatóak. Ha például csillagsémába tölt be adatokat, létrehozhat egy külön csomagot az egyes dimenziók és ténytáblák feltöltéséhez.

  • Csomagok részeinek újrafelhasználása. Más csomagok újra felhasználhatják a csomag munkafolyamatának részeit. Létrehozhat például egy adatkinyerési modult, amely különböző csomagokból hívható meg. Az extrakciós modult meghívó csomagok különböző adattisztítási, szűrési vagy összesítési műveleteket hajthatnak végre.

  • Munkaegységek csoportosítása. A munkaegységek külön csomagokba ágyazhatók, és tranzakciós összetevőként csatlakoztathatók a szülőcsomag munkafolyamatához. A szülőcsomag például futtatja a kiegészítő csomagokat, és a kiegészítő csomagok sikeressége vagy sikertelensége alapján a szülőcsomag véglegesíti vagy visszaállítja a tranzakciót.

  • Csomagbiztonság szabályozása. A csomagkészítőknek csak a többcsomagos megoldások egy részére van szükségük. Ha egy csomagot több csomagra különít el, nagyobb biztonságot biztosíthat, mivel csak a megfelelő csomagokhoz adhat hozzáférést a szerzőknek.

A más csomagokat futtató csomagokat általában szülőcsomagnak nevezik, és a szülő munkafolyamat által futtatott csomagokat gyermekcsomagoknak nevezzük.

Az Integration Services olyan feladatokat tartalmaz, amelyek munkafolyamat-műveleteket hajtanak végre, például végrehajtható fájlokat és kötegfájlokat hajtanak végre. További információ: Folyamatfeladat végrehajtása.

Csomagok futtatása

A Csomag végrehajtása feladat futtathat olyan gyermekcsomagokat, amelyek ugyanabban a projektben találhatók, amely a szülőcsomagot tartalmazza. Válasszon ki egy gyermekcsomagot a projektből úgy, hogy a ReferenceType tulajdonságot Project Reference értékre állítja, majd beállítja a PackageNameFromProjectReference tulajdonságot.

Megjegyzés:

A ReferenceType beállítás készen áll, és külső referencia értékre van állítva, ha a csomagot tartalmazó projektet nem konvertálták a projekt üzembehelyezési modelljére. Integrációs szolgáltatások (SSIS) projektjeinek és csomagjainak üzembe helyezése.

A Csomag végrehajtása feladat az SQL Server msdb-adatbázisban és a fájlrendszerben tárolt csomagokat is futtathatja. A feladat egy OLE DB kapcsolatkezelővel csatlakozik az SQL Serverhez vagy egy fájlkapcsolat-kezelőhöz a fájlrendszer eléréséhez. További információ: OLE DB Connection Manager és Flat File Connection Manager.

A Csomag végrehajtása feladat egy adatbázis-karbantartási tervet is futtathat, amely lehetővé teszi az SSIS-csomagok és az adatbázis-karbantartási tervek kezelését ugyanabban az Integration Services-megoldásban. Az adatbázis-karbantartási terv hasonló az SSIS-csomagokhoz, de egy terv csak adatbázis-karbantartási feladatokat tartalmazhat, és mindig az msdb-adatbázisban tárolja.

Ha a fájlrendszerben tárolt csomagot választ, meg kell adnia a csomag nevét és helyét. A csomag bárhol megtalálható a fájlrendszerben; nem kell ugyanabban a mappában lennie, mint a szülőcsomagnak.

A gyermekcsomag futtatható a szülőcsomag folyamatában, vagy futtatható a saját folyamatában. A gyermekcsomag saját folyamatban való futtatása több memóriát igényel, de nagyobb rugalmasságot biztosít. Ha például a gyermekfolyamat meghiúsul, a szülőfolyamat továbbra is futtatható.

Előfordulhat, hogy azt szeretné, hogy a szülő- és gyermekcsomagok egy egységként meghiúsuljanak, vagy előfordulhat, hogy nem szeretné, hogy egy másik folyamat többletterhelése merüljön fel. Ha például egy gyermekfolyamat meghiúsul, és a csomag szülőfolyamatának későbbi feldolgozása a gyermekfolyamat sikerességétől függ, a gyermekcsomagnak a szülőcsomag folyamatában kell futnia.

Alapértelmezés szerint a Csomag végrehajtása feladat ExecuteOutOfProcess tulajdonsága Hamis értékre van állítva, és a gyermekcsomag ugyanabban a folyamatban fut, mint a szülőcsomag. Ha igaz értékre állítja ezt a tulajdonságot, a gyermekcsomag külön folyamaton fut. Ez lelassíthatja a gyermekcsomag elindítását. Emellett ha igaz értékre állítja a tulajdonságot, akkor nem lehet hibakeresést végezni a csomagon egy csak eszközökkel rendelkező telepítésben. Telepítenie kell az Integrációs szolgáltatásokat. További információ: Integration Services telepítése

Tranzakciók kiterjesztése

A szülőcsomag által használt tranzakció a gyermekcsomagra is kiterjedhet; ezért a mindkét csomag által végzett munka véglegesítheti vagy visszaállítható. Az adatbázis például beszúrja, hogy a szülőcsomag végrehajtja, véglegesítheti vagy visszaállíthatja a gyermekcsomag által végrehajtott adatbázis-beszúrásoktól függően, és fordítva. További információ: Örökölt tranzakciók.

Naplózás részleteinek propagálása

Előfordulhat, hogy a csomag végrehajtása feladat által futtatott gyermekcsomag naplózás használatára van konfigurálva, de a gyermekcsomag mindig továbbítja a napló adatait a szülőcsomagnak. Ha a Csomag végrehajtása tevékenység naplózás használatára van konfigurálva, a tevékenység naplózza a napló adatait a gyermekcsomagból. További információ: Integration Services (SSIS) naplózása.

Értékek átadása gyermekcsomagok számára

A gyermekcsomagok gyakran olyan értékeket használnak, amelyeket egy másik, azt hívogató csomag, általában annak szülőcsomagja ad át. A szülőcsomag értékeinek használata az alábbi helyzetekben hasznos:

  • A nagyobb munkafolyamatok részei különböző csomagokhoz vannak rendelve. Az egyik csomag például éjszakai alapon tölti le az adatokat, összegzi az adatokat, összegző adatértékeket rendel hozzá a változókhoz, majd átadja az értékeket egy másik csomagnak az adatok további feldolgozásához.

  • A szülőcsomag dinamikusan koordinálja a gyermekcsomag tevékenységeit. A szülőcsomag például meghatározza az aktuális hónap napjainak számát, és hozzárendeli a számot egy változóhoz, a gyermekcsomag pedig hányszor hajt végre feladatot.

  • A gyermekcsomagok a szülőcsomag által dinamikusan származtatott adatokhoz való hozzáférést igényelnek. A szülőcsomag például adatokat nyer ki egy táblából, és betölti a sorhalmazt egy változóba, a gyermekcsomag pedig további műveleteket hajt végre az adatokon.

Az alábbi módszerekkel adhat át értékeket egy gyermekcsomagnak:

  • Csomagkonfigurációk

    Az Integration Services egy konfigurációtípust, a szülőcsomag változó konfigurációját biztosítja az értékek szülőről gyermek csomagokra való továbbításához. A konfiguráció a gyermekcsomagra épül, és egy változót használ a szülőcsomagban. A konfiguráció a gyermekcsomag egyik változójára vagy a gyermekcsomag egyik objektumának tulajdonságára van leképezve. A változó a Szkript feladat vagy a Szkript összetevő által használt szkriptekben is használható.

  • Paraméterek

    A Csomag végrehajtása feladatot úgy konfigurálhatja, hogy a szülőcsomag változóit, paramétereit vagy projektparamétereit gyermekcsomag-paraméterekhez rendelje. A projektnek a projekt üzembehelyezési modelljét kell használnia, és a gyermekcsomagnak ugyanabban a projektben kell lennie, amely a szülőcsomagot tartalmazza.

    Megjegyzés:

    Ha a gyermekcsomag paramétere nem bizalmas, és egy bizalmas szülőparaméterre van leképezve, a gyermekcsomag futtatása sikertelen lesz.

    A következő leképezési feltételek támogatottak:

    A bizalmas, gyermekcsomag paraméter egy bizalmas szülőparaméterre van leképezve

    A bizalmas, gyermekcsomag paraméter nem bizalmas szülőparaméterre van leképezve

    A nem bizalmas gyermekcsomag paraméter nem bizalmas szülőparaméterre van leképezve

A szülőcsomag változója definiálható a Csomag végrehajtása tevékenység hatókörében vagy egy szülőtárolóban, például a csomagban. Ha több azonos nevű változó érhető el, a rendszer a Csomag végrehajtása tevékenység hatókörében definiált változót használja, vagy a tevékenységhez legközelebb eső változót.

További információ: Változók és paraméterek értékeinek használata gyermekcsomagban.

Szülőcsomag változóinak elérése

A gyermekcsomagok a szkriptfeladat használatával férhetnek hozzá a szülőcsomag változóihoz. Amikor megadja a szülőcsomag változójának nevét a szkriptlapon a Szkript feladatszerkesztőben, ne vegye fel a Felhasználót a változó nevére. Ellenkező esetben a gyermekcsomag nem találja a változót a szülőcsomag futtatásakor.

A csomagvégrehozási feladat konfigurálása

A tulajdonságokat az SSIS Designer használatával vagy programozott módon állíthatja be.

Az SSIS Designerben beállítható tulajdonságokról az alábbi témakörben talál további információt:

A tulajdonságok SSIS Designerben való beállításával kapcsolatos további információkért kattintson a következő témakörre:

A csomagvégrehozási feladat programozott konfigurálása

A tulajdonságok programozott beállításával kapcsolatos további információkért kattintson a következő témakörre:

Csomagfeladat-szerkesztő végrehajtása

A Csomag végrehajtása feladatszerkesztő használatával konfigurálja a Csomag végrehajtása feladatot. A Csomag végrehajtása feladat kibővíti az Integrációs szolgáltatások vállalati képességeit azáltal, hogy lehetővé teszi, hogy a csomagok más csomagokat futtasson egy munkafolyamat részeként.

Mit szeretne tenni?

A Csomag végrehajtása feladatszerkesztő megnyitása

  1. Nyisson meg egy Integration Services-projektet a Visual Studióban, amely egy Csomag végrehajtása feladatot tartalmaz.

  2. Kattintson a jobb gombbal a feladatra az SSIS-tervezőben, majd kattintson a Szerkesztés parancsra.

Az Általános lap beállításainak megadása

Név
Adjon meg egy egyedi nevet a Csomag végrehajtása feladatnak. Ezt a nevet használja a feladatikon címkeként.

Megjegyzés:

A feladatneveknek egyedinek kell lenniük egy csomagon belül.

Leírás
Írja be a Csomag végrehajtása feladat leírását.

A csomaglap beállításainak megadása

ReferenceType
Válassza a projektben lévő gyermekcsomagok projekthivatkozását . Külső hivatkozás kiválasztása a csomagon kívül található gyermekcsomagokhoz

Megjegyzés:

A ReferenceType beállítás készen áll, és külső referencia értékre van állítva, ha a csomagot tartalmazó projektet nem konvertálták a projekt üzembehelyezési modelljére. Integrációs szolgáltatások (SSIS) projektjeinek és csomagjainak üzembe helyezése.

Jelszó
Ha a gyermekcsomag jelszóval védett, adja meg a gyermekcsomag jelszavát, vagy kattintson a három pontra (...), és hozzon létre egy új jelszót a gyermekcsomaghoz.

ExecuteOutOfProcess
Adja meg, hogy a gyermekcsomag a szülőcsomag folyamatában vagy egy külön folyamatban fut-e. Alapértelmezés szerint a Csomag végrehajtása feladat ExecuteOutOfProcess tulajdonsága Hamis értékre van állítva, és a gyermekcsomag ugyanabban a folyamatban fut, mint a szülőcsomag. Ha ezt a tulajdonságot igaz értékre állítja, a gyermekcsomag külön folyamaton fut. Ez lelassíthatja a gyermekcsomag elindítását. Emellett ha a tulajdonság értéke igaz, akkor nem lehet hibakeresést végezni a csomagon egy csak eszközökkel rendelkező telepítésben; telepítenie kell az Integration Services-terméket. További információ: Integration Services telepítése.

ReferenceType Dinamikus beállítások

ReferenceType = Külső referencia

Location
Válassza ki a gyermekcsomag helyét. Ez a tulajdonság az alábbi táblázatban felsorolt lehetőségeket tartalmazza.

Érték Description
SQL Server Állítsa be a helyet egy SQL Server-példányra.
Fájlrendszer Állítsa be a helyet a fájlrendszerre.

Kapcsolat
Válassza ki a gyermekcsomag tárolási helyét.

PackageNameReadOnly
Megjeleníti a csomag nevét.

ReferenceType = Projekthivatkozás

PackageNameFromProjectReference
Válassza ki a projektben található csomagot gyermekcsomagként.

Hely dinamikus beállításai

Hely = SQL Server

Kapcsolat
Válasszon ki egy OLE DB kapcsolatkezelőt a listában, vagy kattintson < az Új kapcsolat...> elemre egy új kapcsolatkezelő létrehozásához.

Kapcsolódó témakörök:OLE DB Connection Manager

PackageName
Írja be a gyermekcsomag nevét, vagy kattintson a három pontra (...), majd keresse meg a csomagot.

Location = Fájlrendszer

Kapcsolat
Válasszon ki egy Fájlkapcsolat-kezelőt a listában, vagy kattintson az < gombra egy > új kapcsolatkezelő létrehozásához.

Kapcsolódó témakörök:Fájlkapcsolat-kezelő

PackageNameReadOnly
Megjeleníti a csomag nevét.

Beállítások megadása a Paraméterkötések lapon

A szülőcsomagból vagy a projektből származó értékeket átadhatja a gyermekcsomagnak. A projektnek a projekt üzembehelyezési modelljét kell használnia, és a gyermekcsomagnak ugyanabban a projektben kell lennie, amely a szülőcsomagot tartalmazza.

A projektek projekttelepítési modellre való konvertálásáról további információt az Integrációs szolgáltatások (SSIS) projektjeinek és csomagjainak üzembe helyezése című témakörben talál.

Gyermekcsomag paramétere
Adja meg vagy válassza ki a gyermekcsomag paraméter nevét.

Kötési paraméter vagy változó
Válassza ki azt a paramétert vagy változót, amely a gyermekcsomagnak átadni kívánt értéket tartalmazza.

Add
Ide kattintva egy paramétert vagy változót gyermekcsomag-paraméterhez rendelhet.

Remove
Ide kattintva eltávolíthat egy paraméter vagy változó és egy gyermekcsomag paraméter közötti leképezést.