• Aucun résultat trouvé

Partie III V alidation

3.3 Résultat des interrogations

1.2.1 Rappel sur le shéma des ontologies d'ontodb2 et ontodb 179

Pour illustrer lareprésentation des ontologies dansles bdbo ontodb2 et ontodb, nous

uti-lisons le modèle d'ontologie simplié de la gure 6.1-a, et l'ontologie de la gure 6.1 -b dénie

suivante modèled'ontologie. Cetteontologieomportetroislasses :C1, C2 etF1.C2 estune

sous-lasse deC1 etF1 estunvuedeC1. Cetteontologieomporteégalementles propriétésP1

etP2 qui s'appliquent respetivement aux lasses C1 et F1.

1.2.1.1 Struture des ontologies d'ontodb2

ontodb2 adopte, pour la représentation des ontologies, une struture de représentation plate.

Comme le montre la gure 6.2, haque hiérarhie est représentée par une seule table ave une

(a) Formalisme d’ontologie simplifié (b) Ontologie

Fig. 6.1 Formalisme d'ontologiesimplié

olonnedisriminante(rtype).Rappelonsettetransformationafaitdiminuerlenombred'entités

de 217 à 43 et le nombre de tables de 568 à 147. De plus, an d'optimiser les traitements sur

les lasses et les propriétés, la relation d'héritage simple (its_superlass) est indexée par une

tehnique d'étiquetage topologique et, les valeurs desolonnes étiquettes ( bound1, bound2) de

haquelasse sont reopiéesau niveau despropriétés quileur sont appliables.

Class

Rid rtype name desc view_Of its_superclass bound1 bound2

C1 ‘Class’ ‘C1’ 1 2

Fig. 6.2 Struturede lapartie Ontologie d'ontodb2

1.2.1.2 Struture des ontologiesd'ontodb

Pour lapartie ontologie, ontodb représenteàl'identiquelastruture objetduformalisme

d'on-tologie dans la base de données. Ainsi, une table est dénie pour haque entité du formalisme

d'ontologieavehéritagedetables.Enplus,pourlareprésentationdesassoiationspolymorphes,

ontodb dénidestables intermédiaires outables d'aiguillage.

Nous remarquons par exemple que les assoiations du modèle objet du formalisme de la

gure6.1 -a,sonttraduitesdansontodbpardestablesd'aiguillageommelemontrelagure6.3 .

Chaquetable d'aiguillage estomposéede inq olonnes:

1. rid :detypeentier estl'identiant de latabled'assoiation, utilisépourl'aiguillage. C'est

ette olonnequi estréférenée par les tablesdesentités

Class Rid name desc its_superclass

C1 ‘C1’

C2 ‘C2’ S1

FunctionalView_Class Rid name desc its_superclass viewOf

F1 ‘F1’ V1 Class_2_its_superclass Rid rid_s tablename_s rid_d tablename_d

S1 C2 ‘Class’ C1 ‘Class’

FunctionalView_Class_2_viewOf

Rid rid_s tablename_s rid_d tablename_d

V1 F1 ‘FunctionalView_Class’ C1 ‘Class’

Property_2_domain Rid rid_s tablename_s rid_d tablename_d

D1 P1 ‘Property’ C1 ‘Class’

D2 P1 ‘Property’ F1 ‘FunctionalView_Class’

Fig. 6.3Struture delapartie Ontologie d'ontodb

2. rid_s : (rid Soure) de type entier est le rid de l'entité d'origine (dont l'attribut fait

référene)

3. tableName_s :(TableNameSoure)detypehaîneestlenomdelatableassoiéeàl'entité

dont l'attributfait référene.

4. rid_d :(rid Destination) detype entier estlerid de l'entité de référene.

5. tableName_d :(TableName Destination) de type haîne estle nomde la table assoiéeà

l'entité ible.

Toutes es tables ont disparue dans ontodb2 puisque le polymorphisme est traité à l'intérieur

de haquetable.Cei expliquelasimpliationdu nombretotal de tables.

Avant de présenter lesrésultats obtenus, nousprésentonsi-dessus lesontologies utilisées et

les aratéristiquesde lamahine de test.

1.2.2 Desription du ban d'essai

S'agissant destestsd'exploitationd'ontologiesplib,nousavonsprisommejeuxd'essaisdes

ontologiesindustriellesdénies enutilisant eformalisme.Nousavonseetuénostestssurtrois

ontologies de diérentestailles (f.table 6.1):

1. l'ontologienormaliséeRoulement (iso23768)omposéede48 lasseset 123propriétés.La

moyenne de laprofondeur de lahiérarhiedes lassesest de3;

2. l'ontologieealsdénieparjeita(japaneletronisandinformationtehnologyindustries

Assoiation) pour sabase de omposants. Cette ontologie est omposée de 766 lasses et

3086 propriétés. La moyenne dela profondeurde lahiérarhie deslasses estde 7;

