SQL Server Integration Services-csomagok futtatása az Azure-kompatibilis dtexec segédprogrammal

A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!

Ez a cikk az Azure-kompatibilis dtexec (AzureDTExec) parancssori segédprogramot ismerteti. Sql Server Integration Services-csomagok (SSIS) futtatására szolgál az Azure-SSIS integrációs modulon (IR) az Azure Data Factoryben.

A hagyományos dtexec segédprogram az SQL Serverrel rendelkezik. További információ: dtexec segédprogram. Ezt gyakran meghívják külső vezénylők vagy ütemezők, például az ActiveBatch és a Control-M, hogy SSIS-csomagokat futtasson a helyszínen.

A modern AzureDTExec segédprogramhoz tartozik egy SQL Server Management Studio (SSMS) eszköz. Külső vezénylők vagy ütemezők is meghívhatják, hogy SSIS-csomagokat futtasson az Azure-ban. Ez megkönnyíti az SSIS-csomagok felhőbe történő áthelyezését vagy migrálását. A migrálás után, ha továbbra is külső vezénylőket vagy ütemezőket szeretne használni a napi műveletekben, mostantól a dtexec helyett az AzureDTExecet is meghívhatják.

Az AzureDTExec SSIS-csomagtevékenységek végrehajtásaként futtatja a csomagokat a Data Factory-folyamatokban. További információ: SSIS-csomagok futtatása Azure Data Factory-tevékenységekként.

Az AzureDTExec SSMS-en keresztül konfigurálható olyan Microsoft Entra-alkalmazás használatára, amely folyamatokat hoz létre az adat-előállítóban. Emellett úgy is konfigurálható, hogy hozzáférjen a csomagokat tároló fájlrendszerekhez, fájlmegosztásokhoz vagy Azure Fileshoz. A meghívási beállításokhoz megadott értékek alapján az AzureDTExec létrehoz és futtat egy egyedi Data Factory-folyamatot egy SSIS-csomag végrehajtásával. Az AzureDTExec meghívása ugyanazokkal az értékekkel a beállításaihoz újrafuttatja a meglévő folyamatot.

Előfeltételek

Az AzureDTExec használatához töltse le és telepítse az SSMS legújabb verzióját, amely a 18.3-s vagy újabb verzió. Töltse le erről a webhelyről.

Az AzureDTExec segédprogram konfigurálása

Az SSMS helyi gépen való telepítése az AzureDTExecet is telepíti. A beállítások konfigurálásához indítsa el az SSMS-t a Futtatás rendszergazdaként beállítással. Ezután válassza a Tools>Migrate to Azure>Configure Azure-kompatibilis DTExec lehetőséget.

Configure Azure-enabled dtexec menu

Ez a művelet megnyitja az AzureDTExecConfig ablakot, amelyet rendszergazdai jogosultságokkal kell megnyitni az AzureDTExec.settings fájlba való íráshoz. Ha még nem rendszergazdaként futtatta az SSMS-t, megnyílik egy Felhasználói fiókok felügyelete (UAC) ablak. Adja meg a rendszergazdai jelszót a jogosultságok emeléséhez.

Configure Azure-enabled dtexec settings

