INFOTEL, The web-to-database company

Rechercher :  Imprimer Plan du site Contact Version française Version anglaise Version américaine

Dossiers Les réalisations d’Infotel UDB : Le développement multi-plate-forme

Maîtriser les données

UDB : Le développement multi-plate-forme

Un développement multi-plates-formes

En septembre 2001, IBM et Infotel ont signé un accord portant sur la commercialisation de la version multi-plates-formes du produit HPU (High Performance Unload for DB2) existant déjà dans l’environnement z/OS.
Fort de son expérience dans ce domaine, Infotel a mis en place une équipe chargée du développement de ce nouveau produit.
Rapidement, un certain nombre de questions se sont posées :

  • quel langage de développement choisir ?
  • quelle plate-forme de développement sélectionner ?
  • comment déployer versions et modifications ?

Quel langage de développement choisir ?

La version HPU z/OS est écrite, pour sa partie centrale, en assembleur.
La translation du code existant dans le langage assembleur spécifique à chaque machine cible n’était pas envisageable compte tenu du nombre élevé de plates-formes à supporter (AIX 4.3 et 5.x, Sun 2.x, Linux, Windows NT 2K et XP, HP-UX 10.x et 11.x). De plus, une différence fondamentale existe entre DB2 sur z/OS et DB2 multi-plates-formes, à savoir la notion de « nodes ». En effet, un Tablespace sur Unix et Windows peut être réparti sur plusieurs serveurs grâce à la version Extended Enterprise Edition de DB2. Enfin le produit, pour être performant, doit exécuter un minimum de code lors de la lecture et du traitement des fichiers de la base de données.
Donc, pour développer le cœur du produit, le langage C a été choisi, car il est portable sur chaque type de serveur tout en conservant de bonnes performances. Néanmoins, le code a été optimisé pour chaque système d’exploitation. Le deuxième langage choisi est Java, portable sur tous les environnements ; c’est la solution idéale pour créer une interface utilisateur conviviale et pour l’intégrer au centre de contrôle de DB2 (outil graphique d’administration de bases de données).
D’un point de vue macroscopique, l’architecture des trois composantes du produit est la suivante :

Figure 7 : Architecture des composants

Quelle plate-forme de développement sélectionner ?

Cette plate-forme se devait d’être sous Unix pour permettre le portage vers la majorité des environnements cibles. Le choix s’est naturellement porté sur Linux (RedHat version 7), car la plupart des outils de développement (nedit, ddd, mpatrol…) sont fournis avec le système d’exploitation.
Les principaux logiciels sujets à licence sont DB2 et surtout le gestionnaire de sources ClearCase qui autorise des développements en parallèle tout en ne nécessitant que peu d’efforts de gestion lors de l’intégration des modifications, l’automatisation des tests et la génération des « releases » ou « fixpaks ».
Les autres logiciels techniques utilisés sont : ICU (International Components for Unicode) et LUM (License Use Management). ICU est utilisé pour l’internationalisation des messages alors que LUM permet la gestion des licences du produit HPU. Le poste client du développeur est un PC sous Windows ayant un émulateur X (Xfree de cygwin).

Comment déployer versions et modifications ?

Pour finir, le dernier logiciel utilisé, ayant une importance fondamentale, est Install Shield Multi-Platform qui offre une interface graphique paramétrable (en Java) pour l’installation du produit HPU puis de ses mises à jour. Cet outil, installé sur une machine Linux (ReadHat), permet de générer les exécutables d’installation pour tous les systèmes d’exploitation cibles, Windows compris.
Le principal avantage d’un tel outil par rapport à des scripts classiques en mode caractère est une interface graphique homogène quelle que soit la plate-forme (Unix ou Windows).
L’inconvénient majeur est que pour 10 Mo de produit HPU, il est nécessaire d’y ajouter 100 Mo de JRE (Java Runtime Environment) pour maîtriser complètement le processus d’installation sur chacune des plates-formes cibles.

Jean-François CASTELLA

Dossiers Infotel
Michel KOUTCHOUK
Tél. +33 (0)1 48 97 38 38
dossiers@infotel.com

retour au sommaire




© Infotel 2008. Dernière mise à jour le 2 janvier 2008
http://www.infotel.com - Tél. + 33 (0)1 48 97 38 38 - Informations légales