• Aucun résultat trouvé

2.2 Approches d’int´ egration

2.2.3 Approches avanc´ ees

2.2.3.3 Syst` eme de m´ ediation

2.2.3.3.1 Architecture des syst`emes de m´ediation. Cette approche [Wiederhold 92],

´

egalement non mat´erialis´ee, consiste `a laisser les donn´ees dans les sources et fournir un sch´ema

global donnant une vue r´econcili´ee, int´egr´ee et virtuelle sur ces sources. Les utilisateurs posent

leurs requˆetes dans les termes du sch´ema global qui les red´efinit dans les termes des sch´emas

des sources pertinentes. Il est donc n´ecessaire dans ce type de syst`emes de d´efinir une mise en

correspondance entre les sch´emas locaux et le sch´ema global. Cet aspect est un point cl´e dans un

tel syst`eme puisqu’il influe sur la reformulation de la requˆete. Les diff´erents ´el´ements constituant

l’architecture des syst`emes de m´ediation sont les suivants (Figure 2.7 page suivante) :

– lessch´emas des sources regroupent un certain nombre d’informations n´ecessaires pour

d´ecrire les sources, c’est-`a-dire des m´eta-donn´ees comme leurs nom et URL d’interrogation

mais aussi leurs entit´es et attributs auxquels des donn´ees sont associ´ees. Des r´ef´erences

crois´ees (voire mˆeme des r´ef´erences d’autres types) vers d’autres sources sont parfois pr´

e-sentes ;

– lem´ediateur ou sch´ema globaljoue le rˆole d’interface entre les utilisateurs et les sources.

Il regroupe l’ensemble des pr´edicats mod´elisant le domaine d’application du syst`eme de

m´ediation et fournit donc un vocabulaire structur´e servant de support `a l’expression de

Base de

connaissanc

es du doaine

Schéma

global

Adaptateur Adaptateur Adaptateur

Source de

données 1 Source dedonnées 2 • • • Source de données n

Schéma Source 1 Schéma Source 2 Schéma Source n

Fig. 2.7 – Composants d’un syst`eme de m´ediation.Les fl`eches pointill´ees repr´esentent la

transmission des requˆetes aux adaptateurs. Les fl`eches unidirectionnelles pleines correspondent

aux r´esultats r´ecup´er´es dans les sources au travers de leur adaptateur qui les fournit au sch´ema

global. Les fl`eches bidirectionnelles indiquent l’interaction existant entre les sources locales et

les adaptateurs : l’envoi d’une requˆete dans le langage de la source associ´ee et la r´ecup´eration

du r´esultat dans la source.

requˆetes [Rousset 02]. Ainsi, les utilisateurs posent leurs requˆetes dans les termes du m´

e-diateur qui les reformulent avant de les transmettre aux adaptateurs des sources identifi´ees

comme pertinentes. Finalement, c’est `a travers de ce m´ediateur qu’est r´ealis´ee la fusion des

r´esultats obtenus `a partir de chacune des sources avant de rendre une r´eponse homog`ene

et globale aux utilisateurs ;

– lesadaptateurs associ´es `a chaque source permettent d’interroger la source qu’ils g`erent

dans son langage sp´ecifique afin d’y r´ecup´erer les donn´ees pertinentes. Ils fournissent en

retour au m´ediateur les r´esultats obtenus dans les sources.

Comme pr´esent´e en d´etail dans [Lenzerini 02], mod´eliser la correspondance entre les sch´emas

locaux et le sch´ema global est un point crucial. C’est ce qui permet de traiter une requˆete pos´ee

sur le sch´ema global par reformulation en un ensemble de requˆetes dans les sources. La mise

en correspondance vise `a ´etablir la connexion entre les ´el´ements du sch´ema global et ceux des

sch´emas locaux. Deux approches ont ´et´e propos´ees dans ce cadre :Global-As-View (GAV) o`u le

sch´ema global est d´efini dans les termes des sch´emas des sources et Local-As-View (LAV) o`u le

sch´ema global se veut ind´ependant des sources, et dans ce cas, les relations de correspondance

existant entre le sch´ema global et les sch´emas des sources sont ´etablies en d´efinissant chaque

source comme des vues du sch´ema global.

– L’approche GAV consiste `a d´efinir le sch´ema global en fonction des sch´emas des sources,

