Dernier sujet à la mode au
sein des unités de développement des DSI : la persistance
objet des données (voir le questions & réponses
ci-dessous) figure pour beaucoup de programmeurs parmi
les principaux manques des plates-formes J2EE et .Net...
Un enjeu qui n'a pas échappé à nombre d'éditeurs américains
(IBM, Versant, etc.). Côté européen,
on constate que plusieurs jeunes pousses sont en train
de s'attaquer au même segment...
En
France, Libelis qui, rappelons-le, a conclu en début
d'année une levée de fonds à hauteur
de 2 millions d'euros (voir l'article)
propose depuis quelques mois déjà un outil
de gestion de la persistance adapté aux environnements
J2EE (Java 2 Enterprise Edition). Fondée en octobre
2001, la société Evaluant a lancé
plus récemment une solution équivalente...
pour l'infrastructure .Net.
Un point
de départ: UML
Evaluant tire cet outil de l'un de ses
tout premiers projets : une application Web ciblant
les acteurs de la gestion de portefeuilles. "Cette
solution devait être capable de s'adosser à
des règles de traitement de données (lecture
et mise à jour) des plus complexes, commente
Nicolas Chabrier, directeur de la société.
Pour faire face à cette difficulté, nous
avons alors jeté les bases d'un framework
de persistance objet-relationnel."
Partant
de cette première brique, Evaluant aboutit aujourd'hui
à un produit à part entière :
Data Tier Modeler For .Net (DTM). Schématiquement, il
permet de générer, à partir d'un
modèle de conception d'applications au format
UML (voir notre dossier),
une batterie de fonctions (C#) pour assurer la manipulation
d'une base et des contenus qu'elle contient (création
de structure, lecture, écriture, etc.).
Au chapitre des technologies utilisées par DTM :
les datasets. "Cette couche [mise au point
par Microsoft] peut regrouper plusieurs données
métier (articles achetés, clients, etc.)
- au sein d'un schéma XML unique, nous expliquait
Jean-Louis Bénard, directeur technique de Business Interactif,
lors d'une interview en janvier dernier. Elle réduit
ainsi le nombre d'objets stockés en mémoire,
ce qui contribue au final à améliorer
la performance globale de l'application."
Un cache pour abriter les objets-relationnels
Compatible avec les bases
Access et SQL Server (Microsoft) ainsi qu'Oracle, via
l'interface ODBC,
DTM qui travaille main dans la main avec l'environnement
de développement de Microsoft (Visual Studio .Net)
serait notamment adapté au paramétrage des
requêtes croisées chères aux responsables
marketing, soit l'extraction de l'ensemble des informations
liées à un client particulier par exemple.
Evaluant n'a pas oublié les enjeux relatifs à
la montée en charge : son framework
est livré avec un système de cache pour
mutualiser l'exécution de la gestion des données
tout en gardant en mémoire les composants relationnels
les plus sollicités.
La
persistance objet en trois questions
|
Qu'est-ce
que la persistance objet ?
Elle renvoie à une série de composants
qui, au sein d'un serveur d'applications, assurent
les liens entre les objets métier relatifs
à la couche applicative de la solution
et les données qui lui sont associées au sein
de la base de données sous-jacente.
Comment cette fonction est-elle gérée
par les plates-formes J2EE et .Net ?
J2EE propose depuis longtemps un modèle
de composants prédéfinis (les
EJB Entities) conçu pour faciliter
la mise au point de cette couche. L'équivalent
des EJB Entities pour .Net est encore
en chantier. Nom de code: Objectspaces.
Ces deux environnements sont-ils aussi performants
sur ce terrain ?
C'est difficile à dire... Sur ce sujet,
les débats vont bon train parmi les développeurs
(voir aussi les interviews de Jean-Christophe
Cimetière et de Jean-Louis
Bénard). Il semble en tous cas que les modèles
pré-définis, tels que les EJB,
ne soient pas toujours à la hauteur des
performances attendues.
|
|