3. l'ontologienormaliséeie61360-4omposéede190lasseset1026 propriétés.Lamoyenne

de laprofondeur dela hiérarhiedeslasses estde 5.

1.2.3 Mahine de test

Système d'exploitationWindows xp Professionnel

Eals ie Roulement

Nombredelasses 766 190 48

Nombredepropriétés 3086 1026 123

Profondeurmoyennedelahiérarhie 7 5 3

Tab. 6.1Caratéristique desontologies plibutilisées

2Go deram

3Ghz de fréquenede proesseur

180 Gode disquedur

1.2.4 Résultats obtenus

La gure 6.4 montre les résultats obtenus pour le parours omplet de la hiérarhie simple

des lasses sur es diérentes bases de données. Nous remarquons que ontodb2 présente de

meilleures performanes queontodb. Cerésultat estdûau faitquelors delaonstrution de la

struture arboresente, il est néessaire d'aéder pour haque n÷ud à l'ensemble de ses

sous-lasses diretes. Dans ontodb2 ette requête porte sur la seule table de l'entité Class et est

réalisée ne manière non réursive ar la relation its_superlass est indexée. A ontrario, pour

aluler l'arboresente dans ontodb, il est néessaire de réaliser lajointure entre la table lass

et latable d'aiguillage lass_2_its_superlass pour haque lasse.Le temps de onstrution de

l'arboresene roit donfortement ave lenombredelasses dansl'ontologie.

Fig.6.4 Temps de onstrution de lahiérarhiedeslasses

La gure 6.5 montre les résultats obtenus pour le alul de l'ensemble des propriétés

vi-sibles d'unelasse donnée.Dans e as également, ontodb2 présentede meilleurs performanes

que ontodb. Ce résultat s'explique par le fait qu'ontodb2 matérialise dans la table de l'entité

Property, les valeurs des olonnes d'étiquette du domaine de haque lasse. Dee fait, un seul

paroursdelatableproperty estnéessairepourréupérerl'ensembledespropriétés visibles(par

transitivité) d'une lasse. A la diérene d'ontodb2, ontodb réalise pour retourner l'ensemble

des propriétés dénies au niveau d'une lasse, deux jointures entre les tables lass, property et

latabled'aiguillageproperty_2_domain.Ainsi,pourretournerl'ensembledespropriétésvisibles

d'une lasse. il répète e traitement sur toutes les superlasses de ette dernière. L'aès aux

superlasses estréalisé demanière réursive.

Propriétés visibles (s)

!!

" #

$

" #

!

%

" #

Fig. 6.5 Temps d'aèsauxpropriétés visibles d'unelasse

Autotal, lanouvelle modélisationd'ontodb2 estentre7 fois et63 foisplus rapideque elle

d'ontodb.Cesévaluationsmontrentbienquelamiseàplatdelastrutureduniveauontologique,

permetderéduireletempsdealuldel'arboreseneetdeparoursdespropriétésdeslassesde

l'ontologie. La mise à plat a amélioré les performanes des traitements de niveau ontologiques.

C'était bien l'objetif herhé et qui a été atteint. Nous présentons i-dessous les évaluations

eetuées surla partie données.

2 Flexibilité des types de données

Le seond objetif d'ontodb2 était de permettre le support de types de données non

stan-dards. Nousavonspar exempledansleadreduprojete-WokHub,étendulestypesde données

d'ontodb2avelestypesdedonnéesspatiaux.Pour ela,nousavonstoutd'aborddénila

repré-sentationexpressdestypesgéométriquesissusdelaspéiationopengis.Lesentitésexpress

orrespondantes étendent par sous-typage, l'entité Data_type du formalisme noyau d'ontodb2.

Nousavonsensuitegrâeauxprogrammesgénériquesquenousavonsdéveloppésenutilisantdes

tehniques d'idm, généré la struture de représentation en base de données et l'api de niveau

ontologique néessaire à l'instaniation de es nouveaux types. La méta-représentation de es

types a également été représentée au sein de la partie méta-shéma d'ontodb2. ontodb2 étant

une arhiteture detype3don lastrutureestsimilaireà elledumof,laméta-représentation

destypesde donnéespermetde modieraisément esderniers. Lagure6.6illustreleproessus

d'extensiondu systèmedetyped'ontodb2 par lestypesgéométriques. Tout d'abord,lesystème

de type opengisestmodéliséen expressdansunshémaquenousappelonsopengis_types.

Ce shéma utilise le modèle express du formalisme d'ontologie (Peigne), et ses entités

sous-typentl'entitéData_type duPeigne.Ensuite,lesmodulesgénériquesquenousavonsdéveloppés

sont utilisés pour (1)dénir les struturesde représentation pour lapartie ontologie dushéma

de type opengis, (2) représenter e dernier dansla partie méta-shéma et (3) générer l'api de