Une liaison multibases[1],[2] permet à un composant logiciel de se coupler à une ou plusieurs bases de données relationnelles.

Un serveur multibases est intégré dans le système de gestion de base de données. Le standard ISO RDA, SQL*NET d'Oracle, NETLIB de MS SQL Server, ESQL/DRDA pour DB2 d'IBM sont des exemples de tels serveurs.

Le composant logiciel peut accéder aux bases de données via un client multibases. La norme ISO RDA (Remote Database Access), ou un client Call Level Interface (CLI) du SAG[3] comme Open Database Connectivity (ODBC) de Microsoft ou Java Database Connectivity (JDBC) de SUN sont des exemples de tels clients.

Problème principal avec les multibases modifier

Le problème principal est la jointure[4] de deux tables appartenant à des bases de données se trouvant dans des systèmes de gestion de base de données différents. Le problème réside dans le fait que pour joindre des tables, il faut disposer de celles-ci sur la même machine. La solution consiste donc à «télécharger» les tables puis à effectuer la jointure en local sur le poste client. Cette solution n'est pas problématique si la jointure se fait sur des sous-ensembles des deux tables (sélections préalables) mais est désastreuse en matière de performances si elle nécessite une jointure sur un vaste ensemble de lignes de chaque table, par exemple la totalité de celles-ci.

Notes et références modifier

  1. (en) Witold Litwin: An Overview of the Multidatabase System MRDSM. ACM Annual Conference - The range of computing: mid-80's perspective 1985: 524-533
  2. (en) Witold Litwin, Abdelaziz Abdellatif: « Multidatabase Interoperability. » IEEE Computer 19(12): 10-18 (1986)
  3. SQL Access Group : consortium fondé en 1988 et réunissant 44 éditeurs de SGBD dans l'objectif de définir un standard d'interopérabilité entre clients et SGBD
  4. (en) Witold Litwin: MALPHA: A Relational Multidatabase Manipulation Language. ICDE 1984: 86-93