Les transformations Agrégation ralentissent souvent les performances car elles doivent regrouper des données avant de les traiter. Les transformations Agrégation ont besoin de mémoire supplémentaire pour conserver les résultats de groupe intermédiaire.
Envisagez les solutions suivantes pour les goulots d'étranglement de la transformation Agrégation :
Regroupez par colonnes simples.
Vous pouvez optimiser les transformations Agrégation lorsque vous regroupez par colonnes simples. Lorsque cela est possible, utilisez des nombres plutôt que des chaînes et des dates dans les colonnes utilisées pour GROUP BY. Évitez les expressions complexes dans les expressions Agrégation.
Utilisez une entrée triée.
Pour augmenter les performances de mappage, triez les données pour la transformation Agrégation. Utilisez l'option Entrée triée pour trier les données.
L'option Entrée triée réduit l'utilisation de caches d'agrégation. Lorsque vous utilisez l'option Entrée triée, le Data Integration Service considère que toutes les données sont triées par groupe. Lorsque le Data Integration Service lit les lignes pour un groupe, il effectue des calculs d'agrégation. Au besoin, il stocke des informations de groupe en mémoire.
L'option Entrée triée réduit la quantité de données mises en cache pendant le mappage et améliore les performances. Utilisez l'option Entrée triée ou une transformation Trieur pour transmettre les données triées à la transformation Agrégation.
Vous pouvez augmenter les performances lorsque vous utilisez l'option Entrée triée dans les mappages avec plusieurs partitions.
Filtrez les données avant de les regrouper.
Si vous utilisez une transformation Filtre dans le mappage, placez la transformation avant la transformation Agrégation pour réduire les agrégations inutiles.
Limitez les connexions de ports.
Limitez le nombre de ports d'entrées/sorties ou de sortie connectés pour réduire la quantité de données stockée par la transformation Agrégation dans le cache de données.