donc dans les termes propres `a ces derni`eres. Cela implique donc que les sources soient

connues et suffisamment stables. Cette approche favorise le traitement des requˆetes puisque

la r´e-´ecriture des requˆetes pos´ees sur le sch´ema global se fait directement au travers des

mises en correspondance pr´ealablement d´efinies et exprimant les ´el´ements du sch´ema

glo-bal dans les termes des sch´emas locaux. En revanche, l’expansion d’un syst`eme bas´e GAV

pose des probl`emes puisque l’ajout d’une nouvelle source peut avoir un impact sur la d´

e-finition de certains ´el´ements du sch´ema global.

– L’approche LAV est inverse ; ce sont les sch´emas des sources qui sont d´efinis au moyen de

termes du sch´ema global. Une bonne organisation et une stabilit´e du sch´ema global est n´

e-cessaire, les syst`emes d’int´egration utilisant une ontologie comme sch´ema global sont ainsi

bien adapt´es `a LAV. Contrairement `a l’approche GAV, le traitement des requˆetes ici est

complexe. En effet, les seules connaissances dont on dispose sur les donn´ees dans le sch´ema

global sont uniquement accessibles au travers des vues repr´esentant les sources,

fournis-sant des informations partielles sur les donn´ees. Par contre, l’´evolution de tels syst`emes

est particuli`erement favoris´ee par l’approche LAV puisqu’ajouter une nouvelle source au

syst`eme n´ecessite simplement de compl´eter les relations de correspondance de mani`ere `a

repr´esenter le nouveau sch´ema avec des termes du sch´ema global, sans aucune autre

mo-dification. La suppression se fait d’une mani`ere aussi simple ; le sch´ema global n’est pas

modifi´e, seules certaines relations sont supprim´ees, n’affectant pas le reste du syst`eme.

Une approche hybride a ´et´e propos´ee dans [Friedman 99]. Global-Local-As-View (GLAV)

consiste `a combiner la m´ethode de d´efinition des relations de correspondance entre le sch´ema

global et les sch´emas locaux de chacune des approches GAV et LAV pour en retirer une meilleure

expressivit´e. Nous n’entrons pas plus dans les d´etails de cette approche.

2.2.3.3.2 Avantages des syst`emes de m´ediation. Tout d’abord, la m´ediation a des

avan-tages communs `a l’approche navigationnelle puisqu’elles sont toutes deux non mat´erialis´ees.

L’autonomie locale est pr´eserv´ee, ce qui ´evite de perturber les sources, chacune ayant un

contrˆole sur ses propres donn´ees et garantissant aux utilisateurs que les informations auxquelles

ils acc`edent sont purement issues de ces sources. De plus, ce type d’approche permet une

inter-rogation en temps r´eel des sources, ce qui assure un acc`es `a des donn´ees `a jour. Finalement,

en terme de maintenance, le fait de ne pas int´egrer les donn´ees au niveau du syst`eme permet de

s’affranchir des probl`emes de mises `a jour et de synchronisation des donn´ees.

Un avantage int´eressant est celui de latransparenceofferte aux utilisateurs lorsqu’ils effectuent

leurs requˆetes, ceux-ci ne sont en effet pas conscients de la distribution et de l’h´et´erog´en´eit´e des

sources vu que l’on donne l’illusion aux utilisateurs d’interroger un syst`eme global et homog`ene.

Ils n’ont ainsi pas `a se charger de d´eterminer quelles sources ils vont devoir traverser ou

inter-roger pour obtenir un r´esultat pertinent, c’est le syst`eme qui s’en occupe.

La d´efinition d’un sch´ema global sous forme d’ontologie paraˆıt particuli`erement bien adapt´ee

pour l’int´egration d’un ensemble de sources de donn´ees d’un mˆeme domaine

d’ap-plication. Celle-ci peut permettre d’assister les utilisateurs dans la conception de leurs requˆetes

[Stevens 00] mais surtout de faciliter la mise en correspondance entre le sch´ema global et les

sch´emas locaux en exploitant les propri´et´es d´efinies dans l’ontologie [Mork 05]. Cela est

particu-li`erement utile pour r´esoudre l’h´et´erog´en´eit´e s´emantique existant entre les sources puisque, par

