Section 7
Architectures d'objets distribués
Java Relational Binding
(JRB)
La compagnie O2 Technology participe à la définition du standard du consortium ODMG pour les ODBMS
et pour un couplage des ODBMS avec Java. La première version du standard ODMG permettait de définir
une structure d'objets en termes de données relationnelles et, la première contribution d' O2 au
monde des bases de données Java prend cette forme inattendue d'un couplage entre des objets Java et des
RDBMS classiques. Le couplage est unidirectionnel : une classe Java (compilée) donnée est transformée
en une nouvelle table dans une RDBMS externe. Par la suite, un processus JRB sert d'intermédiaire entre
un processus Java (local) et une RDBMS (elle-même utilisée au travers de JDBC).
Un tel système qui s'installe au-dessus d'une RDBMS offre l'avantage de profiter de la gestion de transactions,
des systèmes de données distribuées, des langages de requêtes, etc., sont propres aux
RDBMS utilisées. (Pour l'instant, JRB ne se connecte qu'avec Oracle et Sybase). Il s'agit donc de beaucoup
plus qu'un mécanisme de persistance, même si ce n'est pas tout à fait un mécanisme de
OODBMS. Par contre, JRB ne prend pas en charge l'écriture récursive des objets connectés à
un objet stocké donné. La traversée du graphe de connexion doit donc être explicite
tant à l'écriture qu'à la lecture. Le modèle a aussi d'autres limitations inhérentes ;
il est difficile d'extraire des objets sur la base de la façon dont ils sont connectés entre eux.
O2 Technology prépare bien sûr un couplage de Java avec sa ODBMS, qui permettra un plein accès
orienté-objet selon la norme ODMG et compte également créer un mécanisme inverse de
création d'architectures OO à partir de tables relationnelles, ce qui semble rejoindre un projet
de JavaSoft.
O2 technology: Java Relational Binding
|
Connexion à des données relationnelles |
Oui, mais pas des données héritées |
Compatibilité avec les RDBMS |
Sybase, Oracle via JDBC |
Modèle de données orienté-objet |
oui (pas en profondeur) |
Manipulation d'objets Java |
oui |
Manipulation d'objets hétérogènes |
non |
Accès aux objets par plus d'un identificateur |
oui, via le modèle relationnel |
Communication entre des objets distribués |
non |
Utilisation d'un langage de requêtes |
SQL |
Modèle combiné |
oui |
Utilisation d'un modèle relationnel pré-établi |
non (en projet) |
Utilisation de plusieurs modèles relationnels |
non |
Contexte d'utilisation |
Utilisation multi-usager |
oui |
Gestion des transactions |
oui |
Sécurité |
non |
Données distribuées |
selon la RDBMS sous-jacente |
Utilisation différée |
non |
Génération de pages Web |
non |
Standards |
SQL, JDBC |
Données techniques et commerciales |
Plate-forme et contraintes système |
système Solaris ou Windows NT, JDBC OU lien direct avec Oracle et Sybase |
Engin en pur Java |
non |
Modèle de distribution |
$ |
Étape de développement |
1.0 |
|