Exécuter des packages SSIS avec l’agent Azure SQL Managed Instance
S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics
Conseil
Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, l’aide à la décision et la création de rapports. Découvrez comment démarrer un nouvel essai gratuitement !
Cet article décrit comment exécuter un package SQL Server Integration Services (SSIS) à l'aide de l'agent Azure SQL Managed Instance. Cette fonctionnalité fournit des comportements qui rappellent la planification de packages SSIS à l’aide de SQL Server Agent dans un environnement local.
Grâce à cette fonctionnalité, vous pouvez exécuter des packages SSIS stockés dans SSISDB dans une instance managée SQL, un système de fichiers comme Azure Files ou un magasin de packages du runtime d’intégration Azure-SSIS.
Prérequis
Pour utiliser cette fonctionnalité, téléchargez et installez la dernière version de SQL Server Management Studio (SSMS). Détails de la prise en charge de la version comme ci-dessous :
- Pour exécuter des packages dans SSISDB ou un système de fichiers, installez SSMS 18.5 ou une version ultérieure.
- Pour exécuter des packages dans un magasin de packages, installez SSMS 18.6 ou une version ultérieure.
Vous devez également provisionner un runtime d’intégration Azure-SSIS dans Azure Data Factory. Il utilise une instance managée SQL comme serveur de point de terminaison.
Exécuter un package SSIS dans SSISDB
Dans cette procédure, vous utilisez l’agent SQL Managed Instance pour appeler un package SSIS stocké dans SSISDB.
Dans la dernière version de SSMS, connectez-vous à une instance managée SQL.
Créez un travail d’agent et une étape de travail. Sous SQL Server Agent, cliquez avec le bouton droit sur le dossier Travaux, puis sélectionnez Nouveau travail.
Dans la page Nouvelle étape de travail, sélectionnez Package SQL Server Integration Services comme type.
Sous l’onglet Package, sélectionnez Catalogue SSIS comme emplacement du package.
SSISDB se trouvant dans une instance managée SQL, vous n’êtes pas tenu de spécifier l’authentification.
Spécifiez un package SSIS à partir de SSISDB.
Sous l’onglet Configuration, vous pouvez :
- Spécifier des valeurs de paramètre sous Paramètres.
- Remplacer des valeurs sous Gestionnaires de connexions.
- Remplacer la propriété et choisir le niveau de journalisation sous Avancé.
Sélectionnez OK pour enregistrer la configuration du travail d’agent.
Démarrez le travail d’agent pour exécuter le package SSIS.
Exécuter un package SSIS dans le système de fichiers
Dans cette procédure, vous utilisez l’agent SQL Managed Instance pour exécuter un package SSIS stocké dans le système de fichiers.
Dans la dernière version de SSMS, connectez-vous à une instance managée SQL.
Créez un travail d’agent et une étape de travail. Sous SQL Server Agent, cliquez avec le bouton droit sur le dossier Travaux, puis sélectionnez Nouveau travail.
Dans la page Nouvelle étape de travail, sélectionnez Package SQL Server Integration Services comme type.
Sous l’onglet Package :
Pour Emplacement du package, sélectionnez Système de fichiers.
Pour Type de source de fichier :
Si votre package est chargé sur Azure Files, sélectionnez Partage de fichiers Azure.
Le chemin d’accès au package est
\\<storage account name>.file.core.windows.net\<file share name>\<package name>.dtsx
.Sous Informations d’identification d’accès au fichier du package, entrez le nom du compte de fichier Azure et la clé du compte pour accéder au fichier Azure. Le domaine est défini sur Azure.
Si votre package est chargé sur un partage réseau, sélectionnez Partage réseau.
Le chemin du package correspond au chemin UNC de votre fichier de package avec son extension dtsx.
Entrez le domaine, le nom d’utilisateur et le mot de passe correspondants pour accéder au fichier de package de partage réseau.
Si votre fichier de package est chiffré avec un mot de passe, sélectionnez Mot de passe de chiffrement et entrez le mot de passe.
Sous l’onglet Configurations, entrez le chemin du fichier de configuration s’il vous faut un fichier de configuration pour exécuter le package SSIS. Si vous stockez votre configuration dans Azure Files, son chemin d’accès de configuration sera
\\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig
.Sous l’onglet Options d’exécution, sélectionnez Authentification Windows ou Runtime 32 bits pour exécuter le package SSIS.
Sous l’onglet Journalisation, sélectionnez le chemin de journalisation et les informations d’identification d’accès à la journalisation correspondantes pour stocker les fichiers journaux. Par défaut, le chemin de journalisation est identique au chemin du dossier du package, et les informations d’identification d’accès à la journalisation sont identiques à celles du package. Si vous stockez vos journaux dans Azure Files, votre chemin d’accès de journalisation sera
\\<storage account name>.file.core.windows.net\<file share name>\<log folder name>
.Sous l’onglet Valeurs définies, vous pouvez entrer le chemin de la propriété et la valeur pour remplacer les propriétés du package.
Par exemple, pour remplacer la valeur de votre variable utilisateur, entrez son chemin d’accès au format suivant :
\Package.Variables[User::<variable name>].Value
.Sélectionnez OK pour enregistrer la configuration du travail d’agent.
Démarrez le travail d’agent pour exécuter le package SSIS.
Exécuter un package SSIS dans le magasin de packages
Notes
Le magasin de packages n’est pas pris en charge dans Azure-SSIS IR dans Azure Synapse.
Dans cette procédure, vous utilisez l’agent SQL Managed Instance pour exécuter un package SSIS stocké dans le magasin de packages d’Azure-SSIS IR.
Dans la dernière version de SSMS, connectez-vous à une instance managée SQL.
Créez un travail d’agent et une étape de travail. Sous SQL Server Agent, cliquez avec le bouton droit sur le dossier Travaux, puis sélectionnez Nouveau travail.
Dans la page Nouvelle étape de travail, sélectionnez Package SQL Server Integration Services comme type.
Sous l’onglet Package :
Pour Emplacement du package, sélectionnez Magasin de packages.
Pour Chemin d’accès du package :
Le chemin d’accès au package est
<package store name>\<folder name>\<package name>
.Si votre fichier de package est chiffré avec un mot de passe, sélectionnez Mot de passe de chiffrement et entrez le mot de passe.
Sous l’onglet Configurations, entrez le chemin du fichier de configuration s’il vous faut un fichier de configuration pour exécuter le package SSIS. Si vous stockez votre configuration dans Azure Files, son chemin d’accès de configuration sera
\\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig
.Sous l’onglet Options d’exécution, sélectionnez Authentification Windows ou Runtime 32 bits pour exécuter le package SSIS.
Sous l’onglet Journalisation, sélectionnez le chemin de journalisation et les informations d’identification d’accès à la journalisation correspondantes pour stocker les fichiers journaux. Par défaut, le chemin de journalisation est identique au chemin du dossier du package, et les informations d’identification d’accès à la journalisation sont identiques à celles du package. Si vous stockez vos journaux dans Azure Files, votre chemin d’accès de journalisation sera
\\<storage account name>.file.core.windows.net\<file share name>\<log folder name>
.Sous l’onglet Valeurs définies, vous pouvez entrer le chemin de la propriété et la valeur pour remplacer les propriétés du package.
Par exemple, pour remplacer la valeur de votre variable utilisateur, entrez son chemin d’accès au format suivant :
\Package.Variables[User::<variable name>].Value
.Sélectionnez OK pour enregistrer la configuration du travail d’agent.
Démarrez le travail d’agent pour exécuter le package SSIS.
Annuler une exécution de package SSIS
Pour annuler l’exécution d’un package à partir d’un travail de l’agent SQL Managed Instance, suivez les étapes ci-dessous plutôt que d’arrêter directement le travail de l’agent :
Recherchez la valeur jobId de votre agent SQL à partir de msdb.dbo.sysjobs.
Recherchez la valeur executionId SSIS correspondante en fonction de l’ID de travail à l’aide de cette requête :
select * from '{table for job execution}' where parameter_value = 'SQL_Agent_Job_{jobId}' order by execution_id desc
Si vos packages SSIS se trouvent dans SSISDB, utilisez ssisdb.internal.execution_parameter_values comme table pour l’exécution du travail. Si vos packages SSIS se trouvent dans un système de fichiers, utilisez ssisdb.internal.execution_parameter_values_noncatalog.
Cliquez avec le bouton droit sur le catalogue SSISDB, puis sélectionnez Opérations actives.
Arrêtez l’opération correspondante en fonction de la valeur executionId.
Contenu connexe
Vous pouvez également planifier des packages SSIS à l’aide d’Azure Data Factory. Pour obtenir des instructions pas à pas, consultez Déclencheur d’événements Azure Data Factory.