exemple, des termes synonymes sont regroup´es dans des concepts communs au sein de

l’ontolo-gie.

Enfin, cette approche est efficace pour g´erer l’´evolution du syst`eme si l’on s’astreint `a

utiliser la m´ethode LAV. Comme nous l’avons soulign´e ci-dessus, des ajouts et suppressions se

font relativement simplement au niveau du sch´ema global. Les utilisateurs ont ainsi la possibilit´e

de consulter des nouvelles connaissances quand de nouvelles sources int´eressantes sont int´egr´ees.

2.2.3.3.3 Inconv´enients des syst`emes de m´ediation. Des inconv´enients communs aux

diff´erentes approches non mat´erialis´ees existent. Par exemple, la fiabilit´e du syst`eme n’est

pas garantie `a cause de l’interrogation en temps r´eel des sources. Si le serveur de celles-ci est

momentan´ement indisponible, cela se reporte sur le syst`eme qui ne pourra pas r´ecup´erer des

informations potentiellement pertinentes sur ce serveur. De plus, un trafic charg´e sur le r´eseau

peut ralentir un tel syst`eme.

La question de la conception du syst`eme est particuli`erement d´elicate. Tout d’abord,

quand les sch´emas d´ecrivant les sources `a int´egrer sont inexploitables ou indisponibles, il est

n´ecessaire de mod´eliser les donn´ees existant dans les sources (sous forme de sch´emas locaux),

ce qui est une tˆache difficile. Ensuite, la d´efinition d’un sch´ema global permettant l’int´egration

de l’ensemble des informations n´ecessaires issues des sch´emas des sources est complexe. Enfin,

la mise en correspondance entre ces diff´erents ´el´ements pose ´egalement des difficult´es car elle

n´ecessite g´en´eralement une intervention manuelle des concepteurs du syst`eme.

D’autre part, l’´evaluation des requˆetes (`a moins de choisir une approche GAV) ainsi que

leur optimisation sont complexes `a r´ealiser, et ce d’autant plus si le nombre de sources

est important. Comme d´etaill´e pr´ec´edemment, il n’est pas simple d’effectuer la traduction des

requˆetes pos´ees sur le sch´ema global dans les termes des sch´emas locaux. Cette traduction peut

ˆ

etre facilit´ee si les relations de mise en correspondance ont ´et´e bien ´etablies et valid´ees par un

expert.

Enfin, l’´evolution du syst`eme est plus simple `a g´erer avec l’approche LAV. Cependant, les

as-pects de maintenancerepr´esentent un travail plus cons´equent. Par exemple, lors de l’int´

egra-tion d’une nouvelle source, il est n´ecessaire de d´efinir un adaptateur pour cette derni`ere puisque

l’´ecriture de celui-ci est sp´ecifique `a chaque type de source [Vargas Solar 02].

2.2.3.3.4 Syst`emes de m´ediation existants. Le projet TAMBIS (Transparent Access

to Multiple Bioinformatics Information Sources) [Stevens 00] est un syst`eme de m´ediation d´

eve-lopp´e dans le domaine biom´edical dont l’objectif est de fournir aux utilisateurs une transparence

enti`ere des sources. Pour cela, l’ontologie TAO [Baker 99] a ´et´e d´efinie dans la logique de

des-cription GRAIL25 (GALEN Representation And Integration Language) et ses composants sont

les suivants :

– des concepts primitifs repr´esentent des entit´es biologiques telles que les prot´eines et acides

nucl´eiques ainsi que leur localisation cellulaire, leurs fonctions et processus biologiques,

leurs motifs et structures ;

– des rˆoles correspondant `a des relations binaires entre concepts ;

– des concepts composites r´esultant de la composition d’un rˆole et d’un concept (primitif ou

composite) r´ealis´ee au moyen l’unique constructeur propos´e par GRAIL : WHICH;

– des relations de typeest-un pour organiser les concepts sous la forme d’une hi´erarchie.

L’ontologie, constitu´ee d’environ 1800 concepts, est exprim´ee `a l’aide d’une logique de description

simple permettant de contrˆoler la cr´eation de nouveaux concepts et les classer au bon endroit

suivant leurs descriptions. Le prototype du syst`eme int`egre 15 sources, dont Swiss-Prot. Les