Az AzureDTExecConfig ablakban adja meg a konfigurációs beállításokat az alábbiak szerint:

  • ApplicationId: Adja meg annak a Microsoft Entra-alkalmazásnak az egyedi azonosítóját, amelyet a megfelelő engedélyekkel hoz létre a folyamatok létrehozásához az adat-előállítóban. További információ: Microsoft Entra-alkalmazás és szolgáltatásnév létrehozása az Azure Portalon.
  • AuthenticationKey: Adja meg a Microsoft Entra-alkalmazás hitelesítési kulcsát.
  • TenantId: Adja meg annak a Microsoft Entra-bérlőnek az egyedi azonosítóját, amely alatt létrejön a Microsoft Entra-alkalmazás.
  • DataFactory: Adja meg a data factory nevét, amelyben az SSIS-csomag végrehajtása tevékenységgel rendelkező egyedi folyamatok jönnek létre az AzureDTExec meghívásakor megadott beállítások értékei alapján.
  • IRName: Adja meg az Azure-SSIS IR nevét az adat-előállítóban, amelyen az univerzális elnevezési konvencióban (UNC) megadott csomagok futnak az AzureDTExec meghívásakor.
  • PipelineNameHashStrLen: Adja meg az AzureDTExec meghívásakor megadott beállítások értékeiből létrehozandó kivonatsztringek hosszát. A sztringek egyedi neveket alkotnak a csomagokat az Azure-SSIS IR-en futtató Data Factory-folyamatokhoz. Általában 32 karakter hosszúság elegendő.
  • ResourceGroup: Adja meg annak az Azure-erőforráscsoportnak a nevét, amelyben az adat-előállító létre lett hozva.
  • SubscriptionId: Adja meg annak az Azure-előfizetésnek az egyedi azonosítóját, amely alatt az adat-előállító létrejött.
  • LogAccessDomain: A naplófájlok írásakor adja meg a tartomány hitelesítő adatait, hogy hozzáférjen a naplómappához az UNC elérési útján. Erre akkor van szükség, ha a LogPath meg van adva, és a LogLevel értéke nem null.
  • LogAccessPassword: Adja meg a jelszó hitelesítő adatait, hogy a naplófájlok írásakor az UNC elérési útjában hozzáférjen a naplómappához. Erre a LogPath megadásakor van szükség, és a LogLevel értéke nem null.
  • LogAccessUserName: Adja meg a felhasználónév hitelesítő adatait, hogy a naplófájlok írásakor az UNC elérési útján hozzáférjen a naplómappához. Erre akkor van szükség, ha a LogPath meg van adva, és a LogLevel értéke nem null.
  • LogLevel: Adja meg a kiválasztott naplózási hatókört az előre definiált null, alapszintű, részletes vagy teljesítménybeállításokból a csomagvégrehajtásokhoz az Azure-SSIS integrációs modulban.
  • LogPath: Adja meg annak a naplómappának az UNC elérési útját, amelybe az Azure-SSIS integrációs modulban a csomagvégrehajtásokból származó naplófájlok lesznek megírva.
  • PackageAccessDomain: Adja meg a tartomány hitelesítő adatait, hogy hozzáférjen a csomagokhoz az AzureDTExec meghívásakor megadott UNC-elérési úton.
  • PackageAccessPassword: Adja meg a jelszó hitelesítő adatait a csomagok eléréséhez az AzureDTExec meghívásakor megadott UNC-elérési úton.
  • PackageAccessUserName: Adja meg a felhasználónév hitelesítő adatait, hogy hozzáférjen a csomagokhoz az AzureDTExec meghívásakor megadott UNC-elérési úton.

Ha a csomagokat és naplófájlokat a helyszíni fájlrendszerekben vagy fájlmegosztásokban szeretné tárolni, csatlakozzon az Azure-SSIS integrációs modulhoz egy, a helyszíni hálózathoz csatlakoztatott virtuális hálózathoz, hogy be tudja kérni a csomagokat, és meg tudja írni a naplófájlokat. További információ: Csatlakozás Azure-SSIS integrációs modulhoz virtuális hálózathoz.

Annak érdekében, hogy ne jelenjenek meg az AzureDTExec.settings fájlba írt bizalmas értékek egyszerű szövegben, base64-kódolású sztringekké kódoljuk őket. Az AzureDTExec meghívásakor az összes Base64-kódolt sztring vissza lesz dekódolva az eredeti értékükre. Az AzureDTExec.settings fájl védelméhez korlátozza azokat a fiókokat, amelyek hozzáférhetnek.

Az AzureDTExec segédprogram meghívása

A parancssorban meghívhatja az AzureDTExec-et, és megadhatja a használati eset adott beállításainak megfelelő értékeket.

A segédprogram a következő helyen {SSMS Folder}\Common7\IDE\CommonExtensions\Microsoft\SSIS\150\Binnvan telepítve: . Az elérési útját hozzáadhatja a PATH környezeti változóhoz, hogy bárhonnan meghívhassa.

