Utilisation des flux de données dans des pipelines
Lors de la création de pipelines complexes avec plusieurs flux de données, votre flux logique peut avoir un impact important sur le temps et le coût. Cette section décrit l’impact de différentes stratégies d’architecture.
Exécuter des flux de données en parallèle
Si vous exécutez plusieurs flux de données en parallèle, le service crée des clusters Spark distincts pour chaque activité. Cela permet d’isoler chaque travail et de l’exécuter en parallèle, mais cela entraîne l’exécution simultanée de plusieurs clusters.
Si vos flux de données s'exécutent en parallèle, nous vous recommandons de ne pas activer le délai d'exécution Azure IR pour la propriété en direct, car cela entraîne la création de plusieurs pools chauds inutilisés.
Conseil
Au lieu d’exécuter le même flux de données plusieurs fois pour chaque activité, mettez vos données dans un lac de données et utilisez des chemins d’accès génériques pour traiter les données dans un seul et même flux de données.
Exécuter des flux de données séquentiellement
Si vous exécutez vos activités de flux de données en séquence, il est recommandé de définir un TTL dans la configuration Azure IR. Le service réutilise les ressources de calcul, ce qui accélère la durée de bon fonctionnement du cluster. Chaque activité reste isolée et reçoit un nouveau contexte Spark pour chaque exécution.
Surcharge d’un seul flux de données
Si vous placez toute votre logique au sein d'un même flux de données, le service exécutera l'intégralité du travail sur une seule instance Spark. Bien que ce service puisse sembler un moyen de réduire les coûts, il mélange différents flux logiques et peut être difficile à analyser et à déboguer. Si l'un des composants est défaillant, toutes les autres parties de la tâche le sont également. L’organisation des flux de données par des flux indépendants de logique commerciale est recommandée. Si votre flux de données devient trop important, le fractionner en composants distincts facilite l'analyse et le débogage. Bien qu'il n'y ait pas de limite stricte au nombre de transformations dans un flux de données, en avoir trop rend la tâche plus complexe.
Exécuter des récepteurs en parallèle
Le comportement par défaut des récepteurs de flux de données consiste à exécuter chaque récepteur de manière séquentielle, en série, et à faire échouer le flux quand une erreur est détectée dans le récepteur. En outre, tous les récepteurs sont définis par défaut dans le même groupe, sauf si vous accédez aux propriétés du flux de données et définissez des priorités différentes pour les récepteurs.
Les flux de données vous permettent de regrouper des récepteurs dans des groupes à partir de l’onglet des propriétés des flux de données dans le concepteur d’interface utilisateur. Vous pouvez à la fois définir l'ordre d'exécution de vos récepteurs et regrouper les récepteurs en utilisant le même numéro de groupe. Pour faciliter la gestion des groupes, vous pouvez demander au service d’exécuter des récepteurs dans le même groupe pour qu’ils s’exécutent en parallèle.
Sur le pipeline, exécuter l'activité de flux de données sous la section « Propriétés du récepteur » est une option pour activer le chargement parallèle des récepteurs. Lorsque vous activez l'option « exécuter en parallèle », vous demandez aux flux de données d'écrire sur les récepteurs connectés en même temps plutôt que de manière séquentielle. Pour pouvoir utiliser l’option d’exécution en parallèle, les récepteurs doivent être regroupés et connectés au même flux via une nouvelle branche ou un nouveau fractionnement conditionnel.
Accéder aux modèles de base de données Azure Synapse dans les pipelines
Vous pouvez utiliser un modèle de base de données Azure Synapse lors de la création d’un pipeline. Lors de la création d’un flux de données, dans les paramètres de la source ou du récepteur, sélectionnez Base de données de l’espace de travail. La liste déroulante des bases de données répertorie les bases de données créées à l'aide du modèle de base de données. L’option Base de données de l’espace de travail est uniquement disponible pour les nouveaux flux de données. Elle n’est pas disponible quand vous utilisez un pipeline existant à partir de la galerie Synapse Studio.
Contenu connexe
- Vue d’ensemble des performances de flux de données
- Optimisation des sources
- Optimisation des récepteurs
- Optimisation des transformations
Consultez d’autres articles sur les flux de données consacrés aux performances :