utilisateurs posent leurs requˆetes en explorant le mod`ele : ils choisissent les concepts qui les

in-t´eressent et peuvent en cr´eer de nouveaux en combinant ces derniers avec des rˆoles. Pour chaque

´

el´ement s´electionn´e, le syst`eme propose aux utilisateurs les ´el´ements reli´es `a celui d’int´erˆet,

per-mettant ainsi de sp´ecialiser et d’enrichir la requˆete initiale. La sortie de cette phase est un plan

de requˆetes ´ecrit dans le langage CPL (Collection Programming Language) [Buneman 95], base

du syst`eme BioKleisli [Davidson 97] pour acc´eder `a des sources biom´edicales. Ce langage de

requˆetes permet de mod´eliser les diff´erents types d’entr´ee fournis par les sources biom´edicales.

Au travers de pilotes (drivers en anglais), CPL traduit ainsi la requˆete initiale en sous-requˆetes

envoy´ees aux sources de donn´ees dans leur propre format puis r´ecup`ere les r´esultats qu’il

re-convertit dans son mod`ele.

Le sch´ema global a ´et´e cr´e´e `a partir d’une ontologie d´ej`a existante et compl´et´ee par des concepts

identifi´es dans les sources pour repr´esenter l’ensemble des informations pr´esentes dans celles-ci.

Elle a donc ´et´e constitu´ee semi-automatiquement. Les sch´emas locaux sont ceux d´efinis dans

BioKleisli au moyen du langage CPL. Les mises en correspondance des ´el´ements de l’ontologie

avec les adaptateurs se font au niveau sch´ema au travers d’une base de connaissance, appel´ee

SSM (Sources and Services Model). Celle-ci permet d’identifier automatiquement les options

disponibles pour ´evaluer la requˆete faite sur l’ontologie de mani`ere `a g´en´erer le programme CPL

qui pourra r´epondre `a la requˆete. Cette base de connaissances a cependant ´et´e g´en´er´ee

manuel-lement. De plus, les programmes CPL permettent l’acc`es `a de nombreuses sources biom´edicales,

mais ils sont pr´e-d´efinis, ce qui impose au syst`eme d’int´egrer des sources qui sont g´er´ees par CPL

et le rendant ainsi d´ependant des ´evolutions prises en charge par CPL. Il n’y a aucune m´ethode

se situant au niveauinstances qui propose d’exploiter les donn´ees pour faciliter certains aspects

de conception ou d’´evolution du syst`eme. Enfin, bien que la repr´esentation du sch´ema global en

logique de description puisse ˆetre favorable `a l’extension du syst`eme, aucune fonctionnalit´e de

maintenance n’a ´et´e propos´ee pour g´erer l’´evolution de TAMBIS.

Le syst`emeBACIIS(Biological And Chemical Information Integration System) [Ben Miled 05]

est bas´e sur l’approche m´ediateur et int`egre sept sources biom´edicales, comme OMIM et

Gen-Bank. Son architecture comporte les composants suivants :

– une ontologie, BAO (BACIIS Ontology), qui a le rˆole de sch´ema global. Elle est ind´

e-pendante du sch´ema des sources locales et consiste en trois classes : Objet, Relation et

Propri´et´e. Son mod`ele est tri-dimensionnel avec des structures hi´erarchiques pour les

Ob-jets et Propri´et´es et un r´eseau de Relations, faisant l’association entre les concepts des

deux autres classes (relation a-pour-propri´et´e) et d’une mˆeme classe (relations

est-un-sous-ensemble-de pour organiser les concepts en hi´erarchies et autres pour relier les

Objets, telles queencode). BAO est impl´ement´ee avec une logique de description ´etendue

avec un langage de«frames»(PowerLoom26). Elle permet de r´esoudre les h´et´erog´en´eit´es

syntaxiques et s´emantiques en regroupant des termes synonymes dans un unique concept.

Ainsi, par exemple, si deux attributs issus de sources diff´erentes sont associ´es au mˆeme

concept dans BAO alors le concept commun sert de lien, on dit qu’il y a une correspondance

s´emantique entre les deux sources [Mahoui 05] ;

– un m´ediateur qui se charge du traitement des requˆetes. Les utilisateurs construisent ces

der-ni`eres `a partir des concepts de l’ontologie et le m´ediateur les d´ecompose en sous-requˆetes.

Il d´etermine ensuite quelles sources peuvent r´epondre en exploitant leurs sch´emas ; si

l’en-tr´ee et la sortie de la sous-requˆete sont identiques aux entr´ee / sortie de la source, cette

source est s´electionn´ee et le m´ediateur lance les adaptateurs associ´es. Il collecte ensuite les

donn´ees r´ecup´er´ees par les diff´erents adaptateurs, regroupe celles qui sont associ´ees `a une

