1 nov. 2014

Performance Tuning - Tirer le meilleur de la plateforme PowerCenter

Le Tuning d’un environnement PowerCenter n’est pas aussi simple. Quatre composants cruciaux méritent toute l’attention : système, réseau, base de données et PowerCenter lui-même.
Il va sans dire que sans une infrastructure performante, le Tuning PowerCenter ne fera pas beaucoup de différence ; une mémoire insuffisante ou un problème sur le Firewall par exemple peuvent plomber les performances sans pour autant savoir quoi faire du côté de l’ETL.
 

Le Tuning PowerCenter est un processus itératif; on élimine les goulets d’étranglement étape par étape et on améliore les performances graduellement. Les goulets d’étranglement peuvent être liés au système, à la base de données (source ou cible) ou au mapping ou session exécutés par l’Integration Service.
Pour identifier ces goulets d’étranglement, il faut monitorer l’utilisation du système, exploiter les statistiques avancées des runs (Performance Data…) et examiner la session log en détail en cours et à la fin du traitement concerné. La log de la session fournit des informations précieuses sur les performances de la session.

Du point de vue d'un développeur ETL, il faut rechercher les problèmes de performance dans l'ordre suivant: Source => Cible => Mapping => Session => Système.
 


Si le Tuning des mapping et sessions s’avère encore insuffisant, le système sous-jacent devra être examiné de plus près. Cet examen approfondi doit être fait en étroite collaboration avec les administrateurs système et les administrateurs de bases de données (DBA). Ils disposent de plusieurs options pour améliorer les performances sans avoir recours à des modifications matérielles. Des exemples sont la distribution de fichiers de base de données sur des disques différents, l'amélioration de la bande passante réseau ou l'allégement de la charge de travail du serveur en déplaçant d'autres applications.

Le travail d'optimisation PowerCenter passe par les étapes suivantes:
  • Analyse de la log du traitement (Thread statistics, cache)
  • Collecte de données de performance (Performance Data)
  • Optimisation de la source
  • Optimisation de la cible
  • Optimisation du mapping
  • Élimination des erreurs de transformation (bad files, conversion...)
  • Optimisation de la session
Ces items seront développés dans les articles à venir.

Aucun commentaire:

Enregistrer un commentaire