> cd "C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE\CommonExtensions\Microsoft\SSIS\150\Binn"
> AzureDTExec.exe  ^
  /F \\MyStorageAccount.file.core.windows.net\MyFileShare\MyPackage.dtsx  ^
  /Conf \\MyStorageAccount.file.core.windows.net\MyFileShare\MyConfig.dtsConfig  ^
  /Conn "MyConnectionManager;Data Source=MyDatabaseServer.database.windows.net;User ID=MyAdminUsername;Password=MyAdminPassword;Initial Catalog=MyDatabase"  ^
  /Set \package.variables[MyVariable].Value;MyValue  ^
  /De MyEncryptionPassword

Az AzureDTExec meghívása hasonló lehetőségeket kínál, mint a dtexec meghívása. További információ: dtexec Utility. A jelenleg támogatott lehetőségek a következők:

  • /F[ile]: Betölt egy fájlrendszerben, fájlmegosztásban vagy Azure Filesban tárolt csomagot. Ennek a beállításnak az értékeként megadhatja a csomagfájl UNC elérési útját a fájlrendszerben, a fájlmegosztásban vagy az Azure Filesban annak .dtsx kiterjesztésével. Ha a megadott UNC elérési út tartalmaz szóközt, idézőjeleket helyezzen a teljes elérési út köré.
  • /Conf[igFile]: Egy konfigurációs fájlt ad meg, amelyből kinyerheti az értékeket. Ezzel a beállítással beállíthatja a csomag futásidejű konfigurációját, amely eltér a tervezéskor megadotttól. Különböző beállításokat tárolhat egy XML-konfigurációs fájlban, majd betöltheti őket a csomag végrehajtása előtt. További információ: SSIS-csomagkonfigurációk. A beállítás értékének megadásához használja a konfigurációs fájl UNC elérési útját a fájlrendszerben, a fájlmegosztásban vagy az Azure Filesban a dtsConfig kiterjesztéssel. Ha a megadott UNC elérési út tartalmaz szóközt, idézőjeleket helyezzen a teljes elérési út köré.
  • /Conn[ection]: A csomag meglévő kapcsolatkezelőinek kapcsolati sztring adja meg. Ezzel a beállítással beállíthatja a csomagban meglévő kapcsolatkezelők futásidejű kapcsolati sztring, amelyek eltérnek a tervezéskor megadottaktól. Adja meg a beállítás értékét a következőképpen: connection_manager_name_or_id;connection_string [[;connection_manager_name_or_id;connection_string]...].
  • /Set: Felülbírálja egy paraméter, változó, tulajdonság, tároló, naplószolgáltató, Foreach enumerátor vagy kapcsolat konfigurációját a csomagban. Ez a beállítás többször is megadható. Adja meg a beállítás értékét a következőképpen: property_path;value. Például \package.variables[counter].Value;1 felülbírálja a változó értékét counter 1-ként. A Csomagkonfiguráció varázslóval megkeresheti, másolhatja és beillesztheti a csomag azon elemeinek értékétproperty_path, amelyek értékét felül szeretné bírálni. További információ: Csomagkonfiguráció varázsló.
  • /De[crypt]: A EncryptAllWithPassword/EncryptSensitiveWithPassword védelmi szinttel konfigurált csomag visszafejtési jelszavát állítja be.

Megjegyzés:

Az AzureDTExec új értékekkel való meghívása a lehetőségekhez új folyamatot hoz létre a /De[cript] lehetőség kivételével.

Miután egyedi folyamatok jönnek létre és futnak az AzureDTExec meghívásakor az SSIS-csomag végrehajtása tevékenységgel, azok a Data Factory portálon figyelhetők. A Data Factory-eseményindítókat is hozzárendelheti hozzájuk, ha a Data Factory használatával szeretné őket vezényolni/ütemezni. További információ: SSIS-csomagok futtatása Data Factory-tevékenységekként.

Figyelmeztetés

A létrehozott folyamatot várhatóan csak az AzureDTExec használja. Tulajdonságai vagy paraméterei a jövőben változhatnak, ezért ne módosítsa vagy használja fel őket más célokra. A módosítások megszakíthatják az AzureDTExec-et. Ha ez történik, törölje a folyamatot. Az AzureDTExec a következő meghíváskor létrehoz egy új folyamatot.