mˆeme classe (au travers de l’ontologie) et organise les r´esultats sous forme d’un graphe qui

relie les concepts correspondant `a la requˆete pos´ee, formant ainsi l’ensemble des chemins

diff´erents permettant de mener `a une r´eponse ;

– le sch´ema des sources consiste en des m´eta-donn´ees d’ordre g´en´eral (e.g. nom de la source),

les types de donn´ees accept´ees en entr´ee d´ecrits avec des concepts de BAO ainsi que les

URLs et attributs associ´es pour interroger la source. Les types de donn´ees fournis en sortie

ont les mˆemes caract´eristiques que ceux d’entr´ee mais `a la place des URLs et des attributs,

il y a des r`egles permettant d’extraire les donn´ees associ´ees aux attributs pr´esents dans les

pages retourn´ees par le site Web de la source ;

– les adaptateurs r´ecup`erent les donn´ees dans les sources en exploitant les URLs

d’inter-rogation des sources et les r`egles d’extraction d´efinies dans les sch´emas associ´es. Il n’y a

donc pas besoin d’un adaptateur par source mais plutˆot par type de format de sortie offert

par les sources (HTML, XML, texte) pour parcourir les pages r´esultats et y r´ecup´erer les

informations voulues.

Le sch´ema global de BACIIS a ´et´e d´evelopp´e manuellement mais il est malgr´e tout extensible et

flexible. En effet, BAO est ind´ependante des sch´emas des sources et ´evolue uniquement quand

le domaine biologique subit des modifications importantes (comme la d´ecouverte d’un nouveau

concept tel quePathway, ce qui arrive tr`es rarement), plutˆot qu’`a chaque mise `a jour des sources.

De plus, son mod`ele tri-dimensionnel facilite la prise en charge des modifications puisque, par

exemple, un changement d’une Propri´et´e n’affecte que cette hi´erarchie mais pas celle des Objets.

L’approche adopt´ee pour les adaptateurs ´evite un changement syst´ematique d’un adaptateur si

une source est modifi´ee. Il est, en effet, uniquement n´ecessaire de d´efinir un nouvel adaptateur si

un format de sortie nouveau est utilis´e par une source d´ej`a existante ou nouvellement int´egr´ee.

Cependant, les m´eta-donn´ees sur les sources (et donc ce qui sert de sch´ema local) n’ont pas ´et´e

r´ecup´er´ees automatiquement. Enfin, les r`egles d’extraction des donn´ees des sources initialement

g´en´er´ees manuellement sont d´esormais induites semi-automatiquement [Ben-Miled 04]. Un

algo-rithme a ´et´e d´evelopp´e de mani`ere `a parcourir un certain nombre de pages Web fournies par les

sources afin d’identifier des attributs correspondant `a des concepts de BAO et cr´eer les r`egles

d’extraction `a partir de ces attributs. Cette m´ethode, situ´ee au niveauinstances, illustre l’int´erˆet

d’exploiter les donn´ees mˆemes des sources pour faciliter la d´efinition de leur sch´ema.

Le syst`eme ONTOFUSION[Alonso-Calvo 06] est un syst`eme de m´ediation int´egrant des

sources de donn´ees biom´edicales de diff´erents types : publiques, telles que PubMed et PDB

(Protein Data Bank) [Kouranov 06], mais aussi des bases priv´ees et des bio-ontologies disponibles

en ligne mais qui sont install´ees localement, comme l’UMLS et GO. Ses composants sont les

suivants :

– quatre fichiers XML par source de donn´ees publique d´ecrivent l’information n´ecessaire

pour la repr´esenter et l’interroger. Le premier contient le sch´ema physique de la source,

le second d´ecrit la mani`ere dont il faut interroger la source (URL, param`etres, etc), les

deux autres d´ecrivent la structure des pages r´esultats obtenus `a partir du site Web de