Planifier des tâches U-SQL à l’aide de SQL Server Integration Services (SSIS)
Dans ce document, vous apprenez à orchestrer et à créer des tâches U-SQL avec SQL Server Integration Services.
Important
Azure Data Lake Analytics mis hors service le 29 février 2024. Découvrez-en plus avec cette annonce.
Pour l’analytique des données, votre organization peut utiliser Azure Synapse Analytics ou Microsoft Fabric.
Prérequis
Le Feature Pack Azure pour Integration Services fournit la tâche Azure Data Lake Analytics, et le Gestionnaire de connexions Azure Data Lake Analytics qui vous aide à vous connecter au service Azure Data Lake Analytics. Pour utiliser cette tâche, veillez à installer les éléments suivants :
- Téléchargez et installez SQL Server Data Tools (SSDT) pour Visual Studio
- Installer le Feature Pack Azure pour Integration Services (SSIS)
Tâche Azure Data Lake Analytics
La tâche Azure Data Lake Analytics permet aux utilisateurs d’envoyer des tâches U-SQL au compte Azure Data Lake Analytics.
Découvrez comment configurer une tâche Azure Data Lake Analytics.
Vous pouvez obtenir le script U-SQL à partir de différents emplacements par le biais de tâches et de fonctions intégrées SSIS ; les scénarios ci-dessous montrent comment configurer les scripts U-SQL pour différents cas d’utilisateurs.
Scénario 1 : Utilisation d’un script inline pour l’appel de fonctions table et de procédures stockées
Dans l’éditeur de tâche d’Azure Data Lake Analytics, configurez SourceType en tant que DirectInput et placez les instructions U-SQL dans USQLStatemnt.
Pour faciliter la maintenance et la gestion du code, placez uniquement de petits scripts U-SQL comme scripts inline ; par exemple, vous pouvez appeler des fonctions table et des procédures stockées existantes dans vos bases de données U-SQL.
Article connexe : Guide pratique pour transmettre un paramètre à des procédures stockées
Scénario 2 : Utilisation des fichiers U-SQL dans Azure Data Lake Storage
Vous pouvez également utiliser des fichiers U-SQL dans Azure Data Lake Storage à l’aide d’une tâche de système de fichiers Azure Data Lake Storage dans le Feature Pack Azure. Cette approche vous permet d’utiliser les scripts stockés sur le cloud.
Suivez les étapes ci-dessous pour configurer la connexion entre une tâche de système de fichiers Azure Data Lake Storage et une tâche Azure Data Lake Analytics.
Définir le flux de contrôle d’une tâche
En mode création du package SSIS, ajoutez une tâche de système de fichiers Azure Data Lake Storage, un conteneur de boucle Foreach et une tâche Azure Data Lake Analytics (ADLS) dans le conteneur de boucle Foreach. La tâche de système de fichiers Azure Data Lake Storage permet de télécharger les fichiers U-SQL dans un dossier temporaire de votre compte ADLS. Le conteneur de boucle Foreach et la tâche Azure Data Lake Analytics permettent de soumettre chaque fichier U-SQL du dossier temporaire au compte Azure Data Lake Analytics en tant que tâche U-SQL.
Configurer une tâche de système de fichiers Azure Data Lake Storage
- Définissez Opération sur CopyFromADLS.
- Configurez AzureDataLakeConnection ; pour en savoir plus, consultez Gestionnaire de connexions Azure Data Lake Storage.
- Définissez AzureDataLakeDirectory. Pointez sur le dossier de stockage de vos scripts U-SQL. Utilisez le chemin relatif qui est relatif au dossier racine du compte Azure Data Lake Storage.
- Définissez Destination sur un dossier qui met en cache les scripts U-SQL téléchargés. Ce chemin du dossier est utilisé dans le conteneur de boucle Foreach pour la soumission de tâches U-SQL.
En savoir plus sur une tâche de système de fichiers Azure Data Lake Storage.
Configurer un conteneur de boucle Foreach
Dans la page Collection, définissez Énumérateur sur Énumérateur Foreach File.
Définissez Dossier situé dans la zone Configuration de l’énumérateur sur le dossier temporaire qui inclut les scripts U-SQL téléchargés.
Définissez Fichiers dans la zone Configuration de l’énumérateur sur
*.usql
, afin que le conteneur de boucle intercepte uniquement les fichiers se terminant par.usql
.Dans la page Mappage de variables, ajoutez une variable définie par l’utilisateur pour obtenir le nom de fichier pour chaque fichier U-SQL. Définissez l’Index sur 0 pour obtenir le nom de fichier. Dans cet exemple, définissez une variable appelée
User::FileName
. Cette variable est utilisée pour obtenir de façon dynamique la connexion des fichiers de script U-SQL et pour définir le nom de la tâche U-SQL dans la tâche Azure Data Lake Analytics.
Configurer une tâche Azure Data Lake Analytics
Définissez SourceType sur FileConnection.
Définissez FileConnection sur le fichier de connexion qui pointe vers les objets fichier retournés depuis le conteneur de boucle Foreach.
Pour créer cette connexion de fichier :
Choisissez <Nouvelle connexion...> dans le paramètre FileConnection.
Définissez Type d’utilisation sur Fichier existant et définissez le Fichier sur un chemin de fichier du fichier existant.
Dans la vue Gestionnaires de connexions, cliquez avec le bouton droit sur la connexion de fichier créée, puis choisissez Propriétés.
Dans la fenêtre Propriétés, développez Expressionset définissez ConnectionString sur la variable définie dans le conteneur de boucle Foreach, par exemple,
@[User::FileName]
.
Définissez AzureDataLakeAnalyticsConnection sur le compte Azure Data Lake Analytics auquel vous souhaitez envoyer des tâches. En savoir plus sur le Gestionnaire de connexions Azure Data Lake Analytics.
Définissez d’autres configurations de tâche. En savoir plus
Utilisez Expressions pour définir dynamiquement le nom de la tâche U-SQL :
Dans la page Expressions, ajoutez une nouvelle paire clé-valeur d’expression pour JobName.
Définissez la valeur de JobName sur la variable définie dans le conteneur de boucle Foreach, par exemple,
@[User::FileName]
.
Scénario 3 : Utilisation des fichiers U-SQL dans le Stockage Blob Azure
Vous pouvez utiliser les fichiers U-SQL dans le Stockage Blob Azure par le biais d’une tâche de téléchargement d’objet blob Azure dans le Feature Pack Azure. Cette approche vous permet d’utiliser les scripts sur le cloud.
Les étapes sont similaires à celle du scénario 2 : Utiliser des fichiers U-SQL dans Azure Data Lake Storage. Changez la tâche de système de fichiers Azure Data Lake Storage en tâche de téléchargement d’objet blob Azure. En savoir plus sur la tâche de téléchargement d’objet blob Azure.
Le flux de contrôle est le suivant :
Scénario 4 : Utilisation des fichiers U-SQL sur la machine locale
Outre l’utilisation de fichiers U-SQL stockés dans le cloud, vous pouvez également utiliser des fichiers sur votre machine locale ou des fichiers déployés avec vos packages SSIS.
Avec le bouton droit, cliquez sur Gestionnaires de connexions dans un projet SSIS et choisissez Nouveau gestionnaire de connexions.
Sélectionnez Type de fichier , puis Ajouter....
Définissez Type d’utilisation sur Fichier existant et Fichier sur le fichier de la machine locale.
Ajoutez une tâche Azure Data Lake Analytics et :
- Définissez SourceType sur FileConnection.
- Définissez FileConnection sur la connexion de fichier créée.
Terminez les autres configurations pour la tâche Azure Data Lake Analytics.
Scénario 5 : Utilisation d’une instruction U-SQL dans une variable SSIS
Dans certains cas, vous devrez peut-être générer dynamiquement les instructions U-SQL. Vous pouvez utiliser une variable SSIS avec une expression SSIS et d’autres tâches SSIS, comme une tâche de script, pour pouvoir générer l’instruction U-SQL de manière dynamique.
Ouvrez la fenêtre de l’outil Variables via le menu de niveau supérieur SSIS > Variables.
Ajoutez une variable SSIS et définissez la valeur directement ou utilisez Expression pour générer la valeur.
Ajoutez une tâche Azure Data Lake Analytics et :
- Définissez SourceType sur Variable.
- Définissez SourceVariable sur la variable SSIS créée maintenant.
Terminez les autres configurations pour la tâche Azure Data Lake Analytics.
Scénario 6 : Transmission de paramètres au script U-SQL
Dans certains cas, vous pouvez définir dynamiquement la valeur de la variable U-SQL dans le script U-SQL. La fonctionnalité de mappage de paramètres dans Azure Data Lake Analytics Task vous aide dans ce scénario. Il existe généralement deux cas d’utilisation classiques :
- Définissez de façon dynamique les variables des chemins de fichier d’entrée et de sortie, en fonction de la date et de l’heure actuelles.
- Définissez le paramètre pour les procédures stockées.
En savoir plus sur la définition des paramètres du script U-SQL.