7 mars 2016

REST WebService avec Informatica - HTTP & Java Transformation


REST est un type de Services Web dont le style d’architecture repose sur le protocole HTTP : On accède à une ressource (par son URI unique) pour procéder à diverses opérations (GET lecture/POST écriture/PUT modification/DELETE suppression), opérations supportées nativement par HTTP.
Informatica PowerCenter dans sa version basique Standard Edition (sans la B2B DataTransformation) permet d'appeler simplement les WebService en utilisant la HTTP Transformation.
Par ailleurs, dans certains cas, l'URL doit être dynamique d'un enregistrement à l'autre, ce type d'appel n'est pas possible avec la HTTP Transformation. Néanmoins, ce type d'appel dynamique peut être effectué par une Java Transformation qui doit être codée pour prendre en entrée une URL et renvoyer la réponse (XML ou JSON).
La Java Transformation est une transformation fournie dans PowerCenter qui permet d'incorporer du code Java (qui peut "tout" faire) dans un mapping Informatica.
Notons que si la réponse du WebService est essentiellement du JSON, la licence Informatica B2B Data Transformation est nécessaire pour parser le retour JSON. La Java Transformation peut être une alternative si pas de licence B2B DT.

Dans cet article, nous allons étudier un exemple de récupération (Méthode GET) des données client depuis un WebService REST sous format XML et formatage de ces données avec Informatica PowerCenter.

15 déc. 2014

Migration/Upgrade du Repository PowerCenter de la V8.6 à la V9.5

Lorsque l'on souhaite migrer les composants Informatica PowerCenter depuis un environnement 8.6 vers un environnement 9.5, nous ne sommes pas obligés de passer par des exports/imports de XML depuis le serveur 8.6 vers 9.5. Ce process peut s'avérer long et source d'erreur. 

Afin d'y arriver facilement, nous pouvons exploiter la fonctionnalité d'Upgrade de Repository que propose Informatica et qui se résume dans les étapes suivantes à effectuer depuis les deux consoles d'administration :

  • Dans l'Administration Console de la V8.6 :
1) Réaliser un Backup du Repository 8.6 (réalisable aussi par la commande pmrep)

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.
 

19 oct. 2014

Utilisation des commandes PowerCenter

Informatica PowerCenter comprend des programmes en ligne de commande permettant d’effectuer des tâches depuis n'importe quelle machine de l’environnement PowerCenter. Les programmes en ligne de commande permettent d'exécuter un ensemble de tâches qui peuvent aussi être exécutées dans la console d'administration.
Par exemple, on peut créer, activer ou désactiver un Repository Service à partir de la Console Administrator ou le programme infacmd
infacmd CreateRepositoryService ... -so option_name=value option_name=value ...

PowerCenter comprend les programmes en ligne de commande suivants :
  • infacmd
Infacmd est un programme qui permet d'administrer les domaines PowerCenter, les utilisateurs, et services. infacmd est utilisée pour administrer les objets et les services suivants:
Applications services : Créer, activer, désactiver, supprimer, obtenir le statut des services, ping...etc. (ex: Repository Service, Integration Service)