Contenu du cours
Introduction à l'Ingénierie des Données avec Azure
Introduction à l'Ingénierie des Données avec Azure
Activité Foreach
L'activité ForEach dans Azure Data Factory est un outil puissant qui vous permet d'effectuer des opérations itératives, telles que le traitement de plusieurs fichiers ou l'itération à travers une liste d'éléments.
L'activité Lookup est souvent utilisée en combinaison avec l'activité ForEach pour récupérer une liste d'éléments, tels que des noms de fichiers ou de tables, pour l'itération. En passant la sortie de Lookup à l'activité ForEach, vous pouvez traiter dynamiquement chaque élément de la collection, permettant des workflows évolutifs et flexibles dans Azure Data Factory.
Comment utiliser l'activité ForEach
- Commencez par utiliser une activité de recherche pour récupérer des données ;
- Faites glisser l'activité ForEach du volet Activités vers le canevas du pipeline ;
- Dans l'onglet Paramètres de l'activité ForEach, définissez le champ Éléments sur la sortie de l'activité de recherche, telle que :
@activity('LookupActivityName').output.value
; - À l'intérieur de l'activité ForEach, ajoutez une activité de copie de données ou toute autre activité pour traiter chaque élément de la liste de manière dynamique ;
- Dans l'onglet Source de l'activité de copie de données, configurez le jeu de données d'entrée pour les données que vous souhaitez traiter et utilisez du contenu dynamique pour référencer l'itération actuelle. Dans notre cas, nous utilisons la requête suivante :
SELECT * FROM CovidData WHERE "HHSRegion" = '@{item().HHSRegion}'
; - Dans l'onglet Destination de l'activité de copie de données, configurez le nom de la table de destination de manière dynamique en utilisant l'expression :
TableName_@{item().ColumnName}
; - Validez et testez le pipeline pour vous assurer que les données sont correctement traitées pour chaque élément du jeu de données.
Expression @item()
Dans Azure Data Factory (ADF), l'expression @item()
est utilisée à l'intérieur de l'activité ForEach pour référencer l'élément actuel dans la boucle lorsqu'elle parcourt la collection d'éléments. L'expression @item()
vous permet d'accéder dynamiquement aux données ou aux valeurs de l'itération actuelle et de les utiliser dans les activités suivantes au sein de la boucle ForEach.
Ses attributs se réfèrent aux propriétés de l'élément en cours d'itération. Par exemple, si la boucle parcourt une liste d'objets, @item()
peut accéder à des attributs spécifiques comme @item().Region
ou @item().FileName
, permettant une référence dynamique des données pour chaque itération.
Merci pour vos commentaires !