Analyse des flux de données
Vous pouvez utiliser la vue de base de données SSISDB catalog.execution_data_statistics pour analyser le flux des packages. Cette vue affiche une ligne à chaque fois qu'un composant de flux de données envoie des données à un composant en aval. Les informations peuvent être utilisées pour mieux comprendre les lignes envoyées à chaque composant.
[!REMARQUE]
Le niveau de journalisation doit avoir la valeur Commentaires afin de capturer des informations avec la vue catalog.execution_data_statistics.
L'exemple suivant affiche le nombre de lignes transmises entre les composants d'un package.
use SSISDB
select package_name, task_name, source_component_name, destination_component_name, rows_sent
from catalog.execution_data_statistics
where execution_id = 132
order by source_component_name, destination_component_name
L'exemple suivant calcule le nombre de lignes par milliseconde envoyées par chaque composant pour une exécution spécifique. Les valeurs calculées sont les suivantes :
total_rows - La somme de toutes les lignes envoyées par le composant
wall_clock_time_ms – La durée d'exécution écoulée totale, en millisecondes, pour chaque composant
num_rows_per_millisecond – Le nombre de lignes par milliseconde envoyées par chaque composant
La clause HAVING est utilisée pour éviter une erreur de division par zéro dans les calculs.
use SSISDB
select source_component_name, destination_component_name,
sum(rows_sent) as total_rows,
DATEDIFF(ms,min(created_time),max(created_time)) as wall_clock_time_ms,
((0.0+sum(rows_sent)) / (datediff(ms,min(created_time),max(created_time)))) as [num_rows_per_millisecond]
from [catalog].[execution_data_statistics]
where execution_id = 132
group by source_component_name, destination_component_name
having (datediff(ms,min(created_time),max(created_time))) > 0
order by source_component_name desc
Tâches associées
Outils de dépannage pour l'exécution des packages
Contenu connexe
|